class RegionView;
class RouteTimeAxisView;
class Selection;
+class TempoCurve;
class TempoMarker;
class TimeAxisView;
class TimeAxisViewItem;
virtual void set_show_measures (bool yn) = 0;
virtual bool show_measures () const = 0;
virtual void remove_tracks () = 0;
+ virtual void set_loop_range (framepos_t start, framepos_t end, std::string cmd) = 0;
+ virtual void set_punch_range (framepos_t start, framepos_t end, std::string cmd) = 0;
virtual Editing::MouseMode effective_mouse_mode () const = 0;
virtual framecnt_t get_paste_offset (framepos_t pos, unsigned paste_count, framecnt_t duration) = 0;
virtual unsigned get_grid_beat_divisions(framepos_t position) = 0;
virtual Evoral::Beats get_grid_type_as_beats (bool& success, framepos_t position) = 0;
+ virtual unsigned get_grid_music_divisions (uint32_t event_state) = 0;
virtual void edit_notes (MidiRegionView*) = 0;
virtual void queue_visual_videotimeline_update () = 0;
virtual bool canvas_marker_event (GdkEvent* event, ArdourCanvas::Item*, ArdourMarker*) = 0;
virtual bool canvas_videotl_bar_event (GdkEvent* event, ArdourCanvas::Item*) = 0;
virtual bool canvas_tempo_marker_event (GdkEvent* event, ArdourCanvas::Item*, TempoMarker*) = 0;
+ virtual bool canvas_tempo_curve_event (GdkEvent* event, ArdourCanvas::Item*, TempoCurve*) = 0;
virtual bool canvas_meter_marker_event (GdkEvent* event, ArdourCanvas::Item*, MeterMarker*) = 0;
virtual bool canvas_automation_track_event(GdkEvent* event, ArdourCanvas::Item*, AutomationTimeAxisView*) = 0;