summaryrefslogtreecommitdiff
path: root/gtk2_ardour/mixer_ui.h
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2016-06-05 16:29:22 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2016-06-05 16:33:02 -0400
commit4ca69e346ff2427e50a07062763594c8f07a7cc0 (patch)
tree40031003b4a7d6b562717dd277d405d7b89ea2f4 /gtk2_ardour/mixer_ui.h
parent1d5d98589a477ed0a2eb13d36471177c45cc0740 (diff)
substantive redesign of Gtk::TreeModel used inside Mixer_UI to hold both VCAs and Routes
Diffstat (limited to 'gtk2_ardour/mixer_ui.h')
-rw-r--r--gtk2_ardour/mixer_ui.h53
1 files changed, 26 insertions, 27 deletions
diff --git a/gtk2_ardour/mixer_ui.h b/gtk2_ardour/mixer_ui.h
index 9008b66111..1be03132cc 100644
--- a/gtk2_ardour/mixer_ui.h
+++ b/gtk2_ardour/mixer_ui.h
@@ -55,6 +55,7 @@ namespace ARDOUR {
class RouteGroup;
};
+class AxisView;
class MixerStrip;
class PluginSelector;
class MixerGroupTabs;
@@ -165,7 +166,9 @@ class Mixer_UI : public Gtkmm2ext::Tabbable, public PBD::ScopedConnectionList, p
void scroll_right ();
void toggle_midi_input_active (bool flip_others);
- void add_strips (ARDOUR::RouteList&);
+ void add_stripables (ARDOUR::StripableList&);
+
+ void add_routes (ARDOUR::RouteList&);
void remove_strip (MixerStrip *);
void add_masters (ARDOUR::VCAList&);
@@ -265,49 +268,45 @@ class Mixer_UI : public Gtkmm2ext::Tabbable, public PBD::ScopedConnectionList, p
/* various treeviews */
- struct TrackDisplayModelColumns : public Gtk::TreeModel::ColumnRecord {
- TrackDisplayModelColumns () {
+ struct StripableDisplayModelColumns : public Gtk::TreeModel::ColumnRecord {
+ StripableDisplayModelColumns () {
add (text);
add (visible);
- add (route);
+ add (stripable);
add (strip);
- add (vca);
}
Gtk::TreeModelColumn<bool> visible;
Gtk::TreeModelColumn<std::string> text;
- Gtk::TreeModelColumn<boost::shared_ptr<ARDOUR::Route> > route;
- /* if route is non-null, this must be non-null */
- Gtk::TreeModelColumn<MixerStrip*> strip;
- /* if route is null, this may be non-null */
- Gtk::TreeModelColumn<VCAMasterStrip*> vca;
+ Gtk::TreeModelColumn<boost::shared_ptr<ARDOUR::Stripable> > stripable;
+ Gtk::TreeModelColumn<AxisView*> strip;
};
struct GroupDisplayModelColumns : public Gtk::TreeModel::ColumnRecord {
- GroupDisplayModelColumns() {
- add (visible);
- add (text);
- add (group);
- }
- Gtk::TreeModelColumn<bool> visible;
- Gtk::TreeModelColumn<std::string> text;
- Gtk::TreeModelColumn<ARDOUR::RouteGroup*> group;
+ GroupDisplayModelColumns() {
+ add (visible);
+ add (text);
+ add (group);
+ }
+ Gtk::TreeModelColumn<bool> visible;
+ Gtk::TreeModelColumn<std::string> text;
+ Gtk::TreeModelColumn<ARDOUR::RouteGroup*> group;
};
struct PluginsDisplayModelColumns : public Gtk::TreeModel::ColumnRecord {
- PluginsDisplayModelColumns() {
- add (name);
- add (plugin);
- }
- Gtk::TreeModelColumn<std::string> name;
- Gtk::TreeModelColumn<ARDOUR::PluginPresetPtr> plugin;
+ PluginsDisplayModelColumns() {
+ add (name);
+ add (plugin);
+ }
+ Gtk::TreeModelColumn<std::string> name;
+ Gtk::TreeModelColumn<ARDOUR::PluginPresetPtr> plugin;
};
ARDOUR::PluginInfoList favorite_order;
std::map<std::string, bool> favorite_ui_state;
- TrackDisplayModelColumns track_columns;
- GroupDisplayModelColumns group_columns;
- PluginsDisplayModelColumns favorite_plugins_columns;
+ StripableDisplayModelColumns stripable_columns;
+ GroupDisplayModelColumns group_columns;
+ PluginsDisplayModelColumns favorite_plugins_columns;
Gtk::TreeView track_display;
Gtk::TreeView group_display;