From 46e448252f74ce35f37a1a41bb3ebe0f0312cd5d Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Wed, 6 Jun 2012 11:47:09 +0000 Subject: Provide dialogs to edit pan values numerically, at least for mono and stereo panners. git-svn-id: svn://localhost/ardour2/branches/3.0@12577 d708f5d6-7413-0410-9779-e7cbd77b26cf --- gtk2_ardour/panner_interface.h | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) (limited to 'gtk2_ardour/panner_interface.h') diff --git a/gtk2_ardour/panner_interface.h b/gtk2_ardour/panner_interface.h index 167ea6d7be..8dd19d1a14 100644 --- a/gtk2_ardour/panner_interface.h +++ b/gtk2_ardour/panner_interface.h @@ -23,21 +23,30 @@ #include #include #include +#include "pbd/destructible.h" namespace ARDOUR { class Panner; } +class PannerEditor; + /** Parent class for some panner UI classes that contains some common code */ -class PannerInterface : public Gtk::DrawingArea +class PannerInterface : public Gtk::DrawingArea, public PBD::Destructible { public: PannerInterface (boost::shared_ptr); virtual ~PannerInterface (); + boost::shared_ptr panner () { + return _panner; + } + + void edit (); + protected: virtual void set_drag_data () = 0; - + void show_drag_data_window (); void hide_drag_data_window (); void value_change (); @@ -45,6 +54,8 @@ protected: bool on_enter_notify_event (GdkEventCrossing *); bool on_leave_notify_event (GdkEventCrossing *); bool on_key_release_event (GdkEventKey *); + bool on_button_press_event (GdkEventButton*); + bool on_button_release_event (GdkEventButton*); boost::shared_ptr _panner; Gtk::Window* _drag_data_window; @@ -54,6 +65,9 @@ protected: private: bool drag_data_timeout (); sigc::connection _drag_data_timeout; + + virtual PannerEditor* editor () = 0; + PannerEditor* _editor; }; #endif -- cgit v1.2.3