libardour: change API of Session::request_locate() to include "force" argument (GUI edition)
This commit is contained in:
parent
cc2e6b3cf8
commit
e2e6274956
@ -1932,7 +1932,7 @@ ARDOUR_UI::toggle_roll (bool with_abort, bool roll_out_of_bounded_mode)
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (_session->get_play_loop() && Config->get_loop_is_mode()) {
|
if (_session->get_play_loop() && Config->get_loop_is_mode()) {
|
||||||
_session->request_locate (_session->locations()->auto_loop_location()->start().samples(), MustRoll);
|
_session->request_locate (_session->locations()->auto_loop_location()->start().samples(), false, MustRoll);
|
||||||
} else {
|
} else {
|
||||||
if (UIConfiguration::instance().get_follow_edits()) {
|
if (UIConfiguration::instance().get_follow_edits()) {
|
||||||
list<TimelineRange>& range = editor->get_selection().time;
|
list<TimelineRange>& range = editor->get_selection().time;
|
||||||
|
@ -1393,7 +1393,7 @@ Editor::set_session (Session *t)
|
|||||||
|
|
||||||
/* catch up with the playhead */
|
/* catch up with the playhead */
|
||||||
|
|
||||||
_session->request_locate (_playhead_cursor->current_sample (), MustStop);
|
_session->request_locate (_playhead_cursor->current_sample (), false, MustStop);
|
||||||
_pending_initial_locate = true;
|
_pending_initial_locate = true;
|
||||||
|
|
||||||
update_title ();
|
update_title ();
|
||||||
@ -4331,6 +4331,7 @@ Editor::get_grid_type_as_beats (bool& success, timepos_t const & position)
|
|||||||
return Temporal::Beats::from_double ((4.0 * m.divisions_per_bar()) / m.note_value());
|
return Temporal::Beats::from_double ((4.0 * m.divisions_per_bar()) / m.note_value());
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
#warning NUTEMPO need to implement all other subdivs
|
#warning NUTEMPO need to implement all other subdivs
|
||||||
success = false;
|
success = false;
|
||||||
|
@ -4187,7 +4187,7 @@ CursorDrag::finished (GdkEvent* event, bool movement_occurred)
|
|||||||
Session* s = _editor->session ();
|
Session* s = _editor->session ();
|
||||||
if (s) {
|
if (s) {
|
||||||
_editor->_pending_locate_request = true;
|
_editor->_pending_locate_request = true;
|
||||||
s->request_locate (_editor->playhead_cursor ()->current_sample (), _was_rolling ? MustRoll : RollIfAppropriate);
|
s->request_locate (_editor->playhead_cursor ()->current_sample (), false, _was_rolling ? MustRoll : RollIfAppropriate);
|
||||||
s->request_resume_timecode_transmission ();
|
s->request_resume_timecode_transmission ();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1315,15 +1315,15 @@ Editor::marker_menu_play_from ()
|
|||||||
if ((l = find_location_from_marker (marker, is_start)) != 0) {
|
if ((l = find_location_from_marker (marker, is_start)) != 0) {
|
||||||
|
|
||||||
if (l->is_mark()) {
|
if (l->is_mark()) {
|
||||||
_session->request_locate (l->start_sample(), MustRoll);
|
_session->request_locate (l->start_sample(), false, MustRoll);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
//_session->request_bounded_roll (l->start_sample(), l->end());
|
//_session->request_bounded_roll (l->start_sample(), l->end());
|
||||||
|
|
||||||
if (is_start) {
|
if (is_start) {
|
||||||
_session->request_locate (l->start_sample(), MustRoll);
|
_session->request_locate (l->start_sample(), false, MustRoll);
|
||||||
} else {
|
} else {
|
||||||
_session->request_locate (l->end_sample(), MustRoll);
|
_session->request_locate (l->end_sample(), false, MustRoll);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1345,13 +1345,13 @@ Editor::marker_menu_set_playhead ()
|
|||||||
if ((l = find_location_from_marker (marker, is_start)) != 0) {
|
if ((l = find_location_from_marker (marker, is_start)) != 0) {
|
||||||
|
|
||||||
if (l->is_mark()) {
|
if (l->is_mark()) {
|
||||||
_session->request_locate (l->start_sample(), MustStop);
|
_session->request_locate (l->start_sample(), false, MustStop);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
if (is_start) {
|
if (is_start) {
|
||||||
_session->request_locate (l->start_sample(), MustStop);
|
_session->request_locate (l->start_sample(), false, MustStop);
|
||||||
} else {
|
} else {
|
||||||
_session->request_locate (l->end_sample(), MustStop);
|
_session->request_locate (l->end_sample(), false, MustStop);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1496,7 +1496,7 @@ Editor::marker_menu_play_range ()
|
|||||||
if ((l = find_location_from_marker (marker, is_start)) != 0) {
|
if ((l = find_location_from_marker (marker, is_start)) != 0) {
|
||||||
|
|
||||||
if (l->is_mark()) {
|
if (l->is_mark()) {
|
||||||
_session->request_locate (l->start().samples(), MustRoll);
|
_session->request_locate (l->start().samples(), false, MustRoll);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
_session->request_bounded_roll (l->start().samples(), l->end().samples());
|
_session->request_bounded_roll (l->start().samples(), l->end().samples());
|
||||||
|
@ -1462,7 +1462,7 @@ Editor::button_press_handler (ArdourCanvas::Item* item, GdkEvent* event, ItemTyp
|
|||||||
|
|
||||||
timepos_t where (canvas_event_sample (event));
|
timepos_t where (canvas_event_sample (event));
|
||||||
snap_to (where);
|
snap_to (where);
|
||||||
_session->request_locate (where.samples(), MustStop);
|
_session->request_locate (where.samples(), false, MustStop);
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (event->button.button) {
|
switch (event->button.button) {
|
||||||
@ -2153,7 +2153,7 @@ Editor::scrub (samplepos_t sample, double current_x)
|
|||||||
|
|
||||||
if (scrubbing_direction == 0) {
|
if (scrubbing_direction == 0) {
|
||||||
/* first move */
|
/* first move */
|
||||||
_session->request_locate (sample, MustStop);
|
_session->request_locate (sample, false, MustStop);
|
||||||
_session->request_transport_speed (0.1);
|
_session->request_transport_speed (0.1);
|
||||||
scrubbing_direction = 1;
|
scrubbing_direction = 1;
|
||||||
|
|
||||||
|
@ -2697,13 +2697,13 @@ Editor::transition_to_rolling (bool fwd)
|
|||||||
void
|
void
|
||||||
Editor::play_from_start ()
|
Editor::play_from_start ()
|
||||||
{
|
{
|
||||||
_session->request_locate (_session->current_start_sample(), MustRoll);
|
_session->request_locate (_session->current_start_sample(), false, MustRoll);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
Editor::play_from_edit_point ()
|
Editor::play_from_edit_point ()
|
||||||
{
|
{
|
||||||
_session->request_locate (get_preferred_edit_position().samples(), MustRoll);
|
_session->request_locate (get_preferred_edit_position().samples(), false, MustRoll);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
@ -2715,7 +2715,7 @@ Editor::play_from_edit_point_and_return ()
|
|||||||
start_sample = get_preferred_edit_position (EDIT_IGNORE_PHEAD).samples();
|
start_sample = get_preferred_edit_position (EDIT_IGNORE_PHEAD).samples();
|
||||||
|
|
||||||
if (_session->transport_rolling()) {
|
if (_session->transport_rolling()) {
|
||||||
_session->request_locate (start_sample, MustStop);
|
_session->request_locate (start_sample, false, MustStop);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2801,7 +2801,7 @@ Editor::play_with_preroll ()
|
|||||||
} else {
|
} else {
|
||||||
start = 0;
|
start = 0;
|
||||||
}
|
}
|
||||||
_session->request_locate (start, MustRoll);
|
_session->request_locate (start, false, MustRoll);
|
||||||
_session->set_requested_return_sample (ph); //force auto-return to return to playhead location, without the preroll
|
_session->set_requested_return_sample (ph); //force auto-return to return to playhead location, without the preroll
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -2843,7 +2843,7 @@ Editor::loop_location (Location& location)
|
|||||||
tll->set (location.start(), location.end());
|
tll->set (location.start(), location.end());
|
||||||
|
|
||||||
// enable looping, reposition and start rolling
|
// enable looping, reposition and start rolling
|
||||||
_session->request_locate (tll->start().samples(), MustRoll);
|
_session->request_locate (tll->start().samples(), false, MustRoll);
|
||||||
_session->request_play_loop (true);
|
_session->request_play_loop (true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user