diff options
author | Friedemann Kleint <[email protected]> | 2016-03-17 16:02:20 +0100 |
---|---|---|
committer | Friedemann Kleint <[email protected]> | 2016-03-21 08:51:52 +0000 |
commit | 44820dae1326476a6e1aa693421c61ae67bb13b0 (patch) | |
tree | 57c610639a41b7eecc4b6eec2d95c9bbd956548b /src/plugins/imageviewer/imageviewer.cpp | |
parent | e5262fba5fa705b97314715c2db2e0bb0e40236b (diff) |
ImageViewer: Add option to export images from SVG.
Add a tool button showing a dialog with file name
and size for exporting images from SVG.
[ChangeLog][ImageViewer] Added option to export images from SVG.
Change-Id: I84e04dc166e70b0359eba0f19703a75b882a2bc2
Reviewed-by: Leena Miettinen <[email protected]>
Reviewed-by: Alessandro Portale <[email protected]>
Diffstat (limited to 'src/plugins/imageviewer/imageviewer.cpp')
-rw-r--r-- | src/plugins/imageviewer/imageviewer.cpp | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/src/plugins/imageviewer/imageviewer.cpp b/src/plugins/imageviewer/imageviewer.cpp index a2ad9225ca6..44f86c44b90 100644 --- a/src/plugins/imageviewer/imageviewer.cpp +++ b/src/plugins/imageviewer/imageviewer.cpp @@ -100,10 +100,11 @@ void ImageViewer::ctor() // toolbar d->toolbar = new QWidget(); d->ui_toolbar.setupUi(d->toolbar); + d->ui_toolbar.toolButtonExportImage->setIcon(QIcon::fromTheme(QLatin1String("document-save"), + Core::Icons::SAVEFILE.icon())); d->ui_toolbar.toolButtonZoomIn->setIcon(Core::Icons::PLUS.icon()); d->ui_toolbar.toolButtonZoomOut->setIcon(Core::Icons::MINUS.icon()); d->ui_toolbar.toolButtonFitToScreen->setIcon(Core::Icons::ZOOM.icon()); - // icons update - try to use system theme updateButtonIconByTheme(d->ui_toolbar.toolButtonZoomIn, QLatin1String("zoom-in")); updateButtonIconByTheme(d->ui_toolbar.toolButtonZoomOut, QLatin1String("zoom-out")); @@ -115,6 +116,7 @@ void ImageViewer::ctor() // (photograph has outline - piece of paper) updateButtonIconByTheme(d->ui_toolbar.toolButtonOutline, QLatin1String("emblem-photos")); + d->ui_toolbar.toolButtonExportImage->setCommandId(Constants::ACTION_EXPORT_IMAGE); d->ui_toolbar.toolButtonZoomIn->setCommandId(Constants::ACTION_ZOOM_IN); d->ui_toolbar.toolButtonZoomOut->setCommandId(Constants::ACTION_ZOOM_OUT); d->ui_toolbar.toolButtonOriginalSize->setCommandId(Constants::ACTION_ORIGINAL_SIZE); @@ -124,6 +126,8 @@ void ImageViewer::ctor() d->ui_toolbar.toolButtonPlayPause->setCommandId(Constants::ACTION_TOGGLE_ANIMATION); // connections + connect(d->ui_toolbar.toolButtonExportImage, &QAbstractButton::clicked, + d->imageView, &ImageView::exportImage); connect(d->ui_toolbar.toolButtonZoomIn, &QAbstractButton::clicked, d->imageView, &ImageView::zoomIn); connect(d->ui_toolbar.toolButtonZoomOut, &QAbstractButton::clicked, @@ -150,6 +154,12 @@ void ImageViewer::ctor() this, &ImageViewer::updatePauseAction); connect(d->imageView, &ImageView::scaleFactorChanged, this, &ImageViewer::scaleFactorUpdate); + + connect(d->file.data(), &ImageViewerFile::openFinished, + this, [this](bool success) + { + d->ui_toolbar.toolButtonExportImage->setEnabled(success && d->file->type() == ImageViewerFile::TypeSvg); + }); } ImageViewer::~ImageViewer() @@ -176,6 +186,12 @@ Core::IEditor *ImageViewer::duplicate() return other; } +void ImageViewer::exportImage() +{ + if (d->file->type() == ImageViewerFile::TypeSvg) + d->ui_toolbar.toolButtonExportImage->click(); +} + void ImageViewer::imageSizeUpdated(const QSize &size) { QString imageSizeText; |