X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fmono_panner.h;h=5022e9b52d83573bd0f9200662dfb6b5c6703af0;hb=fc83d044f85872e55d7da02ff2a4bb6f8725714f;hp=4d5f1ffec0a64b7f547aca9cd6313ae0fc987812;hpb=25a6296f865620d5013cd634e693f7179e7edc84;p=ardour.git diff --git a/gtk2_ardour/mono_panner.h b/gtk2_ardour/mono_panner.h index 4d5f1ffec0..5022e9b52d 100644 --- a/gtk2_ardour/mono_panner.h +++ b/gtk2_ardour/mono_panner.h @@ -24,7 +24,7 @@ #include -#include "gtkmm2ext/binding_proxy.h" +#include "widgets/binding_proxy.h" #include "panner_interface.h" @@ -33,61 +33,66 @@ namespace ARDOUR { } namespace PBD { - class Controllable; + class Controllable; } class MonoPanner : public PannerInterface { - public: +public: MonoPanner (boost::shared_ptr); ~MonoPanner (); - boost::shared_ptr get_controllable() const { return position_control; } + boost::shared_ptr get_controllable() const { return position_control; } sigc::signal StartGesture; sigc::signal StopGesture; - protected: +protected: bool on_expose_event (GdkEventExpose*); bool on_button_press_event (GdkEventButton*); bool on_button_release_event (GdkEventButton*); bool on_motion_notify_event (GdkEventMotion*); - bool on_scroll_event (GdkEventScroll*); - bool on_key_press_event (GdkEventKey*); + bool on_scroll_event (GdkEventScroll*); + bool on_key_press_event (GdkEventKey*); - private: + boost::weak_ptr proxy_controllable () const + { + return boost::weak_ptr (position_binder.get_controllable()); + } + +private: PannerEditor* editor (); boost::shared_ptr _panner_shell; - - boost::shared_ptr position_control; - PBD::ScopedConnectionList panvalue_connections; - PBD::ScopedConnectionList panshell_connections; - int drag_start_x; - int last_drag_x; - double accumulated_delta; - bool detented; - - BindingProxy position_binder; - - void set_tooltip (); - - struct ColorScheme { - uint32_t outline; - uint32_t fill; - uint32_t text; - uint32_t background; - uint32_t pos_outline; - uint32_t pos_fill; - }; + + boost::shared_ptr position_control; + PBD::ScopedConnectionList panvalue_connections; + PBD::ScopedConnectionList panshell_connections; + int drag_start_x; + int last_drag_x; + double accumulated_delta; + bool detented; + + ArdourWidgets::BindingProxy position_binder; + + void set_tooltip (); + + struct ColorScheme { + uint32_t outline; + uint32_t fill; + uint32_t text; + uint32_t background; + uint32_t pos_outline; + uint32_t pos_fill; + }; bool _dragging; static Pango::AttrList panner_font_attributes; static bool have_font; - static ColorScheme colors; - static void set_colors (); - static bool have_colors; + static ColorScheme colors; + static void set_colors (); + static bool have_colors; void color_handler (); void bypass_handler (); void pannable_handler ();