X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Ftemplate_dialog.h;h=51605d6d0849c900dfe2e212d75899c352c18eea;hb=57d7b5de65b399fc7d1d61a3a9212c0fa7f1e95c;hp=2e7f2e454a376b9b3785f0a754ce8eb6c1abf4a1;hpb=a5ba520f758b5be2a71f8a8a375ccc99ebe4b2f2;p=ardour.git diff --git a/gtk2_ardour/template_dialog.h b/gtk2_ardour/template_dialog.h index 2e7f2e454a..51605d6d08 100644 --- a/gtk2_ardour/template_dialog.h +++ b/gtk2_ardour/template_dialog.h @@ -21,92 +21,15 @@ #ifndef __gtk2_ardour_template_dialog_h__ #define __gtk2_ardour_template_dialog_h__ -#include - -#include -#include - #include "ardour_dialog.h" -namespace ARDOUR { - struct TemplateInfo; -} - -class TemplateDialog : public ArdourDialog +class TemplateDialog : public ArdourDialog, + public PBD::ScopedConnectionList { public: TemplateDialog (); ~TemplateDialog () {} }; -class TemplateManager : public Gtk::HBox -{ -public: - virtual ~TemplateManager () {} - virtual void init () = 0; - -protected: - TemplateManager (); - - void setup_model (const std::vector& templates); - - void row_selection_changed (); - void render_template_names (Gtk::CellRenderer* rnd, const Gtk::TreeModel::iterator& it); - void validate_edit (const Glib::ustring& path_string, const Glib::ustring& new_name); - void start_edit (); - - bool key_event (GdkEventKey* ev); - - virtual void rename_template (Gtk::TreeModel::iterator& item, const Glib::ustring& new_name) = 0; - virtual void delete_selected_template () = 0; - - struct SessionTemplateColumns : public Gtk::TreeModel::ColumnRecord { - SessionTemplateColumns () { - add (name); - add (path); - } - - Gtk::TreeModelColumn name; - Gtk::TreeModelColumn path; - }; - - SessionTemplateColumns _template_columns; - Glib::RefPtr _template_model; - - Gtk::TreeView _template_treeview; - Gtk::CellRendererText _validating_cellrenderer; - Gtk::TreeView::Column _validated_column; - - Gtk::Button _remove_button; - Gtk::Button _rename_button; -}; - -class SessionTemplateManager : public TemplateManager -{ -public: - SessionTemplateManager () : TemplateManager () {} - ~SessionTemplateManager () {} - - void init (); - -private: - void rename_template (Gtk::TreeModel::iterator& item, const Glib::ustring& new_name); - void delete_selected_template (); -}; - - -class RouteTemplateManager : public TemplateManager -{ -public: - RouteTemplateManager () : TemplateManager () {} - ~RouteTemplateManager () {} - - void init (); - -private: - void rename_template (Gtk::TreeModel::iterator& item, const Glib::ustring& new_name); - void delete_selected_template (); -}; - #endif /* __gtk2_ardour_template_dialog_h__ */