Git commit 2f18a8dd9ae77ff1f3b02659007763711822c5a2 by Montel Laurent. Committed on 31/05/2016 at 19:15. Pushed by mlaurent into branch 'master'. implement zooming M +17 -0 webengineviewer/src/print/printpreviewpageviewer.cpp M +4 -0 webengineviewer/src/print/printpreviewpageviewer.h M +2 -1 webengineviewer/src/print/printpreviewpagewidget.cpp http://commits.kde.org/messagelib/2f18a8dd9ae77ff1f3b02659007763711822c5a2 diff --git a/webengineviewer/src/print/printpreviewpageviewer.cpp b/webengi= neviewer/src/print/printpreviewpageviewer.cpp index de2ba19..d79b2ae 100644 --- a/webengineviewer/src/print/printpreviewpageviewer.cpp +++ b/webengineviewer/src/print/printpreviewpageviewer.cpp @@ -23,6 +23,7 @@ #include #include #include +#include = using namespace WebEngineViewer; = @@ -71,3 +72,19 @@ qreal PrintPreviewPageViewer::zoom() const { return mZoom; } + +void PrintPreviewPageViewer::wheelEvent(QWheelEvent *e) +{ + if (QApplication::keyboardModifiers() & Qt::ControlModifier) { + const int numDegrees =3D e->delta() / 8; + const int numSteps =3D numDegrees / 15; + + const qreal factor =3D (mZoom * 100) + numSteps * 10; + if (factor >=3D 10 && factor <=3D 300) { + setZoom(factor / 100); + } + e->accept(); + return; + } + QScrollArea::wheelEvent(e); +} diff --git a/webengineviewer/src/print/printpreviewpageviewer.h b/webengine= viewer/src/print/printpreviewpageviewer.h index c9745ea..37d22f8 100644 --- a/webengineviewer/src/print/printpreviewpageviewer.h +++ b/webengineviewer/src/print/printpreviewpageviewer.h @@ -43,6 +43,10 @@ public: = Q_SIGNALS: void reloadPage(); + +protected: + void wheelEvent(QWheelEvent *e) Q_DECL_OVERRIDE; + private: int mDpiX; int mDpiY; diff --git a/webengineviewer/src/print/printpreviewpagewidget.cpp b/webengi= neviewer/src/print/printpreviewpagewidget.cpp index 855fd12..13c8a7e 100644 --- a/webengineviewer/src/print/printpreviewpagewidget.cpp +++ b/webengineviewer/src/print/printpreviewpagewidget.cpp @@ -134,5 +134,6 @@ void PrintPreviewPageWidget::print(const QList &pa= ge) = void PrintPreviewPageWidget::slotReloadPage() { - showPage(mPageComboBox->currentIndex()); + const int currentIndex =3D mPageComboBox->currentIndex(); + showPage(currentIndex =3D=3D -1 ? 0 : currentIndex); }