Age | Commit message (Collapse) | Author |
|
- a tempo marker may now be set to always continue (clamped)
this means that the end tempo of the previous section will
track the start tempo during tempo ops.
it mimics the behaviour in 5.8, with the gui indicating
the curves to be changed.
|
|
|
|
- this is the opposite of 'Ramp to Next'.
it removes discontinuities between the
last end tempo and the current by altering the current one.
|
|
|
|
|
|
Editor::track_selection_changed() is now invoked by EditorRoutes::sync_treeview_from_presentation_info(),
AFTER the Selection has been updated
|
|
and s/get// in the old API for consistency.
|
|
|
|
|
|
|
|
|
|
operate on; use this in Editor::sensitize_the_right_region_actions()
There are still problems because actions like trim_front()
that use the edit point get the edit point with different
results than the code that sensitizes actions
|
|
|
|
|
|
snap now fills in a struct (MusicFrame) which contins a snapped frame
along with a music divisor.
this gives useful information wrt magnetic snap which may or may not
have rounded to an exact musical position.
region position may now be set musically (using quarter notes for now).
this patch fixes several problems in the current code:
- dragging a list of music-locked regions now maintains correct
musical offsets within the list.
- splitting regions using magnetic snap works correctly (#7192)
- cut drag should now work correctly with magnetic snap.
- musical length of split midi regions is no longer frame based.
|
|
|
|
PresentationInfo::Change more correctly; make Selection a bit smarter when setting track selection
|
|
|
|
|
|
|
|
|
|
|
|
This allows common keyboard shortcuts from any Tab (Editor, Mixer).
Discuss: should those actions/methods also be moved to ArdourUI instead of
PublicEditor?
|
|
|
|
bars and beats.
|
|
|
|
* "Follow Edits" button had several behaviors that confused users.
* "Follow Range" only has 2 behaviors:
** Click anywhere in Range mode (or Smart mode) to locate the playhead.
** When you select a Range, "Play" will play the selected range.
|
|
|
|
* Remove some redundant containers and frames, for a cleaner look.
* Adjust transport button spacing and sizes to more closely match the editor toolbar.
|
|
|
|
|
|
Still with debug output
|
|
during import
|
|
names during import
|
|
Currently implemented for Region and Range selections.
The new option is false/off by default to maintain existing behaviour. I'm not
sure it should require another option, perhaps Zoom to Selection should be the
default and accessing the region properties dialog can be via Modifier+double
click, but further changes can be made on user feedback etc.
Related: #7112
|
|
Add Zoom to Selection (Horizontal) action to access previous behavior.
Remove Editor::temporal_zoom_region as it was duplicate code and broken for
both_axes
Should Resolve: #7112
|
|
|
|
|
|
|
|
|
|
This is a common operation used for zooming in other DAWs like Ableton Live and
Cubase. To support such a usage pattern without changing the existing behaviour
of the ruler area I've made it an option that is false by default.
The behaviour of RulerDragZoom is intentionally different than a CursorDrag
that occurs in the rest of the ruler area in that it doesn't follow the snap to
grid setting and no locate related stuff occurs until button release.
There are some issues with responsiveness with more than a few hundred regions
or a large amount of MIDI events/notes.
Implements feature #6768
|
|
the zoom
|
|
- when the timeline displays many bars, zoom/autoscroll
speed is improved by calculating the bbt ruler scale first
then requesting a suitably scaled grid.
|
|
|
|
|
|
Consecutive execution (e.g. from a control surface button) engages punch in, then punch out, then clears both.
Patch by Nathan Stewart
|
|
|
|
this simplifies lua-bindings and also let's the compiler worry about
constant primitive types.
|
|
ctor.
|
|
- for those not in the know, this series provides a way to
remove the temporal distortion introduced when using an
audio frame-based gui for music-locked objects.
In short, the gui uses an audio frame representation to move
objects. It displays the object using frame_at_beat(), quantizing
the time value to audio frames. This is fine until the user selects
that frame but expects it to be interpreted as a beat.
Thus beat_at_frame() would not produce the user-expected beat
(temporal quantization error of up to 0.5 audio samples).
This is one method of mapping audio time to music time accurately.
|