summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorShawn Rutledge <shawn.rutledge@qt.io>2022-05-23 19:53:31 +0200
committerShawn Rutledge <shawn.rutledge@qt.io>2022-05-24 14:13:49 +0200
commit05d82c353a40f86a54f4d3127956ef6dbcd072b2 (patch)
tree65a6e892aa7bd3accae95ed465d0545644ef6920
parentee7a8f9cc9003cf700f94cbc5a6bbbb3b03a342d (diff)
QPdfView: replace enums with enum classes
[ChangeLog][QtPDF] All enums are replaced with enum classes. Change-Id: I41063de084a23db657a24805ceaf22881f25c990 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
-rw-r--r--examples/pdfwidgets/pdfviewer/mainwindow.cpp4
-rw-r--r--examples/pdfwidgets/pdfviewer/zoomselector.cpp6
-rw-r--r--src/pdfwidgets/qpdfview.cpp22
-rw-r--r--src/pdfwidgets/qpdfview.h14
4 files changed, 24 insertions, 22 deletions
diff --git a/examples/pdfwidgets/pdfviewer/mainwindow.cpp b/examples/pdfwidgets/pdfviewer/mainwindow.cpp
index 069e6a6ce..c6747f980 100644
--- a/examples/pdfwidgets/pdfviewer/mainwindow.cpp
+++ b/examples/pdfwidgets/pdfviewer/mainwindow.cpp
@@ -185,7 +185,9 @@ void MainWindow::on_actionNext_Page_triggered()
void MainWindow::on_actionContinuous_triggered()
{
- ui->pdfView->setPageMode(ui->actionContinuous->isChecked() ? QPdfView::MultiPage : QPdfView::SinglePage);
+ ui->pdfView->setPageMode(ui->actionContinuous->isChecked() ?
+ QPdfView::PageMode::MultiPage :
+ QPdfView::PageMode::SinglePage);
}
void MainWindow::on_actionBack_triggered()
diff --git a/examples/pdfwidgets/pdfviewer/zoomselector.cpp b/examples/pdfwidgets/pdfviewer/zoomselector.cpp
index 4ccf87460..6e532de83 100644
--- a/examples/pdfwidgets/pdfviewer/zoomselector.cpp
+++ b/examples/pdfwidgets/pdfviewer/zoomselector.cpp
@@ -91,9 +91,9 @@ void ZoomSelector::reset()
void ZoomSelector::onCurrentTextChanged(const QString &text)
{
if (text == QLatin1String("Fit Width")) {
- emit zoomModeChanged(QPdfView::FitToWidth);
+ emit zoomModeChanged(QPdfView::ZoomMode::FitToWidth);
} else if (text == QLatin1String("Fit Page")) {
- emit zoomModeChanged(QPdfView::FitInView);
+ emit zoomModeChanged(QPdfView::ZoomMode::FitInView);
} else {
qreal factor = 1.0;
@@ -105,7 +105,7 @@ void ZoomSelector::onCurrentTextChanged(const QString &text)
if (ok)
factor = zoomLevel / 100.0;
- emit zoomModeChanged(QPdfView::CustomZoom);
+ emit zoomModeChanged(QPdfView::ZoomMode::Custom);
emit zoomFactorChanged(factor);
}
}
diff --git a/src/pdfwidgets/qpdfview.cpp b/src/pdfwidgets/qpdfview.cpp
index 710204b20..bab70c773 100644
--- a/src/pdfwidgets/qpdfview.cpp
+++ b/src/pdfwidgets/qpdfview.cpp
@@ -59,8 +59,8 @@ QPdfViewPrivate::QPdfViewPrivate(QPdfView *q)
, m_document(nullptr)
, m_pageNavigation(nullptr)
, m_pageRenderer(nullptr)
- , m_pageMode(QPdfView::SinglePage)
- , m_zoomMode(QPdfView::CustomZoom)
+ , m_pageMode(QPdfView::PageMode::SinglePage)
+ , m_zoomMode(QPdfView::ZoomMode::Custom)
, m_zoomFactor(1.0)
, m_pageSpacing(3)
, m_documentMargins(6, 6, 6, 6)
@@ -94,7 +94,7 @@ void QPdfViewPrivate::currentPageChanged(int currentPage)
q->verticalScrollBar()->setValue(yPositionForPage(currentPage));
- if (m_pageMode == QPdfView::SinglePage)
+ if (m_pageMode == QPdfView::PageMode::SinglePage)
invalidateDocumentLayout();
}
@@ -122,12 +122,12 @@ void QPdfViewPrivate::setViewport(QRect viewport)
if (oldSize != m_viewport.size()) {
updateDocumentLayout();
- if (m_zoomMode != QPdfView::CustomZoom) {
+ if (m_zoomMode != QPdfView::ZoomMode::Custom) {
invalidatePageCache();
}
}
- if (m_pageMode == QPdfView::MultiPage) {
+ if (m_pageMode == QPdfView::PageMode::MultiPage) {
// An imaginary, 2px height line at the upper half of the viewport, which is used to
// determine which page is currently located there -> we propagate that as 'current' page
// to the QPdfNavigationStack object
@@ -216,20 +216,20 @@ QPdfViewPrivate::DocumentLayout QPdfViewPrivate::calculateDocumentLayout() const
int totalWidth = 0;
- const int startPage = (m_pageMode == QPdfView::SinglePage ? m_pageNavigation->currentPage() : 0);
- const int endPage = (m_pageMode == QPdfView::SinglePage ? m_pageNavigation->currentPage() + 1 : pageCount);
+ const int startPage = (m_pageMode == QPdfView::PageMode::SinglePage ? m_pageNavigation->currentPage() : 0);
+ const int endPage = (m_pageMode == QPdfView::PageMode::SinglePage ? m_pageNavigation->currentPage() + 1 : pageCount);
// calculate page sizes
for (int page = startPage; page < endPage; ++page) {
QSize pageSize;
- if (m_zoomMode == QPdfView::CustomZoom) {
+ if (m_zoomMode == QPdfView::ZoomMode::Custom) {
pageSize = QSizeF(m_document->pageSize(page) * m_screenResolution * m_zoomFactor).toSize();
- } else if (m_zoomMode == QPdfView::FitToWidth) {
+ } else if (m_zoomMode == QPdfView::ZoomMode::FitToWidth) {
pageSize = QSizeF(m_document->pageSize(page) * m_screenResolution).toSize();
const qreal factor = (qreal(m_viewport.width() - m_documentMargins.left() - m_documentMargins.right()) /
qreal(pageSize.width()));
pageSize *= factor;
- } else if (m_zoomMode == QPdfView::FitInView) {
+ } else if (m_zoomMode == QPdfView::ZoomMode::FitInView) {
const QSize viewportSize(m_viewport.size() +
QSize(-m_documentMargins.left() - m_documentMargins.right(), -m_pageSpacing));
@@ -414,7 +414,7 @@ void QPdfView::setPageMode(PageMode mode)
This enum describes the magnification behavior of the PDF viewer:
- \value CustomZoom Use \l zoomFactor only.
+ \value Custom Use \l zoomFactor only.
\value FitToWidth Automatically choose a zoom factor so that
the width of the page fits in the view.
\value FitInView Automatically choose a zoom factor so that
diff --git a/src/pdfwidgets/qpdfview.h b/src/pdfwidgets/qpdfview.h
index 3ee8a1f7f..7571aec9a 100644
--- a/src/pdfwidgets/qpdfview.h
+++ b/src/pdfwidgets/qpdfview.h
@@ -63,16 +63,16 @@ class Q_PDF_WIDGETS_EXPORT QPdfView : public QAbstractScrollArea
Q_PROPERTY(QMargins documentMargins READ documentMargins WRITE setDocumentMargins NOTIFY documentMarginsChanged)
public:
- enum PageMode
+ enum class PageMode
{
SinglePage,
MultiPage
};
Q_ENUM(PageMode)
- enum ZoomMode
+ enum class ZoomMode
{
- CustomZoom,
+ Custom,
FitToWidth,
FitInView
};
@@ -98,14 +98,14 @@ public:
void setDocumentMargins(QMargins margins);
public Q_SLOTS:
- void setPageMode(PageMode mode);
- void setZoomMode(ZoomMode mode);
+ void setPageMode(QPdfView::PageMode mode);
+ void setZoomMode(QPdfView::ZoomMode mode);
void setZoomFactor(qreal factor);
Q_SIGNALS:
void documentChanged(QPdfDocument *document);
- void pageModeChanged(PageMode pageMode);
- void zoomModeChanged(ZoomMode zoomMode);
+ void pageModeChanged(QPdfView::PageMode pageMode);
+ void zoomModeChanged(QPdfView::ZoomMode zoomMode);
void zoomFactorChanged(qreal zoomFactor);
void pageSpacingChanged(int pageSpacing);
void documentMarginsChanged(QMargins documentMargins);