reasonable dB range for waveform clipping indicator
[ardour.git] / gtk2_ardour / automation_time_axis.h
index d883b189c0f67417fef14eba49572406cc3e927b..a468c12459a7962d8197be5f4d040f72761719b7 100644 (file)
 #include "ardour/automatable.h"
 #include "ardour/automation_list.h"
 
-#include "canvas.h"
+#include "canvas/rectangle.h"
+
 #include "time_axis_view.h"
-#include "simplerect.h"
 #include "automation_controller.h"
+#include "ardour_button.h"
 
 namespace ARDOUR {
        class Session;
@@ -69,10 +70,10 @@ class AutomationTimeAxisView : public TimeAxisView {
        ~AutomationTimeAxisView();
 
        virtual void set_height (uint32_t);
-       void set_samples_per_unit (double);
+       void set_samples_per_pixel (double);
        std::string name() const { return _name; }
 
-       void add_automation_event (GdkEvent *, framepos_t, double);
+        void add_automation_event (GdkEvent *, framepos_t, double, bool with_guard_points);
 
        void clear_lines ();
 
@@ -86,7 +87,7 @@ class AutomationTimeAxisView : public TimeAxisView {
        void get_selectables (ARDOUR::framepos_t start, ARDOUR::framepos_t end, double top, double bot, std::list<Selectable *>&);
        void get_inverted_selectables (Selection&, std::list<Selectable*>& results);
 
-       void show_timestretch (framepos_t /*start*/, framepos_t /*end*/) {}
+       void show_timestretch (framepos_t /*start*/, framepos_t /*end*/, int /*layers*/, int /*layer*/) {}
        void hide_timestretch () {}
 
        /* editing operations */
@@ -132,19 +133,19 @@ class AutomationTimeAxisView : public TimeAxisView {
        boost::shared_ptr<AutomationController> _controller;
        Evoral::Parameter _parameter;
 
-       ArdourCanvas::SimpleRect* _base_rect;
+       ArdourCanvas::Rectangle* _base_rect;
        boost::shared_ptr<AutomationLine> _line;
 
+       std::string _name;
+
        /** AutomationStreamView if we are editing region-based automation (for MIDI), otherwise 0 */
        AutomationStreamView* _view;
 
-       std::string _name;
        bool    ignore_toggle;
-
        bool    first_call_to_set_height;
 
-       Gtk::Button        hide_button;
-       Gtk::Button        auto_button;
+       ArdourButton       hide_button;
+       ArdourButton       auto_button;
        Gtk::Menu*         automation_menu;
        Gtk::Label*        plugname;
        bool               plugname_packed;
@@ -165,6 +166,8 @@ class AutomationTimeAxisView : public TimeAxisView {
        void hide_clicked ();
        void auto_clicked ();
 
+       virtual bool can_edit_name() const {return false;}
+
        void build_display_menu ();
 
        void cut_copy_clear_one (AutomationLine&, Selection&, Editing::CutCopyOp);