Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
qpdfview_p.h
Go to the documentation of this file.
1// Copyright (C) 2017 Klarälvdalens Datakonsult AB, a KDAB Group company, info@kdab.com, author Tobias König <tobias.koenig@kdab.com>
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
4#ifndef QPDFVIEW_P_H
5#define QPDFVIEW_P_H
6
7//
8// W A R N I N G
9// -------------
10//
11// This file is not part of the Qt API. It exists purely as an
12// implementation detail. This header file may change from version to
13// version without notice, or even be removed.
14//
15// We mean it.
16//
17
18#include "qpdfview.h"
19#include "qpdfdocument.h"
20#include "qpdflinkmodel.h"
21
22#include <QHash>
23#include <QPointer>
24
26
28
30{
31 Q_DECLARE_PUBLIC(QPdfView)
32
33public:
35 void init();
36
38 void currentPageChanged(int currentPage);
39 void calculateViewport();
41 void updateScrollBars();
42
43 void pageRendered(int pageNumber, QSize imageSize, const QImage &image, quint64 requestId);
46
47 qreal yPositionForPage(int page) const;
48
49 QTransform screenScaleTransform(int page) const; // points to pixels
50
52 {
54 QHash<int, QPair<QRect, qreal>> pageGeometryAndScale;
55 };
56
59
61 QPointer<QPdfDocument> m_document;
62 QPointer<QPdfSearchModel> m_searchModel;
66
70
72
75
77
79
81
82 QHash<int, QImage> m_pageCache;
83 QList<int> m_cachedPagesLRU;
85
87
88 qreal m_screenResolution; // pixels per point
89};
90
92
94
95#endif // QPDFVIEW_P_H
\inmodule QtGui
Definition qimage.h:37
\inmodule QtCore
Definition qmargins.h:24
\inmodule QtCore Represents a handle to a signal-slot (or signal-functor) connection.
The QPdfLinkModel class holds the geometry and the destination for each link that the specified \l pa...
Navigation history within a PDF document.
The QPdfPageRenderer class encapsulates the rendering of pages of a PDF document.
QTransform screenScaleTransform(int page) const
Definition qpdfview.cpp:257
void updateScrollBars()
Definition qpdfview.cpp:127
void setViewport(QRect viewport)
Definition qpdfview.cpp:85
QPointer< QPdfDocument > m_document
Definition qpdfview_p.h:61
qreal m_screenResolution
Definition qpdfview_p.h:88
QMetaObject::Connection m_documentStatusChangedConnection
Definition qpdfview_p.h:78
QPointer< QPdfSearchModel > m_searchModel
Definition qpdfview_p.h:62
QPdfPageRenderer * m_pageRenderer
Definition qpdfview_p.h:64
QPdfLinkModel m_linkModel
Definition qpdfview_p.h:65
int m_currentSearchResultIndex
Definition qpdfview_p.h:71
QHash< int, QImage > m_pageCache
Definition qpdfview_p.h:82
void updateDocumentLayout()
Definition qpdfview.cpp:272
QPdfPageNavigator * m_pageNavigator
Definition qpdfview_p.h:63
QPdfView::ZoomMode m_zoomMode
Definition qpdfview_p.h:68
QPdfViewPrivate(QPdfView *q)
Definition qpdfview.cpp:29
DocumentLayout m_documentLayout
Definition qpdfview_p.h:86
qreal yPositionForPage(int page) const
Definition qpdfview.cpp:248
void invalidatePageCache()
Definition qpdfview.cpp:165
void invalidateDocumentLayout()
Definition qpdfview.cpp:159
QMargins m_documentMargins
Definition qpdfview_p.h:74
void documentStatusChanged()
Definition qpdfview.cpp:54
void currentPageChanged(int currentPage)
Definition qpdfview.cpp:60
QPdfView::PageMode m_pageMode
Definition qpdfview_p.h:67
bool m_blockPageScrolling
Definition qpdfview_p.h:76
QPdfView * q_ptr
Definition qpdfview_p.h:60
void calculateViewport()
Definition qpdfview.cpp:73
DocumentLayout calculateDocumentLayout() const
Definition qpdfview.cpp:173
void pageRendered(int pageNumber, QSize imageSize, const QImage &image, quint64 requestId)
Definition qpdfview.cpp:140
QList< int > m_cachedPagesLRU
Definition qpdfview_p.h:83
\inmodule QtPdf
Definition qpdfview.h:19
ZoomMode
This enum describes the magnification behavior of the PDF viewer:
Definition qpdfview.h:43
PageMode
This enum describes the overall behavior of the PDF viewer:
Definition qpdfview.h:36
\inmodule QtCore\reentrant
Definition qrect.h:30
\inmodule QtCore
Definition qsize.h:25
The QTransform class specifies 2D transformations of a coordinate system.
Definition qtransform.h:20
Combined button and popup list for selecting options.
Definition image.cpp:4
QNearFieldTarget::RequestId requestId
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei imageSize
GLdouble GLdouble GLdouble GLdouble q
Definition qopenglext.h:259
@ Q_RELOCATABLE_TYPE
Definition qtypeinfo.h:158
#define Q_DECLARE_TYPEINFO(TYPE, FLAGS)
Definition qtypeinfo.h:180
unsigned long long quint64
Definition qtypes.h:61
double qreal
Definition qtypes.h:187
QByteArray page
[45]
view viewport() -> scroll(dx, dy, deviceRect)
QHash< int, QPair< QRect, qreal > > pageGeometryAndScale
Definition qpdfview_p.h:54