Commit graph

34604 commits

Author SHA1 Message Date
Paul Davis
98ad20529b fix loading of regions in older session files
In session file formats earlier than 7000, region position and length
are stored in distinct XML node properties. For 7000 or later, both
position and length are part of the "length" member. Fix reloading
this by noting session file format and loading position and length
more explicitly
2022-01-27 15:36:06 -07:00
Robin Gareus
7eb53828a9
Do not warn about TB sidechain connection when preference is unset 2022-01-27 23:04:30 +01:00
Robin Gareus
8e7b01bd5f
Remove debug output 2022-01-27 22:26:31 +01:00
Robin Gareus
c9e9843a9e
Fix Trigger DnD
Revert parts of 8c144d6e69 and 0f4a5f2d52
Allow to drag regions out of trigger-boxes (this will be needed
to export triggers).
2022-01-27 22:24:55 +01:00
Paul Davis
15bb91cf4f canvas: fixing missing initializer for _scroll_translation in 3rd Item constructor 2022-01-27 14:02:34 -07:00
Paul Davis
93401d1883 remove debug output 2022-01-27 14:02:34 -07:00
Ben Loftis
0f4a5f2d52 trigger_ui: slot-to-slot drag, with static variable implementation (gtk part) 2022-01-27 13:23:05 -06:00
Ben Loftis
7a3624af6f TriggerBox: copy over a subset of user-settings into a dropped slot using a static variable (@robin) 2022-01-27 13:22:46 -06:00
Ben Loftis
8c144d6e69 trigger_ui: trigger-to-trigger drags use a different target-name 2022-01-27 13:15:27 -06:00
Ben Loftis
78270d6754 trigger_ui: remove thinko (I think? what does double-click have to do with ungrab?) 2022-01-27 13:15:27 -06:00
Ben Loftis
2e5a266d24 trigger_ui: no need for right-clicking or extra menu levels for a single menu 2022-01-27 13:15:27 -06:00
Ben Loftis
3605f51e7e TriggerBox: trigger_by_id searches the box for a trigger with matching pbd::id 2022-01-27 13:15:27 -06:00
Ben Loftis
63e134097c Session::trigger_by_id finds a trigger from its pbd::id 2022-01-27 13:15:27 -06:00
Ben Loftis
4e1606e0f0 CanvasWidgets have a grab() api. fixes: sometimes the wrong region is dragged 2022-01-27 13:15:27 -06:00
Robin Gareus
5cebd64924
Fix fit tracks
The track-height change needs to be applied so that
vertical_adjustment max range is set correctly.
Otherwise vertical_adjustment.set_value() may fail
or scroll to the wrong position.

In 5b3eacd421 `redisplay_track_views()` was moved from
EditorRoutes to Editor. The call was delegated to the idle
thread, potentially collecting multiple calls before performing
the update.

