summaryrefslogtreecommitdiff
path: root/gtk2_ardour/session_dialog.h
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2017-08-16 01:13:00 +0200
committerRobin Gareus <robin@gareus.org>2017-08-16 01:17:35 +0200
commitbd40b9132cbac2d2b79ba0ef480bd41d837f8f71 (patch)
tree7e420e0eb68d52019c774b04adccd5f3b9ae239d /gtk2_ardour/session_dialog.h
parent26c88b2a3ea2dba06197c8f353dfa3af25b342e0 (diff)
Revert ongoing SessionDialog changes for 5.11 release.5.11
To be reverted again after the release. This temporarily reverts 26c88b2, c67d1d4, 5e41293, 8b7df13, ff61435, 1039894, 8717c0d and GUI parts of 47d86cf
Diffstat (limited to 'gtk2_ardour/session_dialog.h')
-rw-r--r--gtk2_ardour/session_dialog.h101
1 files changed, 82 insertions, 19 deletions
diff --git a/gtk2_ardour/session_dialog.h b/gtk2_ardour/session_dialog.h
index 8aced6c90d..5f4062fc1b 100644
--- a/gtk2_ardour/session_dialog.h
+++ b/gtk2_ardour/session_dialog.h
@@ -30,7 +30,6 @@
#include <gtkmm/radiobutton.h>
#include <gtkmm/filechooserbutton.h>
#include <gtkmm/scrolledwindow.h>
-#include <gtkmm/textview.h>
#include <gtkmm/treeview.h>
#include <gtkmm/treestore.h>
#include <gtkmm/checkbutton.h>
@@ -59,10 +58,24 @@ public:
std::string session_name (bool& should_be_new);
std::string session_folder ();
- bool use_session_template() const;
+ bool use_session_template();
std::string session_template_name();
- uint32_t master_channel_count();
+ // advanced session options
+
+ bool create_master_bus() const;
+ int master_channel_count() const;
+
+ bool connect_inputs() const;
+ bool limit_inputs_used_for_connection() const;
+ int input_limit_count() const;
+
+ bool connect_outputs() const;
+ bool limit_outputs_used_for_connection() const;
+ int output_limit_count() const;
+
+ bool connect_outs_to_master() const;
+ bool connect_outs_to_physical() const;
void set_provided_session(const std::string& session_name, const std::string& session_path) {
_provided_session_name = session_name;
@@ -152,42 +165,92 @@ private:
SessionTemplateColumns () {
add (name);
add (path);
- add (description);
- add (created_with);
+ add (desc);
}
Gtk::TreeModelColumn<std::string> name;
Gtk::TreeModelColumn<std::string> path;
- Gtk::TreeModelColumn<std::string> description;
- Gtk::TreeModelColumn<std::string> created_with;
+ Gtk::TreeModelColumn<std::string> desc;
};
SessionTemplateColumns session_template_columns;
-
- Glib::RefPtr<Gtk::TreeStore> template_model;
- Gtk::TreeView template_chooser;
- Gtk::ScrolledWindow template_scroller;
-
- void template_row_selected ();
-
- Gtk::TextView template_desc;
- Gtk::Frame template_desc_frame;
+ Glib::RefPtr<Gtk::ListStore> template_model;
+ Gtk::ComboBox template_chooser;
Gtk::VBox session_new_vbox;
Gtk::VBox session_existing_vbox;
+ Gtk::Expander more_new_session_options_button;
+ Gtk::CheckButton use_template_button;
std::string load_template_override;
+ void template_checkbox_toggled ();
+
+ void more_new_session_options_button_clicked();
void new_name_changed ();
void new_name_activated ();
void populate_session_templates ();
+ /* more options for new sessions */
+
+ Gtk::VBox more_options_vbox;
+
+ Gtk::Label chan_count_label_1;
+ Gtk::Label chan_count_label_3;
+ Gtk::Label chan_count_label_4;
+ Gtk::Table advanced_table;
+ Gtk::HBox input_port_limit_hbox;
+ Gtk::VBox input_port_vbox;
+ Gtk::Table input_table;
+ Gtk::HBox input_hbox;
+
+ Gtk::Label bus_label;
+ Gtk::Frame bus_frame;
+ Gtk::Table bus_table;
+ Gtk::HBox bus_hbox;
+
+ Gtk::Label input_label;
+ Gtk::Frame input_frame;
+ Gtk::HBox output_port_limit_hbox;
+ Gtk::VBox output_port_vbox;
+ Gtk::VBox output_conn_vbox;
+ Gtk::VBox output_vbox;
+ Gtk::HBox output_hbox;
+
+ Gtk::Label output_label;
+ Gtk::Frame output_frame;
+ Gtk::VBox advanced_vbox;
+ Gtk::Label advanced_label;
+
+ Gtk::CheckButton _create_master_bus;
+ Gtk::SpinButton _master_bus_channel_count;
+
+ Gtk::CheckButton _connect_inputs;
+ Gtk::CheckButton _limit_input_ports;
+ Gtk::SpinButton _input_limit_count;
+
+ Gtk::CheckButton _connect_outputs;
+ Gtk::CheckButton _limit_output_ports;
+ Gtk::SpinButton _output_limit_count;
+
+ Gtk::RadioButtonGroup connect_outputs_group;
+ Gtk::RadioButton _connect_outputs_to_master;
+ Gtk::RadioButton _connect_outputs_to_physical;
+
+ Gtk::Adjustment _output_limit_count_adj;
+ Gtk::Adjustment _input_limit_count_adj;
+ Gtk::Adjustment _master_bus_channel_count_adj;
+
+ void connect_inputs_clicked ();
+ void connect_outputs_clicked ();
+ void limit_inputs_clicked ();
+ void limit_outputs_clicked ();
+ void master_bus_button_clicked ();
+ void setup_more_options_box ();
+
/* --disable plugins UI */
Gtk::CheckButton _disable_plugins;
void disable_plugins_clicked ();
- /* meta-template */
- uint32_t meta_master_bus_profile (std::string script) const;
-
/* always there */
Glib::RefPtr<Pango::Layout> layout;