13
0

Start step entry at playhead.

This commit is contained in:
David Robillard 2015-01-07 20:46:21 -05:00
parent 4fd3adda01
commit 2eef0612b9
4 changed files with 10 additions and 6 deletions

View File

@ -4611,7 +4611,7 @@ Editor::sort_track_selection (TrackViewList& sel)
}
framepos_t
Editor::get_preferred_edit_position (bool ignore_playhead, bool from_context_menu)
Editor::get_preferred_edit_position (bool ignore_playhead, bool from_context_menu, bool from_outside_canvas)
{
bool ignored;
framepos_t where = 0;
@ -4620,8 +4620,10 @@ Editor::get_preferred_edit_position (bool ignore_playhead, bool from_context_men
if(Profile->get_mixbus())
if (ep == EditAtSelectedMarker)
ep=EditAtPlayhead;
if (from_context_menu && (ep == EditAtMouse)) {
if (from_outside_canvas && (ep == EditAtMouse)) {
ep = EditAtPlayhead;
} else if (from_context_menu && (ep == EditAtMouse)) {
return canvas_event_sample (&context_click_event, 0, 0);
}

View File

@ -382,7 +382,9 @@ class Editor : public PublicEditor, public PBD::ScopedConnectionList, public ARD
void reset_zoom (framecnt_t);
void reposition_and_zoom (framepos_t, double);
framepos_t get_preferred_edit_position (bool ignore_playhead = false, bool use_context_click = false);
framepos_t get_preferred_edit_position (bool ignore_playhead = false,
bool use_context_click = false,
bool from_outside_canvas = false);
bool update_mouse_speed ();
bool decelerate_mouse_speed ();

View File

@ -280,7 +280,7 @@ class PublicEditor : public Gtk::Window, public PBD::StatefulDestructible, publi
virtual void restore_editing_space () = 0;
virtual void update_tearoff_visibility () = 0;
virtual void reattach_all_tearoffs () = 0;
virtual framepos_t get_preferred_edit_position (bool ignore_playhead = false, bool from_context_menu = false) = 0;
virtual framepos_t get_preferred_edit_position (bool ignore_playhead = false, bool from_context_menu = false, bool from_outside_canvas = false) = 0;
virtual void toggle_meter_updating() = 0;
virtual void split_regions_at (framepos_t, RegionSelection&) = 0;
virtual void split_region_at_points (boost::shared_ptr<ARDOUR::Region>, ARDOUR::AnalysisFeatureList&, bool can_ferret, bool select_new = false) = 0;

View File

@ -88,7 +88,7 @@ StepEditor::start_step_editing ()
void
StepEditor::resync_step_edit_position ()
{
step_edit_insert_position = _editor.get_preferred_edit_position ();
step_edit_insert_position = _editor.get_preferred_edit_position (false, false, true);
}
void