X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fstartup.h;h=76183b5b5a6885bf054ff0d432e310c8f1740c94;hb=cca8b8cda0d25459019bb10a59616fec108b825e;hp=d2aadd62b1f99a57e2d77dc9289895372ebb1157;hpb=0015553c4a1e24386df60a7a1dc49c2da19794da;p=ardour.git diff --git a/gtk2_ardour/startup.h b/gtk2_ardour/startup.h index d2aadd62b1..76183b5b5a 100644 --- a/gtk2_ardour/startup.h +++ b/gtk2_ardour/startup.h @@ -1,3 +1,22 @@ +/* + Copyright (C) 2010 Paul Davis + + 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. + +*/ + #ifndef __gtk2_ardour_startup_h__ #define __gtk2_ardour_startup_h__ @@ -30,12 +49,13 @@ class ArdourStartup : public Gtk::Assistant { ~ArdourStartup (); void set_new_only (bool); + void set_load_template( std::string load_template ); - Glib::ustring session_name (bool& should_be_new); - Glib::ustring session_folder (); + std::string session_name (bool& should_be_new); + std::string session_folder (); bool use_session_template(); - Glib::ustring session_template_name(); + std::string session_template_name(); EngineControl* engine_control() { return engine_dialog; } @@ -55,7 +75,7 @@ class ArdourStartup : public Gtk::Assistant { bool connect_outs_to_master() const; bool connect_outs_to_physical() const; - gint response () const { + gint response () const { return _response; } @@ -133,18 +153,21 @@ class ArdourStartup : public Gtk::Assistant { add (visible_name); add (fullpath); } - Gtk::TreeModelColumn visible_name; - Gtk::TreeModelColumn fullpath; + Gtk::TreeModelColumn visible_name; + Gtk::TreeModelColumn fullpath; }; RecentSessionModelColumns recent_session_columns; Gtk::TreeView recent_session_display; Glib::RefPtr recent_session_model; Gtk::ScrolledWindow recent_scroller; + Gtk::FileChooserButton existing_session_chooser; int redisplay_recent_sessions (); void recent_session_row_selected (); void recent_row_activated (const Gtk::TreePath& path, Gtk::TreeViewColumn* col); + void existing_session_selected (); + /* audio setup page */ void setup_audio_page (); @@ -156,6 +179,7 @@ class ArdourStartup : public Gtk::Assistant { Gtk::Entry new_name_entry; Gtk::FileChooserButton new_folder_chooser; Gtk::FileChooserButton session_template_chooser; + void new_name_mapped (); struct SessionTemplateColumns : public Gtk::TreeModel::ColumnRecord { SessionTemplateColumns () { @@ -172,10 +196,12 @@ class ArdourStartup : public Gtk::Assistant { Gtk::ComboBox template_chooser; Gtk::VBox session_new_vbox; + Gtk::VBox session_existing_vbox; Gtk::CheckButton more_new_session_options_button; Gtk::RadioButtonGroup session_template_group; Gtk::RadioButton use_session_as_template_button; Gtk::RadioButton use_template_button; + std::string load_template_override; void more_new_session_options_button_clicked(); void new_name_changed (); @@ -261,6 +287,8 @@ class ArdourStartup : public Gtk::Assistant { void move_along_now (); + bool _existing_session_chooser_used; ///< set to true when the existing session chooser has been used + void setup_alpha_page (); }; #endif /* __gtk2_ardour_startup_h__ */