summaryrefslogtreecommitdiff
path: root/src/plugins/imageviewer/imageviewer.cpp
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@theqtcompany.com>2016-03-17 16:02:20 +0100
committerFriedemann Kleint <Friedemann.Kleint@theqtcompany.com>2016-03-21 08:51:52 +0000
commit44820dae1326476a6e1aa693421c61ae67bb13b0 (patch)
tree57c610639a41b7eecc4b6eec2d95c9bbd956548b /src/plugins/imageviewer/imageviewer.cpp
parente5262fba5fa705b97314715c2db2e0bb0e40236b (diff)
downloadqt-creator-44820dae1326476a6e1aa693421c61ae67bb13b0.tar.gz
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 <riitta-leena.miettinen@theqtcompany.com> Reviewed-by: Alessandro Portale <alessandro.portale@theqtcompany.com>
Diffstat (limited to 'src/plugins/imageviewer/imageviewer.cpp')
-rw-r--r--src/plugins/imageviewer/imageviewer.cpp18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/plugins/imageviewer/imageviewer.cpp b/src/plugins/imageviewer/imageviewer.cpp
index a2ad9225ca..44f86c44b9 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;