This resulted in "Fit selection" to set the y-offset before the
height-change was applied.
2022-01-27 19:57:58 +01:00
Paul Davis
15f0e4dbbf triggerbox: fix cue playback and recording
Somewhat alarmed that gcc (at least) allows if (cue_recording ...) to be
used just like if (_cue_recording) even though the former is a class method
and the latter is a class member.
2022-01-27 11:36:04 -07:00
Paul Davis
0dc19a2b31 triggerbox: allow setting of start to work correctly (for audio triggers) 2022-01-26 21:23:40 -07:00
Paul Davis
fdf0c069ca triggerbox: take start offset into account when computing ends 2022-01-26 21:22:40 -07:00
Robin Gareus
fe49558429
Correctly order TriggerStrips on TriggerPage 2022-01-27 04:06:13 +01:00
Robin Gareus
f33a0f58f9
Mark Trigger-strip processor-box insensitive when route is inactive 2022-01-27 01:28:50 +01:00
Robin Gareus
194dfc1717
Add Tracks to TriggerPage sidebar 2022-01-27 01:28:50 +01:00
Robin Gareus
51b0d29555
Add dedicated Trigger Route List 2022-01-27 01:28:50 +01:00
Robin Gareus
b68097422a
Reduce and abstract EditorRoutes to a dedicated RouteList 2022-01-27 01:28:50 +01:00
Robin Gareus
7623834421
Simplify treeview resync
The session marks itself as modified when the order-key
changes and also ensure_stripable_sort_order.
2022-01-27 01:28:49 +01:00
Robin Gareus
729ff35faf
Mark session as modified when stripable order chanes
Previously this was handled by the Editor/Mixer Treeviews,
centralizing it in Session makes more sense.
2022-01-27 01:28:49 +01:00
Robin Gareus
5b3eacd421
Make editor independent of EditorRoutes 2022-01-27 01:28:49 +01:00
Ben Loftis
a274c1473a Triggerbox: Preserve some settings when dragging a new clip into a slot 2022-01-26 17:57:55 -06:00
Ben Loftis
b1c04f1108 Triggerbox: Empty slots act as a Stop unless cue_isolated is set (TODO: can we report this to user?) 2022-01-26 17:57:55 -06:00
Ben Loftis
760c55b0b2 Cue Page: the property-box does not need a resizable pane 2022-01-26 17:57:55 -06:00
Robin Gareus
036ad841bf
Remove using namespace Gtk; from headers
This causes issues if the header is included early on
in particular a conflict with gdkx.h
The reference to ‘Window’ is ambiguous `Gtk::Window` vs [X11]Window.
2022-01-26 22:32:28 +01:00
Robin Gareus
1da131db41
Add missing namepaces
This works since gtkmm2ext headers have `using namespace Gtk`
2022-01-26 22:32:27 +01:00
Robin Gareus
c9f40a0bf5
Fix pane size for widgets that explicitly allow 0 size
Amend 1aca71e22b
2022-01-26 22:32:27 +01:00
Ben Loftis
3362f7d4fa Triggerbox: support for files that use a space between bpm value and bpm text 2022-01-26 11:51:08 -06:00
Ben Loftis
0350e58eb7 remove unused variables (fix warnings) 2022-01-26 11:51:08 -06:00
Ben Loftis
065e0ba210 Cue page: rough-in a display for Bar-length 2022-01-26 11:51:08 -06:00
Ben Loftis
289199d01d triggerbox: barcnt -> beatcnt (gui part) 2022-01-26 11:51:08 -06:00
Ben Loftis
efb44fc640 triggerbox: barcnt -> beatcnt (libardour part) 2022-01-26 11:51:07 -06:00
Ben Loftis
925a3b3ccd Only show the Range property header when a Range is selected (WIP) 2022-01-26 11:51:07 -06:00
Ben Loftis
a29510c1c4 trigger_ui: highlight Cue buttons when the user clicks them 2022-01-26 11:51:07 -06:00
luz paz
364f2f0788 Fix typos in gtk2_ardour/ directory
Found via `codespell -q 3 -S *.po,./share/patchfiles,./libs -L ba,buss,busses,doubleclick,hsi,ontop,ro,seh,siz,sur,te,trough,ue`
2022-01-26 12:35:38 -05:00
Paul Davis
7f96255722 triggerbox UI: catch up with method and property name changes from 528fd247 2022-01-26 10:12:13 -07:00
Paul Davis
f20966cbad triggerbox: formalize setter/getter methods for Trigger properties
These are all defined via macros now. We send PropertyChange notifications when the value is set
even though it may not yet be in use.

This also changes the std::atomic used to protect the UIState<->Properties interlocking to
unsigned, to get defined behavior when the generation counter wraps
2022-01-26 10:12:13 -07:00
Robin Gareus
2796d7250b
Do not allow to deactivate master-bus 2022-01-26 17:24:31 +01:00
Robin Gareus
1aca71e22b
Fix ArdourWidgets::Pane honor child min-size
This doesn't yet correctly fix Pane::constrain_fract() constraints,
when moving the divider, but it does prevent child widgets from
being allocated with a size smaller than their minimum.

This fixes some layout and rendering issues (widgets that have
a too small allocation are not exposed and/or bleed into neighbors)
2022-01-26 17:24:31 +01:00
Paul Davis
9ac93a4792 triggerbox: sidechain should only process "its" MIDI buffer when looking for events 2022-01-26 07:57:32 -07:00
Paul Davis
a7645022e1 triggerbox; fix i/o configuration of sidechain 2022-01-26 07:57:05 -07:00
Paul Davis
684ac0e42e fix buglets after some recent changes to editor tempodisplay
These were caught by msvc but not by gcc .Disappointing
2022-01-26 07:25:00 -07:00
Ben Loftis
0496701a8f Simplify the tab-selector tooltips 2022-01-25 19:50:57 -06:00
Ben Loftis
986942fe96 Cue Page: rename Trig -> Cue 2022-01-25 19:50:57 -06:00
Paul Davis
8122a879ee fix a couple of conflicts after TriggerBox::scene_isolated became ::cue_isolated 2022-01-25 18:10:49 -07:00