diff options
author | Shawn Rutledge <shawn.rutledge@qt.io> | 2020-02-25 17:49:56 +0100 |
---|---|---|
committer | Shawn Rutledge <shawn.rutledge@qt.io> | 2020-02-26 15:40:24 +0100 |
commit | 926afcaa6f3ce02b51cd535d82454f4b25e0b7f6 (patch) | |
tree | 66773defe3e53fc4a37f3fc10eb2f2649d27f668 /src/pdf/qpdfsearchresult.cpp | |
parent | 8091944ae8ccfb4e0b3e7518912802c9c75704d0 (diff) |
PdfSearchModel: provide ContextBefore and ContextAfter
...as separate roles, to make alignment easier, and to avoid hard-coding
HTML tags in the Context role as it was before.
But the strings in these context roles are not always adjacent to the
search results in geometric coordinates sometimes, in some PDF files,
despite having adjacent character indices. I.e. the "next" character
after the search string, or the "previous" character before it, could be
anywhere on the page.
Change-Id: Ief0a490b64fdb3c3ca98506926650648b609ece1
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Diffstat (limited to 'src/pdf/qpdfsearchresult.cpp')
-rw-r--r-- | src/pdf/qpdfsearchresult.cpp | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/src/pdf/qpdfsearchresult.cpp b/src/pdf/qpdfsearchresult.cpp index 1164a1d43..53da1c165 100644 --- a/src/pdf/qpdfsearchresult.cpp +++ b/src/pdf/qpdfsearchresult.cpp @@ -42,15 +42,20 @@ QT_BEGIN_NAMESPACE QPdfSearchResult::QPdfSearchResult() : QPdfSearchResult(new QPdfSearchResultPrivate()) { } -QPdfSearchResult::QPdfSearchResult(int page, QVector<QRectF> rects, QString context) : - QPdfSearchResult(new QPdfSearchResultPrivate(page, rects, context)) { } +QPdfSearchResult::QPdfSearchResult(int page, QVector<QRectF> rects, QString contextBefore, QString contextAfter) : + QPdfSearchResult(new QPdfSearchResultPrivate(page, rects, contextBefore, contextAfter)) { } QPdfSearchResult::QPdfSearchResult(QPdfSearchResultPrivate *d) : QPdfDestination(static_cast<QPdfDestinationPrivate *>(d)) { } -QString QPdfSearchResult::context() const +QString QPdfSearchResult::contextBefore() const { - return static_cast<QPdfSearchResultPrivate *>(d.data())->context; + return static_cast<QPdfSearchResultPrivate *>(d.data())->contextBefore; +} + +QString QPdfSearchResult::contextAfter() const +{ + return static_cast<QPdfSearchResultPrivate *>(d.data())->contextAfter; } QVector<QRectF> QPdfSearchResult::rectangles() const @@ -63,7 +68,8 @@ QDebug operator<<(QDebug dbg, const QPdfSearchResult &searchResult) QDebugStateSaver saver(dbg); dbg.nospace(); dbg << "QPdfSearchResult(page=" << searchResult.page() - << " context=" << searchResult.context() + << " contextBefore=" << searchResult.contextBefore() + << " contextAfter=" << searchResult.contextAfter() << " rects=" << searchResult.rectangles(); dbg << ')'; return dbg; |