mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-07 15:25:01 +01:00
make new (ramped) tempi indidstiguishable from constant to the novice user.
- stretch drag (using shift on the curve) operates on the true meaning of constant. in other words, the only way you can make a tempo ramped is by adjusting the end tempo (shift drag on the *next* mark). from this point onwards. shift-drag the curve will change the start tempo and ctrl-drag the curve will change the end (needs work). to reset the curve to constant, 'make constant' should simply set the end tempo (unimplemented).
This commit is contained in:
parent
8b1baa2406
commit
959f76c843
1 changed files with 5 additions and 2 deletions
|
|
@ -3483,7 +3483,10 @@ TempoMap::gui_stretch_tempo (TempoSection* ts, const framepos_t frame, const fra
|
|||
goto out;
|
||||
}
|
||||
|
||||
if (prev_t && prev_t->type() == TempoSection::Ramp) {
|
||||
/* this should be everywhere. no _type because type() is constant if note_types_per_minute() == end_types_per_minute()
|
||||
but what to do with legact sessions?
|
||||
*/
|
||||
if (prev_t && prev_t->note_types_per_minute() != prev_t->end_note_types_per_minute()) {
|
||||
prev_t->set_note_types_per_minute (new_bpm);
|
||||
} else {
|
||||
prev_t->set_end_note_types_per_minute (new_bpm);
|
||||
|
|
@ -3494,7 +3497,7 @@ TempoMap::gui_stretch_tempo (TempoSection* ts, const framepos_t frame, const fra
|
|||
recompute_meters (future_map);
|
||||
|
||||
if (check_solved (future_map)) {
|
||||
if (prev_t && prev_t->type() == TempoSection::Ramp) {
|
||||
if (prev_t && prev_t->note_types_per_minute() != prev_t->end_note_types_per_minute()) {
|
||||
ts->set_note_types_per_minute (new_bpm);
|
||||
} else {
|
||||
ts->set_end_note_types_per_minute (new_bpm);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue