class ImageFrameView;
class ImageFrameTimeAxis;
class MarkerView;
+class DragManager;
/// Representation of the interface of the Editor class
/** @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;
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;
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;
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;