Age | Commit message (Collapse) | Author |
|
this simplifies lua-bindings and also let's the compiler worry about
constant primitive types.
|
|
- 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.
|
|
|
|
audio basis for non-musical snap.
|
|
constraint modifier dilates previous tempo.
|
|
|
|
|
|
|
|
This functor/closure is responsible for stealing focus from any existing text entry (or whatever else may have focus)
when clicking on a CairoWidget or derived class.
The old implementation just gave focus back to the editor canvas. The new version walks up the widget packing
heirarchy to find a focusable parent (from the CairoWidget for which it is invoked). If no focusable parent
is found, it cancels keyboard focus in the toplevel window containing the CairoWidget
|
|
|
|
|
|
|
|
lookup from binding definition
We need this because we need binding information/objects before all
Actions have been defined.
|
|
|
|
We don't need this functionality anymore as we build on 15 years experience plus the new tabbed structure
|
|
|
|
I would have loved to split this apart, but there are just so many interrelated changes,
it makes little sense and would be a huge effort that would break future git bisect
use because so many intermediate commits would not compile
|
|
|
|
|
|
Paul Davis was responsible for introducing almost all of this.
|
|
|
|
Classes are in the global namespace.
OSX has a flat namespace and OSX32bit/Carbon has a Marker too.
|
|
more RAII)
|
|
- also clean up, rename and comment some previous hanges.
|
|
- remove "no_magnets" ugh.
|
|
Disabled/enabled with the shift key. no config stuff at all now.
Move existing (strange) trim feature to primary + tertiary modifiers.
|
|
|
|
|
|
preferred_edit_location what to ignore, so cut and insert dialogs will never use mouse location.
|
|
|
|
Still requires a way to make this work correctly from the mixer window
|
|
|
|
* migrate dialog from Editor to UI.
* make it a WM proxied window
* prepare applying state after construction..
|
|
Remove the is_xrun parameter from Editor::mouse_add_new_marker(), and just
create the marker directly in ARDOUR_UI::create_xrun_marker(), so that xrun
markers don't become automatically selected when they appear.
|
|
Add 'Edit Tempo/Meter' and 'Insert Tempo/Meter Change' to the main clock's
context menu.
|
|
|
|
Achieve this by adding a new hscroll group just for cursors.
That requires a slightly smarter window_to_canvas() to deal with overlapping
sensitive scroll groups. New rule is that scroll groups can overlap, but the
most sensitive one found from the top down will be chosen to translate
coordinates. This basically means don't overlap scroll groups with different
sensitivities.
In the presence of scroll groups, having a canvas-wide window_to_canvas()
and/or canvas_to_window() fundamentally makes no sense. At some point in the
glorious future we should kill those and use only item-relative coordinate
translation.
|
|
|
|
Fix several other cases where a single mouse click could cause several
(not nested) selection ops.
Fix missing selection memento for midi notes and midi commands.
Rename some variables.
Fix random style issues.
|
|
|
|
|
|
|
|
|
|
Idea here is for importing large multi-track MIDI files to be immediately
listenable upon play without tediously adding a ton of instrument plugins
manually.
|
|
|
|
|
|
combines selection related editor properties with the current editor selection.
The related editor properties are:
mouse mode,
zoom setting,
left frame of the canvas,
y origin of the canvas.
Selection state now includes region views (storing the underlying region id)
and time.
This patch also fixes a region mute undo bug.
|
|
No functional changes in this one (for easier auditing), but towards having
round up/down only if necessary modes, rather than kludging around that
situation with a double round as we do currently.
|
|
The idea here is that pasting several times to the same location doesn't make
sense. Instead, the paste is appended past the last paste, snapped to the
grid. This make it simple to replicate a given section a number of times,
simply by copying once and pasting several times.
This behaviour only appears when successive pastes are done to the same
location (whatever the edit point is). When the paste point changes, the
"multi-paste" state is reset.
Boots 'n cats 'n boots 'n cats.
|
|
|