Changes to Editor::visual_changer to support Item/Canvas::prepare_for_render
[ardour.git] / gtk2_ardour / automation_controller.h
index 126383d517f22eee25c7dc7be7990f11f03b2327..170e49ae0776451962617a95bff946128972d8a0 100644 (file)
@@ -39,26 +39,22 @@ namespace ARDOUR {
        class Session;
        class AutomationList;
        class AutomationControl;
-       class Automatable;
 }
 
 class AutomationBarController : public Gtkmm2ext::BarController {
 public:
-       AutomationBarController(boost::shared_ptr<ARDOUR::Automatable>       printer,
-                               boost::shared_ptr<ARDOUR::AutomationControl> ac,
+       AutomationBarController(boost::shared_ptr<ARDOUR::AutomationControl> ac,
                                Gtk::Adjustment*                             adj);
        ~AutomationBarController();
 private:
        std::string get_label (double&);
-       boost::shared_ptr<ARDOUR::Automatable>       _printer;
        boost::shared_ptr<ARDOUR::AutomationControl> _controllable;
 };
 
 /** A BarController which displays the value and allows control of an AutomationControl */
 class AutomationController : public Gtk::Alignment {
 public:
-       static boost::shared_ptr<AutomationController> create(
-               boost::shared_ptr<ARDOUR::Automatable>       parent,
+       static boost::shared_ptr<AutomationController> create (
                const Evoral::Parameter&                     param,
                const ARDOUR::ParameterDescriptor&           desc,
                boost::shared_ptr<ARDOUR::AutomationControl> ac,
@@ -79,14 +75,14 @@ public:
        void stop_updating ();
 
 private:
-       AutomationController (boost::shared_ptr<ARDOUR::Automatable>       printer,
-                             boost::shared_ptr<ARDOUR::AutomationControl> ac,
+       AutomationController (boost::shared_ptr<ARDOUR::AutomationControl> ac,
                              Gtk::Adjustment*                             adj,
                              bool                                         use_knob);
 
        void start_touch();
        void end_touch();
-       void toggled();
+       bool button_press(GdkEventButton*);
+       bool button_release(GdkEventButton*);
 
        void run_note_select_dialog();
        void set_ratio(double ratio);
@@ -94,7 +90,6 @@ private:
        bool on_button_release(GdkEventButton* ev);
 
        Gtk::Widget*                                 _widget;
-       boost::shared_ptr<ARDOUR::Automatable>       _printer;
        boost::shared_ptr<ARDOUR::AutomationControl> _controllable;
        Gtk::Adjustment*                             _adjustment;
        sigc::connection                             _screen_update_connection;