1/* poppler-page.cc: qt interface to poppler
2 * Copyright (C) 2005, Net Integration Technologies, Inc.
3 * Copyright (C) 2007, 2012, Albert Astals Cid <aacid@kde.org>
4 * Copyright (C) 2008, Pino Toscano <pino@kde.org>
5 * Copyright (C) 2015 Adam Reichold <adamreichold@myopera.com>
6 * Copyright (C) 2018, 2021 Nelson Benítez León <nbenitezl@gmail.com>
7 * Copyright (C) 2021, Oliver Sander <oliver.sander@tu-dresden.de>
8 *
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published by
11 * the Free Software Foundation; either version 2, or (at your option)
12 * any later version.
13 *
14 * This program is distributed in the hope that it will be useful,
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 * GNU General Public License for more details.
18 *
19 * You should have received a copy of the GNU General Public License
20 * along with this program; if not, write to the Free Software
21 * Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA.
22 */
23
24#ifndef _POPPLER_PAGE_PRIVATE_H_
25#define _POPPLER_PAGE_PRIVATE_H_
26
27#include "CharTypes.h"
28
29class QRectF;
30
31class LinkAction;
32class Page;
33class TextPage;
34
35namespace Poppler {
36
37class DocumentData;
38class PageTransition;
39
40class PageData
41{
42public:
43 std::unique_ptr<Link> convertLinkActionToLink(::LinkAction *a, const QRectF &linkArea);
44
45 DocumentData *parentDoc;
46 ::Page *page;
47 int index;
48 PageTransition *transition;
49
50 static std::unique_ptr<Link> convertLinkActionToLink(::LinkAction *a, DocumentData *parentDoc, const QRectF &linkArea);
51
52 TextPage *prepareTextSearch(const QString &text, Page::Rotation rotate, QVector<Unicode> *u);
53 bool performSingleTextSearch(TextPage *textPage, QVector<Unicode> &u, double &sLeft, double &sTop, double &sRight, double &sBottom, Page::SearchDirection direction, bool sCase, bool sWords, bool sDiacritics, bool sAcrossLines);
54 QList<QRectF> performMultipleTextSearch(TextPage *textPage, QVector<Unicode> &u, bool sCase, bool sWords, bool sDiacritics, bool sAcrossLines);
55};
56
57}
58
59#endif
60

source code of poppler/qt6/src/poppler-page-private.h