From 99303e92ae9cf461f99b8eff8b37b42f758118b6 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Fri, 11 Mar 2016 10:00:33 +0100 Subject: Polish the SVG viewer example. - Use Qt 5 connection syntax, demonstrating lambdas. - Use QCommandLineParser. - Improve error handling. - Use Mime API of QFileDialog, point to pictures location initially. - Prevent the application from shrinking when loading small images. - Minor polishing, status messages on loading, About Qt dialog. Change-Id: I76f14001c9ab12cbfaaacc2ca4828b404e4b13b2 Reviewed-by: aavit --- examples/svg/svgviewer/svgview.h | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'examples/svg/svgviewer/svgview.h') diff --git a/examples/svg/svgviewer/svgview.h b/examples/svg/svgviewer/svgview.h index b6d1b01..41c0ca5 100644 --- a/examples/svg/svgviewer/svgview.h +++ b/examples/svg/svgviewer/svgview.h @@ -46,7 +46,6 @@ QT_BEGIN_NAMESPACE class QWheelEvent; class QPaintEvent; -class QFile; QT_END_NAMESPACE class SvgView : public QGraphicsView @@ -56,11 +55,13 @@ class SvgView : public QGraphicsView public: enum RendererType { Native, OpenGL, Image }; - SvgView(QWidget *parent = 0); + explicit SvgView(QWidget *parent = nullptr); - void openFile(const QFile &file); + bool openFile(const QString &fileName); void setRenderer(RendererType type = Native); - void drawBackground(QPainter *p, const QRectF &rect); + void drawBackground(QPainter *p, const QRectF &rect) override; + + QSize svgSize() const; public slots: void setHighQualityAntialiasing(bool highQualityAntialiasing); @@ -68,8 +69,8 @@ public slots: void setViewOutline(bool enable); protected: - void wheelEvent(QWheelEvent *event); - void paintEvent(QPaintEvent *event); + void wheelEvent(QWheelEvent *event) override; + void paintEvent(QPaintEvent *event) override; private: RendererType m_renderer; -- cgit v1.2.1 From 95e0d10ddd18b15ba12886d1ec3c5c9c3e06bd55 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Mon, 14 Mar 2016 14:25:23 +0100 Subject: SVG viewer: Add export option. Add an option to export an image giving a size. This can be used for creating High DPI icons from SVG files among other things. Task-number: QTBUG-49374 Change-Id: I0437889961bc6e646667c5165584002f7ab4d952 Reviewed-by: aavit --- examples/svg/svgviewer/svgview.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'examples/svg/svgviewer/svgview.h') diff --git a/examples/svg/svgviewer/svgview.h b/examples/svg/svgviewer/svgview.h index 41c0ca5..645fb49 100644 --- a/examples/svg/svgviewer/svgview.h +++ b/examples/svg/svgviewer/svgview.h @@ -44,6 +44,8 @@ #include QT_BEGIN_NAMESPACE +class QGraphicsSvgItem; +class QSvgRenderer; class QWheelEvent; class QPaintEvent; QT_END_NAMESPACE @@ -62,6 +64,7 @@ public: void drawBackground(QPainter *p, const QRectF &rect) override; QSize svgSize() const; + QSvgRenderer *renderer() const; public slots: void setHighQualityAntialiasing(bool highQualityAntialiasing); @@ -75,7 +78,7 @@ protected: private: RendererType m_renderer; - QGraphicsItem *m_svgItem; + QGraphicsSvgItem *m_svgItem; QGraphicsRectItem *m_backgroundItem; QGraphicsRectItem *m_outlineItem; -- cgit v1.2.1