Skip to content

Commit 89604c5

Browse files
committed
Give information if saving fails.
1 parent 65ee0a6 commit 89604c5

File tree

3 files changed

+19
-2
lines changed

3 files changed

+19
-2
lines changed

src/MainWindow.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,7 @@ MainWindow::MainWindow(Editor & editor, Renderer & renderer)
8282

8383
connect(m_controlToolbar, SIGNAL(amplitudeChanged(float)), &renderer, SLOT(setAmplitude(float)));
8484
connect(m_controlToolbar, SIGNAL(radiusChanged(float)), &renderer, SLOT(setRadius(float)));
85+
connect(m_renderPreview, SIGNAL(messageLogged(QString)), this, SLOT(console(QString)));
8586
}
8687

8788
void MainWindow::initMenuBar()

src/RenderPreview.cpp

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919

2020
#include <QFileDialog>
2121
#include <QGraphicsPixmapItem>
22+
#include <QMessageBox>
2223
#include <QPixmap>
2324

2425
RenderPreview::RenderPreview(Renderer & renderer, QWidget* parent)
@@ -63,7 +64,18 @@ void RenderPreview::save()
6364
const QString path = Settings::loadRecentResultPath();
6465
const QString fileName = QFileDialog::getSaveFileName(
6566
this, tr("Save the normal map image"), path, tr("JPEG (*.jpg *.jpeg);;PNG (*.png)"));
66-
Settings::saveRecentResultPath(fileName);
6767

68-
m_renderer.image().save(fileName);
68+
if (m_renderer.image().save(fileName))
69+
{
70+
Settings::saveRecentResultPath(fileName);
71+
emit messageLogged(tr("Successfully saved to '") + fileName + "'.");
72+
}
73+
else
74+
{
75+
QMessageBox::critical(
76+
this,
77+
tr("Saving failed!"),
78+
tr("Unknown image type ") + fileName);
79+
emit messageLogged(tr("Saving failed!"));
80+
}
6981
}

src/RenderPreview.hpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,10 @@ private slots:
4242

4343
void updatePreview(const QPixmap & result);
4444

45+
signals:
46+
47+
void messageLogged(QString message);
48+
4549
private:
4650

4751
QGraphicsScene m_scene;

0 commit comments

Comments
 (0)