Paul Davis
a3c5db5d51
ensure that non-drag track height changes cause a call to Editor::redisplay_track_views()
2022-04-05 20:52:10 -06:00
Paul Davis
1999a3aae8
explicitly discard the return value from ::process_redisplay_track_views()
2022-04-05 20:52:10 -06:00
Robin Gareus
9c9f1dbf82
Fix nudge-playhead-backward
2022-03-30 03:08:16 +02:00
Paul Davis
e3b66825eb
superclock_ticks_per_second: GUI edition changes
2022-03-17 14:15:59 -06:00
Ben Loftis
f0372e0b17
ripple (gui part) ripple_marks should work without a plist (Range cut)
2022-03-14 21:35:35 -05:00
Ben Loftis
f8f53a4cae
ripple (gui part) changes to Range + RippleAll behavior on markers
...
Range->Delete is the most common type of ripple-editing imho
... so we need to implement ripple_marks for that common action
* markers inside a deleted range should be removed
* range markers (start+end) need special handling
* remaining markers to the right can be rippled by libardour
* implement undo
2022-03-14 21:35:35 -05:00
Ben Loftis
01ef5a5b24
ripple (gui part): should_ripple_all() encapsulates modes Ripple+RippleAll
2022-03-14 19:26:41 -05:00
Ben Loftis
2eb286eb76
make range+region Bounce dialogs more consistent
...
* cleaner table layout
* explicit options for bouncing to Trigger and Clip List
* any bounce is added to Source list, so remove that from menu
* format context menus to match "(with processing)"
* use same code structure where possible
2022-03-13 19:42:00 -05:00
Robin Gareus
4048bcc6b6
Fix crash when freezing track
...
The freeze threads needs a thread-local tempo-map to call
Route::bounce_process which runs processors.
2022-03-09 17:47:36 +01:00
Robin Gareus
9cac17ea7d
Speed up silence-stripping when there are many silent chunks
...
Previously every region fragment was added one at a time,
with each emitting signals and updating the GUI. If there are a
few thousand regions Ardour can freeze for a significant amount
of time.
There is still the issue that the GUI freezes after the progress-bar
reached the end: consolidate overlapping ranges after analysis, then
add regions.
And Playlist::flush_notifications still emits
RegionFactory::CheckNewRegion() for every region individually
and RegionListBase::add_region becomes the bottleneck.
But at least adding 7k regions now returns in under 5 minutes
instead of taking over an hour.
2022-03-08 16:31:47 +01:00
Robin Gareus
080bfdc2d0
Simplify grid next/prev logic
...
Round[Up/Down]Always does not need an offset to avoid snapping
to the same position.
2022-03-04 19:39:02 +01:00
Robin Gareus
9dabe047f1
NO-OP: clean up and consolidate PH next/prev grid code
2022-03-04 18:29:43 +01:00
Ben Loftis
7cc3fbaccf
editor_ops: bounce to trigger: warn user when they try to bounce a range to an already-populated trigger slot
2022-03-03 16:49:28 -06:00
Paul Davis
685a3ebc7e
do not use a write copy of the tempo map when not planning to modify the map
2022-02-20 09:31:23 -07:00
Ben Loftis
a8cf442bc9
pixel-pushing: clean up the dialog for Range->Bounce to Trigger Clip
2022-02-11 15:32:00 -06:00
Ben Loftis
a02689f41e
Range->Bounce to Trigger Clip: use UISTate api to set tempo of clip
...
* also use the desired name without the extra stuff that bouncing adds to the filenam
2022-02-11 15:32:00 -06:00
Paul Davis
17e5667216
triggerbox: use translatable marker name function in GUI
2022-02-11 11:33:43 -07:00
Robin Gareus
46b8b0963e
Fix bounce_range_selection trigger slot dropdown
2022-02-10 00:43:09 +01:00
Paul Davis
604652b7d6
fix duplicate behavior
...
We were adding the "span" value to the position before calling
Playlist::duplicate(), but it does that internally.
2022-02-03 20:51:04 -07:00
Ben Loftis
da09d1dd9a
terminology: the content in a trigger is a Trigger Clip
2022-01-31 20:25:06 -06:00
Robin Gareus
bfc3f6fa4f
Bouncing to trigger enables Cue-Page visibility
2022-01-31 21:53:57 +01:00
Robin Gareus
0b055ad66e
Add option to copy bounced regions/range to clip library
2022-01-29 20:48:23 +01: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
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
4c433106a4
add interview mode to preferences and fix up implementation
2022-01-24 11:29:36 -07:00
Paul Davis
2152e7ba3b
triggerbox: change FollowActions into an object with a target list (GUI edition)
2022-01-19 15:50:55 -07:00
Robin Gareus
96137739a7
Reduce includes required for Selection
...
Previously a triggerbox_ui.h change triggered a complete UI
rebuild. This follows the concept of other editor_selection
lists which use forward declarations.
2022-01-11 05:21:51 +01:00
Ben Loftis
233491c88a
Fix Consolidate-without-processing abort
2021-12-31 13:44:52 -06:00
Ben Loftis
bc8994d5c8
trigger_ui: implement Audition Action (press A to audition, spacebar to stop)
2021-12-23 22:35:52 -06:00
Robin Gareus
216ff53bb9
C++11 Lambda FTW!
2021-12-24 02:13:50 +01:00
Robin Gareus
cf5dcd12ee
Use a callback instead of subtractive char math
2021-12-24 02:13:03 +01:00
Robin Gareus
d78364f90b
Un-hardcode number of trigger-slots
2021-12-24 00:31:01 +01:00
Robin Gareus
b2b9c38bc3
Leave a note about trigger-slot IDs using western alphabet
...
Ideally these would be translatable into Cyrillic, Greek,
Chinese or any other alphabet (and not be limited to 26 either).
2021-12-24 00:31:01 +01:00
Robin Gareus
541b91d293
Implement Bounce Range to Trigger
2021-12-23 22:39:57 +01:00
Robin Gareus
83d8560490
Fix bound-range dialog label
...
Gtk::Label leaves scope, but must remain until the dialog
is destroyed.
2021-12-23 22:32:36 +01:00
Robin Gareus
3c03e4951e
Use updated temporal API 2/2
2021-12-11 15:51:31 +01:00
Ben Loftis
84111a343e
Deinterlace MIDI: gui part
2021-11-19 10:28:37 -06:00
Paul Davis
b6f290add2
timeline type changes for new ripple code and post-conflict-resolution fixups
2021-08-13 12:51:36 -06:00
Paul Davis
bb87f33506
fix timeline types in region/cue marker operations
2021-08-13 12:51:36 -06:00
Paul Davis
dec3b9bc2e
cleanup mess from manual rebase against master (GUI edition)
2021-08-13 12:51:35 -06:00
Paul Davis
49424ab0e3
Region::_start should be a timepos_t not a timecnt_t (GUI edition)
2021-08-13 12:51:34 -06:00
Paul Davis
125c20e148
manual fixups for recent rebase conflicts left in the wrong state (GUI edition)
2021-08-13 12:51:33 -06:00
Paul Davis
eaedcd79d4
fix a bunch of undo-able tempo map operations to use RCU
2021-08-13 12:51:32 -06:00
Paul Davis
75d6ea19c4
fix time/position used when applying MIDI ops
2021-08-13 12:51:32 -06:00
Paul Davis
cce695d33a
changes required by fixing ambiguities in timepos_t/timecnt_t API (GUI edition)
2021-08-13 12:51:31 -06:00
Paul Davis
eec4addcd5
GUI side cleanup forced by explicit BBT_Offset (double)
2021-08-13 12:51:30 -06:00
Paul Davis
18d64f0402
change all Region::nt_*() methods to names without the nt_ prefix (GUI version)
2021-08-13 12:51:30 -06:00
Paul Davis
90553b315f
fix up memento command use for tempo map undo/redo
2021-08-13 12:51:30 -06:00
Paul Davis
3c00fab75e
remove/hide Session::tempo_map() and use TempoMap::use() instead (thread local shared ptr) (GUI edition)
2021-08-13 12:51:30 -06:00
Paul Davis
f0d055ad4d
more updates for new tempo map API
2021-08-13 12:51:30 -06:00