class ArdourStartup : public Gtk::Assistant {
public:
- ArdourStartup ();
+ ArdourStartup (bool require_new, const std::string& session_name, const std::string& session_path, const std::string& template_name);
~ArdourStartup ();
- void set_new_only (bool);
- void set_load_template( std::string load_template );
+ bool ready_without_display () const;
std::string session_name (bool& should_be_new);
std::string session_folder ();
bool use_session_template();
std::string session_template_name();
- EngineControl* engine_control() { return engine_dialog; }
-
// advanced session options
bool create_master_bus() const;
gint _response;
bool config_modified;
bool new_user;
+ bool need_session_info;
bool new_only;
+ std::string _provided_session_name;
+ std::string _provided_session_path;
+
+ std::string been_here_before_path () const;
void on_apply ();
void on_cancel ();
bool on_delete_event (GdkEventAny*);
- void on_prepare (Gtk::Widget*);
+ void on_prepare (Gtk::Widget*);
static ArdourStartup *the_startup;
void setup_initial_choice_page ();
Gtk::VBox ic_vbox;
- Gtk::RadioButton ic_new_session_button;
- Gtk::RadioButton ic_existing_session_button;
- bool initial_button_press(GdkEventButton *);
- void initial_button_activated();
+ Gtk::Button ic_new_session_button;
+ void new_session_button_clicked ();
/* monitoring choices */
Gtk::RadioButton no_monitor_section_button;
void setup_monitor_section_choice_page ();
- /* session page (could be new or existing) */
-
- void setup_session_page ();
- Gtk::VBox session_vbox;
- Gtk::HBox session_hbox;
/* recent sessions */
struct RecentSessionModelColumns : public Gtk::TreeModel::ColumnRecord {
RecentSessionModelColumns() {
add (visible_name);
+ add (tip);
add (fullpath);
}
Gtk::TreeModelColumn<std::string> visible_name;
+ Gtk::TreeModelColumn<std::string> tip;
Gtk::TreeModelColumn<std::string> fullpath;
};
void recent_row_activated (const Gtk::TreePath& path, Gtk::TreeViewColumn* col);
void existing_session_selected ();
-
- /* audio setup page */
-
- void setup_audio_page ();
- EngineControl* engine_dialog;
+ void session_selected ();
/* new sessions */
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 () {
gint default_folder_page_index;
gint monitoring_page_index;
gint monitor_section_page_index;
- gint session_page_index;
+ gint new_session_page_index;
gint initial_choice_index;
gint final_page_index;
gint session_options_page_index;
void move_along_now ();
bool _existing_session_chooser_used; ///< set to true when the existing session chooser has been used
- void setup_alpha_page ();
+ void setup_prerelease_page ();
+
+ Gtk::Label info_scroller_label;
+ std::string::size_type info_scroller_count;
+ bool info_scroller_update();
+ sigc::connection info_scroller_connection;
+ void updates_button_clicked ();
};
#endif /* __gtk2_ardour_startup_h__ */