diff options
author | Johannes Mueller <github@johannes-mueller.org> | 2017-08-18 19:53:46 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2017-08-20 21:09:30 +0200 |
commit | ae51d5fd4ebb90f782334ac0b4addc0c88e1629c (patch) | |
tree | 2409ee3fa7ad3c9c5f207324f44d0f67bf4befd4 /gtk2_ardour/save_template_dialog.cc | |
parent | 908369ab3e31f82eae3734cfe61421912d2fba6a (diff) |
Let the user add a template description on saving session templates
Diffstat (limited to 'gtk2_ardour/save_template_dialog.cc')
-rw-r--r-- | gtk2_ardour/save_template_dialog.cc | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/gtk2_ardour/save_template_dialog.cc b/gtk2_ardour/save_template_dialog.cc new file mode 100644 index 0000000000..ed803bf405 --- /dev/null +++ b/gtk2_ardour/save_template_dialog.cc @@ -0,0 +1,71 @@ +/* + Copyright (C) 2017 Paul Davis + Author: Johannes Mueller + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + +*/ + +#include <gtkmm/box.h> +#include <gtkmm/frame.h> +#include <gtkmm/label.h> +#include <gtkmm/stock.h> + +#include "pbd/i18n.h" +#include "ardour/session.h" + +#include "save_template_dialog.h" + +using namespace Gtk; +using namespace ARDOUR; + +SaveTemplateDialog::SaveTemplateDialog (const Session& s) + : ArdourDialog (_("Save as template")) +{ + _name_editor.get_buffer()->set_text (s.name() + _("-template")); + _description_editor.set_wrap_mode (Gtk::WRAP_WORD); + _description_editor.set_size_request(400, 300); + + HBox* hb = manage (new HBox); + hb->set_spacing (8); + Label* lb = manage (new Label(_("Template name:"))); + hb->pack_start (*lb, false, true); + hb->pack_start (_name_editor, true, true); + + Frame* fd = manage (new Frame(_("Description:"))); + fd->add (_description_editor); + + get_vbox()->set_spacing (8); + get_vbox()->pack_start (*fd); + get_vbox()->pack_start (*hb); + + add_button(Gtk::Stock::CANCEL, Gtk::RESPONSE_CANCEL); + add_button(Gtk::Stock::SAVE, Gtk::RESPONSE_ACCEPT); + + show_all_children (); +} + + +std::string +SaveTemplateDialog::get_template_name () const +{ + return _name_editor.get_buffer()->get_text(); +} + +std::string +SaveTemplateDialog::get_description () const +{ + return _description_editor.get_buffer()->get_text(); +} |