diff options
| author | Carl Hetherington <cth@carlh.net> | 2016-08-24 16:45:34 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2016-08-24 16:45:34 +0100 |
| commit | 73407f943ba25e2a0df2c98b3a9a938132876e9f (patch) | |
| tree | 3f50da759546b4e15bbb076bfafd8afe4509421b /src/wx/save_template_dialog.cc | |
| parent | 8e7bdee30563e9e334bc99387315124557ad0227 (diff) | |
Add a basic management dialogue for templates.
Diffstat (limited to 'src/wx/save_template_dialog.cc')
| -rw-r--r-- | src/wx/save_template_dialog.cc | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/wx/save_template_dialog.cc b/src/wx/save_template_dialog.cc index eff61a256..23dc0a85a 100644 --- a/src/wx/save_template_dialog.cc +++ b/src/wx/save_template_dialog.cc @@ -20,6 +20,7 @@ #include "save_template_dialog.h" #include "wx_util.h" +#include "lib/config.h" #include <boost/foreach.hpp> using std::string; @@ -31,6 +32,9 @@ SaveTemplateDialog::SaveTemplateDialog (wxWindow* parent) _name = add (new wxTextCtrl (this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize (300, -1))); _name->SetFocus (); layout (); + + wxButton* ok = dynamic_cast<wxButton *> (FindWindowById (wxID_OK, this)); + ok->Bind (wxEVT_COMMAND_BUTTON_CLICKED, bind (&SaveTemplateDialog::check, this, _1)); } string @@ -38,3 +42,20 @@ SaveTemplateDialog::name () const { return wx_to_std (_name->GetValue ()); } + +void +SaveTemplateDialog::check (wxCommandEvent& ev) +{ + bool ok = true; + + if (_name->GetValue().IsEmpty()) { + error_dialog (this, _("Template names must not be empty.")); + ok = false; + } else if (Config::instance()->existing_template (wx_to_std (_name->GetValue ()))) { + ok = confirm_dialog (this, _("There is already a template with this name. Do you want to overwrite it?")); + } + + if (ok) { + ev.Skip (); + } +} |
