- Gtk::CList snapshot_display;
- Gtk::ScrolledWindow snapshot_display_scroller;
-
- void redisplay_snapshots();
- void session_state_saved (string);
-
- gint strip_button_release_event (GdkEventButton*, MixerStrip*);
+ struct TrackDisplayModelColumns : public Gtk::TreeModel::ColumnRecord {
+ TrackDisplayModelColumns () {
+ add (text);
+ add (visible);
+ add (route);
+ add (strip);
+ }
+ Gtk::TreeModelColumn<bool> visible;
+ Gtk::TreeModelColumn<Glib::ustring> text;
+ Gtk::TreeModelColumn<boost::shared_ptr<ARDOUR::Route> > route;
+ Gtk::TreeModelColumn<MixerStrip*> strip;
+ };
+
+ struct GroupDisplayModelColumns : public Gtk::TreeModel::ColumnRecord {
+ GroupDisplayModelColumns() {
+ add (active);
+ add (visible);
+ add (text);
+ add (group);
+ }
+ Gtk::TreeModelColumn<bool> active;
+ Gtk::TreeModelColumn<bool> visible;
+ Gtk::TreeModelColumn<Glib::ustring> text;
+ Gtk::TreeModelColumn<ARDOUR::RouteGroup*> group;
+ };
+
+ TrackDisplayModelColumns track_columns;
+ GroupDisplayModelColumns group_columns;
+
+ Gtk::TreeView track_display;
+ Gtk::TreeView group_display;
+
+ Glib::RefPtr<Gtk::ListStore> track_model;
+ Glib::RefPtr<Gtk::ListStore> group_model;
+
+ bool group_display_button_press (GdkEventButton*);
+ void group_display_selection_changed ();
+
+ bool strip_button_release_event (GdkEventButton*, MixerStrip*);