QPdfLinkModel Class

The QPdfLinkModel class holds the geometry and the destination for each link that the specified page contains. More...

Header: #include <QPdfLinkModel>
Since: Qt 6.6
Inherits: QAbstractListModel

Public Types

enum class Role { Link, Rectangle, Url, Page, Location, Zoom }


Public Functions

QPdfLinkModel(QObject *parent = nullptr)
virtual ~QPdfLinkModel() override
QPdfDocument *document() const
QPdfLink linkAt(QPointF point) const
int page() const

Reimplemented Public Functions

virtual QVariant data(const QModelIndex &index, int role) const override
virtual int rowCount(const QModelIndex &parent) const override

Public Slots

void setDocument(QPdfDocument *document)
void setPage(int page)


void documentChanged()
void pageChanged(int page)

Detailed Description

This is used in PDF viewers to implement the hyperlink mechanism.

Member Type Documentation

enum class QPdfLinkModel::Role

QPdfLinkModel::Role::LinkQt::UserRoleA QPdfLink object.
QPdfLinkModel::Role::Rectangle257Bounding rectangle around the link.
QPdfLinkModel::Role::Url258If the link is a web link, the URL for that; otherwise an empty URL.
QPdfLinkModel::Role::Page259If the link is an internal link, the page number to which the link should jump; otherwise -1.
QPdfLinkModel::Role::Location260If the link is an internal link, the location on the page to which the link should jump.
QPdfLinkModel::Role::Zoom261If the link is an internal link, the suggested zoom level on the destination page.

Property Documentation

document : QPdfDocument*

This property holds the document to load links from.

Access functions:

QPdfDocument *document() const
void setDocument(QPdfDocument *document)

Notifier signal:

void documentChanged()

page : int

This property holds the page to load links from.

Access functions:

int page() const
void setPage(int page)

Notifier signal:

void pageChanged(int page)

Member Function Documentation

[explicit] QPdfLinkModel::QPdfLinkModel(QObject *parent = nullptr)

Constructs a new link model with parent object parent.

[override virtual noexcept] QPdfLinkModel::~QPdfLinkModel()

Destroys the model.

[override virtual] QVariant QPdfLinkModel::data(const QModelIndex &index, int role) const

Reimplements: QAbstractItemModel::data(const QModelIndex &index, int role) const.

QPdfLink QPdfLinkModel::linkAt(QPointF point) const

Returns a valid link if found under the point (given in units of points, 1/72 of an inch), or an invalid link if it is not found. In other words, this function is useful for picking, to handle mouse click or hover.

[override virtual] int QPdfLinkModel::rowCount(const QModelIndex &parent) const

Reimplements: QAbstractItemModel::rowCount(const QModelIndex &parent) const.

© 2024 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.