diff options
author | Carl Hetherington <carl@carlh.net> | 2012-06-06 11:47:09 +0000 |
---|---|---|
committer | Carl Hetherington <carl@carlh.net> | 2012-06-06 11:47:09 +0000 |
commit | 46e448252f74ce35f37a1a41bb3ebe0f0312cd5d (patch) | |
tree | 727768ad3569c3e4becb9694e93fbf6f1b909691 /gtk2_ardour/panner_interface.h | |
parent | 31f94b9b048f55b06b7de8fa0b8612b0fa2ea274 (diff) |
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
Diffstat (limited to 'gtk2_ardour/panner_interface.h')
-rw-r--r-- | gtk2_ardour/panner_interface.h | 18 |
1 files changed, 16 insertions, 2 deletions
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 <boost/shared_ptr.hpp> #include <gtkmm/drawingarea.h> #include <gtkmm/label.h> +#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<ARDOUR::Panner>); virtual ~PannerInterface (); + boost::shared_ptr<ARDOUR::Panner> 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<ARDOUR::Panner> _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 |