summaryrefslogtreecommitdiffstats
path: root/src/ui/dialog/save-template-dialog.cpp
diff options
context:
space:
mode:
authorMarc Jeanmougin <marc@jeanmougin.fr>2018-10-18 15:44:16 +0000
committerMarc Jeanmougin <marc@jeanmougin.fr>2018-10-18 15:44:16 +0000
commit4deaa8e168d13b07fd56f5ff1de8a8c64df5719a (patch)
tree89b37f02a3e123bcdade0e75321dc001482e2668 /src/ui/dialog/save-template-dialog.cpp
parentMerge branch 'master' of gitlab.com:xhorak/inkscape (diff)
parentFix bug 1789838 - Ask for confirmation before overwriting template (diff)
downloadinkscape-4deaa8e168d13b07fd56f5ff1de8a8c64df5719a.tar.gz
inkscape-4deaa8e168d13b07fd56f5ff1de8a8c64df5719a.zip
Merge branch 'bugfix-1789838-confirmation-needed-before-overwriting-template' of gitlab.com:ccrb/inkscape
Diffstat (limited to 'src/ui/dialog/save-template-dialog.cpp')
-rw-r--r--src/ui/dialog/save-template-dialog.cpp19
1 files changed, 12 insertions, 7 deletions
diff --git a/src/ui/dialog/save-template-dialog.cpp b/src/ui/dialog/save-template-dialog.cpp
index 1be831ef8..e16bf45f7 100644
--- a/src/ui/dialog/save-template-dialog.cpp
+++ b/src/ui/dialog/save-template-dialog.cpp
@@ -1,10 +1,10 @@
#include "save-template-dialog.h"
#include "file.h"
+#include "io/resource.h"
+#include "ui/interface.h"
#include <glibmm/i18n.h>
-#include <iostream>
-
namespace Inkscape {
namespace UI {
namespace Dialog {
@@ -63,9 +63,9 @@ void SaveTemplate::on_name_changed() {
}
}
-void SaveTemplate::save_template(Gtk::Window &parentWindow) {
+bool SaveTemplate::save_template(Gtk::Window &parentWindow) {
- sp_file_save_template(parentWindow, name_text.get_text(),
+ return sp_file_save_template(parentWindow, name_text.get_text(),
author_text.get_text(), description_text.get_text(),
keywords_text.get_text(), is_default_template.get_active());
}
@@ -74,11 +74,16 @@ void SaveTemplate::save_document_as_template(Gtk::Window &parentWindow) {
SaveTemplate dialog;
- auto result = dialog.run();
+ auto operation_done = false;
+
+ while (operation_done == false) {
- if (result == Gtk::RESPONSE_OK){
+ auto user_response = dialog.run();
- dialog.save_template(parentWindow);
+ if (user_response == Gtk::RESPONSE_OK)
+ operation_done = dialog.save_template(parentWindow);
+ else
+ operation_done = true;
}
}