From ae51d5fd4ebb90f782334ac0b4addc0c88e1629c Mon Sep 17 00:00:00 2001 From: Johannes Mueller Date: Fri, 18 Aug 2017 19:53:46 +0200 Subject: Let the user add a template description on saving session templates --- gtk2_ardour/save_template_dialog.cc | 71 +++++++++++++++++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 gtk2_ardour/save_template_dialog.cc (limited to 'gtk2_ardour/save_template_dialog.cc') 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 +#include +#include +#include + +#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(); +} -- cgit v1.2.3