29 Q_PROPERTY(QQuickPdfDocument *document READ document WRITE setDocument NOTIFY documentChanged)
30 Q_PROPERTY(
int currentPage READ currentPage WRITE setCurrentPage NOTIFY currentPageChanged)
31 Q_PROPERTY(
int currentResult READ currentResult WRITE setCurrentResult NOTIFY currentResultChanged)
32 Q_PROPERTY(QPdfLink currentResultLink READ currentResultLink NOTIFY currentResultLinkChanged)
33 Q_PROPERTY(QList<QPolygonF> currentPageBoundingPolygons READ currentPageBoundingPolygons NOTIFY currentPageBoundingPolygonsChanged)
34 Q_PROPERTY(QList<QPolygonF> currentResultBoundingPolygons READ currentResultBoundingPolygons NOTIFY currentResultBoundingPolygonsChanged)
35 Q_PROPERTY(QRectF currentResultBoundingRect READ currentResultBoundingRect NOTIFY currentResultBoundingRectChanged)
36 QML_NAMED_ELEMENT(PdfSearchModel)
37 QML_ADDED_IN_VERSION(5, 15)
40 explicit QQuickPdfSearchModel(QObject *parent =
nullptr);
41 ~QQuickPdfSearchModel() override;
43 QQuickPdfDocument *document()
const;
44 void setDocument(QQuickPdfDocument * document);
46 Q_INVOKABLE QList<QPolygonF> boundingPolygonsOnPage(
int page);
48 int currentPage()
const {
return m_currentPage; }
49 void setCurrentPage(
int currentPage);
51 int currentResult()
const {
return m_currentResult; }
52 void setCurrentResult(
int currentResult);
54 QPdfLink currentResultLink()
const;
55 QList<QPolygonF> currentPageBoundingPolygons()
const;
56 QList<QPolygonF> currentResultBoundingPolygons()
const;
57 QRectF currentResultBoundingRect()
const;
60 void currentPageChanged();
61 void currentResultChanged();
62 void currentResultLinkChanged();
63 void currentPageBoundingPolygonsChanged();
64 void currentResultBoundingPolygonsChanged();
65 void currentResultBoundingRectChanged();
69 void onResultsChanged();
72 QQuickPdfDocument *m_quickDocument =
nullptr;
73 int m_currentPage = 0;
74 int m_currentResult = 0;
75 bool m_suspendSignals =
false;
77 Q_DISABLE_COPY(QQuickPdfSearchModel)