GUI update: migrate group-color into the session (not GUI state)
[ardour.git] / gtk2_ardour / control_slave_ui.h
index 1ce35720ec49c5895de4bb47131493b30f594b96..0c8de7a9728ba66b3a998e5ada4d278ff532257e 100644 (file)
@@ -27,6 +27,7 @@
 #include <gtkmm/checkmenuitem.h>
 
 #include "pbd/signals.h"
+#include "pbd/properties.h"
 
 #include "ardour/session_handle.h"
 
@@ -42,13 +43,16 @@ class ControlSlaveUI : public Gtk::HBox, public ARDOUR::SessionHandlePtr
 {
    public:
        ControlSlaveUI (ARDOUR::Session*);
+       ~ControlSlaveUI ();
        void set_stripable (boost::shared_ptr<ARDOUR::Stripable>);
 
    private:
        boost::shared_ptr<ARDOUR::Stripable> stripable;
        PBD::ScopedConnectionList connections;
+       PBD::ScopedConnectionList master_connections;
        ArdourButton  initial_button;
 
+       void master_property_changed (PBD::PropertyChange const &);
        void update_vca_display ();
        void vca_menu_toggle (Gtk::CheckMenuItem*, uint32_t n);
        bool specific_vca_button_release (GdkEventButton* ev, uint32_t n);
@@ -56,6 +60,8 @@ class ControlSlaveUI : public Gtk::HBox, public ARDOUR::SessionHandlePtr
        bool vca_button_release (GdkEventButton* ev, uint32_t n);
        void add_vca_button (boost::shared_ptr<ARDOUR::VCA>);
        void unassign_all ();
+
+       Gtk::Menu* context_menu;
 };
 
 #endif /* __gtk2_ardour_control_slave_ui_h__ */