fix load+save of plugin parameter automation
[ardour.git] / gtk2_ardour / public_editor.h
index bb498a8c4f4eff0c6f89b04697a6cce54911ad5d..a393b11e4c0df1298f22b8d90817f9506d0b85b8 100644 (file)
@@ -79,6 +79,7 @@ class MarkerTimeAxis;
 class ImageFrameView;
 class ImageFrameTimeAxis;
 class MarkerView;
+class DragManager;
 
 /// Representation of the interface of the Editor class
 
@@ -242,7 +243,6 @@ class PublicEditor : public Gtk::Window, public PBD::StatefulDestructible {
 
        /** @return true if the playhead is currently being dragged, otherwise false */
        virtual bool dragging_playhead () const = 0;
-       virtual double get_physical_screen_width() const = 0;
        virtual void ensure_float (Gtk::Window&) = 0;
        virtual void show_window () = 0;
        virtual nframes64_t leftmost_position() const = 0;
@@ -273,7 +273,7 @@ class PublicEditor : public Gtk::Window, public PBD::StatefulDestructible {
        virtual TimeAxisView* get_named_time_axis(const std::string & name)  = 0;
 #endif
 
-       virtual RouteTimeAxisView* get_route_view_by_id (PBD::ID& id) = 0;
+       virtual RouteTimeAxisView* get_route_view_by_route_id (PBD::ID& id) const = 0;
 
        virtual void get_equivalent_regions (RegionView* rv, std::vector<RegionView*>&, PBD::PropertyID) const = 0;
 
@@ -303,6 +303,7 @@ class PublicEditor : public Gtk::Window, public PBD::StatefulDestructible {
        virtual bool canvas_frame_handle_event (GdkEvent* event, ArdourCanvas::Item*, RegionView*) = 0;
        virtual bool canvas_region_view_name_highlight_event (GdkEvent* event, ArdourCanvas::Item*, RegionView*) = 0;
        virtual bool canvas_region_view_name_event (GdkEvent* event, ArdourCanvas::Item*, RegionView*) = 0;
+       virtual bool canvas_feature_line_event (GdkEvent* event, ArdourCanvas::Item*, RegionView*) = 0;
        virtual bool canvas_stream_view_event (GdkEvent* event, ArdourCanvas::Item*, RouteTimeAxisView*) = 0;
        virtual bool canvas_marker_event (GdkEvent* event, ArdourCanvas::Item*, Marker*) = 0;
        virtual bool canvas_zoom_rect_event (GdkEvent* event, ArdourCanvas::Item*) = 0;
@@ -360,6 +361,10 @@ class PublicEditor : public Gtk::Window, public PBD::StatefulDestructible {
        virtual Gtkmm2ext::TearOff* mouse_mode_tearoff () const = 0;
        virtual Gtkmm2ext::TearOff* tools_tearoff () const = 0;
 
+       virtual DragManager* drags () const = 0;
+       virtual void maybe_autoscroll (bool, bool) = 0;
+       virtual void stop_canvas_autoscroll () = 0;
+
        /// Singleton instance, set up by Editor::Editor()
 
        static PublicEditor* _instance;