Commit Graph

16583 Commits

Author SHA1 Message Date
b8af596a92 update all marker positions after a tempo map change 2023-07-15 11:08:45 -06:00
460266de13 NOOP: whitespace fix 2023-07-15 11:08:45 -06:00
John Emmas
35c04d0ee7 Add a missing namespace specifier 2023-07-15 12:55:30 +01:00
509efdb290 temporal: refactor ::get_grid() for performance reasons
the API now provides the option to call ::get_grid() with an iterator which may
be re-used on subsequent calls. This avoids unbounded O(N) "walks" from the
marker preceding the start point of the grid to the start point.

This commit also includes "fast-path" code for the common case of a single
tempo and single meter
2023-07-14 13:03:36 -06:00
ae5755dbe5 do not mark sections of menu/action paths as translatable, since they are not 2023-07-14 13:03:36 -06:00
ed869da97e reserve space for tempo map grid (GUI side) 2023-07-14 13:03:36 -06:00
f41505a8c6 add Editor::count_bars() after removing it from libtemporal 2023-07-14 13:03:36 -06:00
df52c39ce0 freehand line drawing: automation & velocity share the same basic code 2023-07-14 13:03:26 -06:00
2c48aabe08
Handle race condition when removing route before routeUI
This fixes a crash when removing the monitor section.
The monitor route goes away, but the GUI remains. The
IOButton may still process previously queued
cross-thread signals.

In many cases this was not an issue since the route's
memory was not immediately released or shared_ptr
destruction only happened a short time later.
2023-07-14 19:03:32 +02:00
bedab69338
Pin Dialog: hide send polarity invert 2023-07-14 16:59:54 +02:00
8145e92b43
Clarify Control point edit dialog messages, add tooltip 2023-07-11 01:16:58 +02:00
4c8b414fb6
Allow to numeric ctrl point edit to apply to all selected points 2023-07-11 00:53:48 +02:00
ac68fcb880 automation drawing: fix right-to-left free drawing 2023-07-10 14:39:23 -06:00
f6f1f3393d automation drawing: fatter line 2023-07-10 14:38:58 -06:00
d12aa315fc automation drawn: ensure the right-to-left drawn lines are ordered correctly 2023-07-10 14:23:39 -06:00
9d5b6a78d5 automation drawing: better line color 2023-07-10 14:16:59 -06:00
25d17e857f when free-drawing straight lines, allow retrograde motion 2023-07-10 13:42:25 -06:00
57167dafbe use configurable thinning factor, not a hard-coded constant 2023-07-10 13:42:06 -06:00
67d9fa885a use mid-drag key events to allow Alt to force a line break 2023-07-10 12:22:16 -06:00
a14c534d16 dragging: add possibility of handling key events mid-drag
Currently only called from a canvas automation track event handler.
2023-07-10 12:21:27 -06:00
6453049c0a automation drawing: add point at grab start & use new ControlList API for speed 2023-07-10 11:20:47 -06:00
7f653de3e2 automation drawing: don't draw staircases when there are no staircases 2023-07-09 22:14:38 -06:00
c584bfd374 automation drawing: thinning does not work well with snapped-drawn lines
Also, adding points to a ControlList can fail and that's OK
2023-07-09 22:10:18 -06:00
caa278ae55 fix reverse drags and a compiler warning
Not quite sure what to do if we fail to add a point, yet
2023-07-09 21:01:22 -06:00
0a0a882f5a snapping, straight lines, and merge drawn points to list for auto draw 2023-07-09 20:42:09 -06:00
e0c24f5bcf automation drawing: stay in your lane and keep moving in the same direction 2023-07-09 18:12:08 -06:00
86d5e2472c automation drawing: we have the squiggly 2023-07-09 17:39:32 -06:00
78bca64a81 fix (and maybe break) two Drag classes that used the wrong name for setup_pointer_offset()
This might have unexplored consequences
2023-07-09 17:39:11 -06:00
6743c09b4a change return type from ptr to reference for AutomationTimeAxis::base_item() 2023-07-09 17:37:22 -06:00
94f413c399 basic empty skeleton for automation draw drag 2023-07-09 16:33:16 -06:00
0c8fd48d6f velocity lane: appropriately hide automation controls until we have line automation 2023-07-08 17:18:14 -06:00
2a1d4ffce9
Add note about LuaSignal for windows 2023-07-05 19:38:51 +02:00
9b8040a9f4
Add Lua signal emitted when editor selection changed 2023-07-04 21:13:52 +02:00
b757dd9fd8
Vertically center markers
see also 64d633cd26
2023-07-03 18:35:56 +02:00
7e121f4e13
Fix alloc-dealloc-mismatch (malloc vs operator delete) 2023-07-02 23:54:16 +02:00
168b67bd17
Allow to initiate Rubberband-drag on blank Trackview 2023-07-02 21:19:46 +02:00
1f4490fff9
Allow to select region-gain points via rubber-band drag 2023-07-02 20:47:41 +02:00
64d633cd26 amend/fix b490f7d2a1 to correctly (?) place marker text 2023-07-01 21:07:25 -06:00
d688af76c0 clean up mapping bar context menu, extend with clear tempos 2023-06-30 15:50:47 -06:00
bfa13ad714 temporal: reference time for BBT_Argument is always superclocks (GUI) 2023-06-30 12:10:50 -06:00
e756786a13 bbt markers: remove tempo&meter marker on deletion 2023-06-28 18:05:34 -06:00
ac491fce0e bbt markers: now have an (insensitive) tempo and meter marker visible
probably needs more work for event handling on the tempo and
meter markers.
2023-06-28 18:03:38 -06:00
b490f7d2a1 markers: fix position of BBT marker text (tiny tweak) 2023-06-28 18:03:38 -06:00
c53a476f15 allow drawing automation control points in mouse object mode
This is a tentative change and if it proves unwise we can back it out.
I just find it awkward to have to change modes to draw when it is
completely obvious whether I am drawing or not.
2023-06-28 13:44:59 -06:00
99c87e0614 no smart mode behavior for automation region views (it makes no sense) 2023-06-28 13:44:59 -06:00
36769dd94c part 2 of showing region selection in MIDI CC (automation) tracks 2023-06-28 13:44:59 -06:00
64b08a1c70 when a parent (audio/MIDI) regionview is selected, raise matching AutomationRegionView
Currently, we only use AutomationRegionView to show MIDI CC data
2023-06-28 13:44:59 -06:00
78037a532c when displaying region selecting, compare regions not regionviews
This worked before because nothing happened to AutomationRegionViews
when an AudioRegionView or MIDIRegionView was selected, and so
testing based on the regionview worked (the potential RV could
be the actual RV).

But when displaying region selection (in any way) on other TimeAxisViews,
the correct test is whether the RegionView shows the same region
as the selected region(view).
2023-06-28 13:44:59 -06:00
ed48758fb6 NO-OP: add comment 2023-06-28 13:44:59 -06:00
e54e24a7a0 no need for two raise-to-top; set_velocity_mode() will do it 2023-06-27 14:07:47 -06:00