X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Feditor_routes.h;h=fbbfafe54d319b80c9a8711a09189f28868648c7;hb=4d80bdad7d88a52d6ada2c9b0e62761afa51a741;hp=e2e9f0110e3d2679aee2b1cf5f0d4e06ad9dce8e;hpb=515d19c74519599c53d6fc85c1af2647f390d95f;p=ardour.git diff --git a/gtk2_ardour/editor_routes.h b/gtk2_ardour/editor_routes.h index e2e9f0110e..fbbfafe54d 100644 --- a/gtk2_ardour/editor_routes.h +++ b/gtk2_ardour/editor_routes.h @@ -17,12 +17,18 @@ */ -class EditorRoutes : public EditorComponent +#ifndef __ardour_gtk_editor_route_h__ +#define __ardour_gtk_editor_route_h__ + +#include "pbd/signals.h" +#include "editor_component.h" + +class EditorRoutes : public EditorComponent, public PBD::ScopedConnectionList { public: EditorRoutes (Editor *); - void connect_to_session (ARDOUR::Session *); + void set_session (ARDOUR::Session *); Gtk::Widget& widget () { return _scroller; @@ -43,6 +49,7 @@ public: void redisplay (); void update_visibility (); void routes_added (std::list routes); + void route_removed (TimeAxisView *); void hide_track_in_display (TimeAxisView &); std::list views () const; void hide_all_tracks (bool); @@ -55,26 +62,31 @@ private: void on_tv_rec_enable_toggled (Glib::ustring const &); void on_tv_mute_enable_toggled (Glib::ustring const &); void on_tv_solo_enable_toggled (Glib::ustring const &); + void on_tv_solo_isolate_toggled (Glib::ustring const &); + void on_tv_solo_safe_toggled (Glib::ustring const &); void build_menu (); void show_menu (); void route_deleted (Gtk::TreeModel::Path const &); - void changed (Gtk::TreeModel::Path const &, Gtk::TreeModel::iterator const &); + void visible_changed (Glib::ustring const &); void reordered (Gtk::TreeModel::Path const &, Gtk::TreeModel::iterator const &, int *); bool button_press (GdkEventButton *); - void route_name_changed (boost::weak_ptr); - void route_removed (TimeAxisView *); + void route_property_changed (const PBD::PropertyChange&, boost::weak_ptr); void handle_gui_changes (std::string const &, void *); void update_rec_display (); - void update_mute_display (void* /*src*/); - void update_solo_display (void* /*src*/); + void update_mute_display (); + void update_solo_display (bool); + void update_solo_isolate_display (); + void update_solo_safe_display (); void set_all_tracks_visibility (bool); - void set_all_audio_visibility (int, bool); + void set_all_audio_midi_visibility (int, bool); void show_all_routes (); void hide_all_routes (); void show_all_audiotracks (); void hide_all_audiotracks (); void show_all_audiobus (); void hide_all_audiobus (); + void show_all_miditracks (); + void hide_all_miditracks (); void show_tracks_with_regions_at_playhead (); void display_drag_data_received ( @@ -93,6 +105,8 @@ private: add (rec_enabled); add (mute_state); add (solo_state); + add (solo_isolate_state); + add (solo_safe_state); add (is_track); add (tv); add (route); @@ -104,6 +118,8 @@ private: Gtk::TreeModelColumn rec_enabled; Gtk::TreeModelColumn mute_state; Gtk::TreeModelColumn solo_state; + Gtk::TreeModelColumn solo_isolate_state; + Gtk::TreeModelColumn solo_safe_state; Gtk::TreeModelColumn is_track; Gtk::TreeModelColumn tv; Gtk::TreeModelColumn > route; @@ -122,3 +138,5 @@ private: Gtk::Menu* _menu; }; + +#endif /* __ardour_gtk_editor_route_h__ */