X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fpanner_ui.h;h=6be92f9c5a13356a4310e8abcffb58421273c166;hb=3705a2d6307cf443acbf8419b0e0f560591f2016;hp=76589782331ea7e4f53ff063291ae765e2117f93;hpb=cc2767caf32486365a33814149e75c6e588e8603;p=ardour.git diff --git a/gtk2_ardour/panner_ui.h b/gtk2_ardour/panner_ui.h index 7658978233..6be92f9c5a 100644 --- a/gtk2_ardour/panner_ui.h +++ b/gtk2_ardour/panner_ui.h @@ -15,7 +15,6 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id$ */ #ifndef __ardour_gtk_panner_ui_h__ @@ -37,6 +36,8 @@ #include "enums.h" class Panner2d; +class PannerBar; +class Panner2dWindow; namespace ARDOUR { class IO; @@ -44,7 +45,6 @@ namespace ARDOUR { } namespace Gtkmm2ext { class FastMeter; - class BarController; } namespace Gtk { @@ -55,9 +55,11 @@ namespace Gtk { class PannerUI : public Gtk::HBox { public: - PannerUI (boost::shared_ptr, ARDOUR::Session&); + PannerUI (ARDOUR::Session&); ~PannerUI (); + virtual void set_io (boost::shared_ptr); + void pan_changed (void *); void update_pan_sensitive (); @@ -69,16 +71,22 @@ class PannerUI : public Gtk::HBox void effective_pan_display (); void set_meter_strip_name (string name); + boost::shared_ptr get_controllable(); private: friend class MixerStrip; + boost::shared_ptr _io; ARDOUR::Session& _session; + std::vector connections; bool ignore_toggle; bool in_pan_update; - Panner2d* panner; + static const int pan_bar_height; + + Panner2d* panner; + Panner2dWindow* big_window; Gtk::VBox pan_bar_packer; Gtk::Adjustment hAdjustment; @@ -98,8 +106,8 @@ class PannerUI : public Gtk::HBox bool panning_link_button_press (GdkEventButton*); bool panning_link_button_release (GdkEventButton*); - Gtk::Menu pan_astate_menu; - Gtk::Menu pan_astyle_menu; + Gtk::Menu* pan_astate_menu; + Gtk::Menu* pan_astyle_menu; Gtk::Button pan_automation_style_button; Gtk::ToggleButton pan_automation_state_button; @@ -107,7 +115,7 @@ class PannerUI : public Gtk::HBox void panning_link_direction_clicked (); vector pan_adjustments; - vector pan_bars; + vector pan_bars; void pan_adjustment_changed (uint32_t which); void pan_value_changed (uint32_t which); @@ -115,6 +123,8 @@ class PannerUI : public Gtk::HBox void update_pan_bars (bool only_if_aplay); void update_pan_linkage (); void update_pan_state (); + void build_astate_menu (); + void build_astyle_menu (); void panner_changed ();