David Robillard
1559829e24
Factor out SessionController from BasicUI
...
Towards sharing this code with ARDOUR_UI.
2021-06-17 11:02:08 -04:00
David Robillard
8998efa8c8
Move RecordState to ardour/types.h
...
This allows it to be used without including session.h. Using this pointless
cast syntax to make it easy to mechanically convert them all when we can
finally use strong enums.
2021-06-17 11:01:05 -04:00
David Robillard
56fe5b47ae
Rename ControlProtocol::session to ControlProtocol::_session
...
To match ARDOUR_UI, towards finally sharing code here.
2021-06-17 10:57:07 -04:00
David Robillard
73ad115486
Remove dead code in BasicUI and ControlProtocol
2021-06-17 09:56:49 -04:00
Paul Davis
b75a37abdb
fix arguemnts to transport call in shared control surface code for transport_play()
2021-06-08 08:32:19 -06:00
Paul Davis
2e501fd77a
ensure the BasicUI implementation of rewind/ffwd is the same as the ARDOUR_UI one
2021-05-19 18:32:00 -06:00
Paul Davis
57b3df8b22
copy over (boo!) transport control changes to BasicUI (control surfaces)
2021-05-08 09:20:21 -06:00
Paul Davis
1757cfb8ef
use rewind/ffwd option to alter behavior of control surface rewind/ffwd buttons
...
This does not affect GUI equivalents (yet)
2021-05-04 20:52:01 -06:00
Paul Davis
cd4aaa808e
use button_varispeed() in BasicUI::rewind() and BasicUI::ffwd()
2021-05-04 16:38:28 -06:00
Paul Davis
009e971bfb
correct the implementation of BasicUI::button_varispeed() to provide incremental speed shifting (by semitones) in both directions
2021-05-04 16:38:02 -06:00
Paul Davis
fbd1221833
move FaderPort8 method "button_varispeed()" into BasicUI for more general use
2021-05-04 16:10:24 -06:00
Paul Davis
8e868fc743
remove unnecessary 2nd argument from Session::request_locate() calls (default value is identical) (surfaces edition)
2021-05-03 17:40:41 -06:00
Paul Davis
f94aec5a59
fix/improve BasicUI's methods for rewind/ffwd/play (used by various surfaces)
2021-04-19 16:14:09 -06:00
Paul Davis
48e5607f7c
use Session::request_roll() instead of request_transport_speed (1.0, ...)
2021-04-19 16:14:08 -06:00
Paul Davis
52b7e68102
use new Session transport API calls in GUI
2021-04-19 16:14:08 -06:00
Paul Davis
07c16d38a2
control surfaces: make methods used for transport control (BasicUI) do the right thing w.r.t. default speed
2021-02-12 09:36:52 -07:00
Ben Loftis
276baee8ad
surfaces transport hotfix: BasicUI: prefer actual_speed() and transport_stopped_or_stopping() for current Transport FSM
2020-02-23 09:02:21 -06:00
Paul Davis
47767738b9
rename DoTheRightThing to RollIfAppropriate
2020-01-18 08:49:18 -07:00
Paul Davis
3c00048b0c
Session::request_locate() takes a tri-valued second argument for "roll-after-locate"
...
This allows callers to defer logic about auto-play/current rolling state and more to TransportFSM where it
can be cnentralized and is less ambiguous
2020-01-18 08:49:18 -07:00
Paul Davis
a8cc5b1303
provide new methods for BasicUI that wrap the "complexity" of how to show transport state via lit buttons
2019-12-29 18:43:51 -07:00
Paul Davis
7b25a89944
part 1 of replicating semantics of ARDOUR_UI::toggle_roll() in BasicUI::toggle_roll()
...
This can be done better, even without sharing code
2019-11-02 16:32:18 -06:00
Paul Davis
a072228de5
remove seamless looping as an option (it's now the only kind of looping we support)
2019-11-01 14:04:28 -06:00
Robin Gareus
365f6d6337
Update plugins/addons GPL boilerplate and (C) from git log
2019-08-03 15:53:18 +02:00
Johannes Mueller
89f39d14f2
Add some options for surfaces to jump in the timeline
...
* ::jump_by_beats()
* request transport to keep rolling after jump
2019-05-18 13:27:49 +02:00
Paul Davis
4c7e5dbc74
move away from "sync source" concepts
2018-10-05 14:15:02 -04:00
Paul Davis
30b087ab3d
globally change all use of "frame" to refer to audio into "sample".
...
Generated by tools/f2s. Some hand-editing will be required in a few places to fix up comments related to timecode
and video in order to keep the legible
2017-09-18 12:39:17 -04:00
Johannes Mueller
f7452c2a3a
Addressing #7371 : don't trigger session->undo() from non-GUI-thread
...
When triggering Session::undo() or Session::redo() from a
non-GUI-thread (e.g. from a surface protocol) Ardour crashes if setting a
CairoWidget dirty due to a ENSURE_GUI_THREAD assertion. (see #7371 )
By triggering undo by BasicUI::access_action() rather than by Session::undo()
we ensure that the GUI thread will finally call Session::undo().
So more like a workaround ... but better than crashing :)
2017-07-01 01:04:44 +02:00
Tim Mayberry
4d927c6bd4
Use braces in BasicUI::jump_by_bars()
2017-05-23 09:13:27 +10:00
Tim Mayberry
7fe188ec92
Use braces in BasicUI::jump_by_seconds()
2017-05-23 09:13:27 +10:00
Tim Mayberry
df185e575e
Use correct variable in BasicUI::jump_by_seconds
2017-05-23 09:13:27 +10:00
Ben Loftis
6b8be8fa71
Fix set-*-from-edit-range actions, when accessed from control surfaces.
2017-04-01 09:57:06 -05:00
Len Ovens
f69808b372
BasicUI moved toggle_click,toggle_roll and stop_forget from menu action to session calls
2017-03-19 23:09:45 -07:00
Len Ovens
1af7e97fd0
basic_ui send midi_panic directly to session rather than through GUI
2017-03-19 07:27:24 -07:00
Len Ovens
caae0546a7
OSC fix toggle_monitor_mute/dim/mono in basic_ui
2017-03-18 14:14:02 -07:00
Paul Davis
220fbbe0d8
fix another action name in BasicUI after Editor=>Control migration
2017-01-28 18:51:03 +01:00
Paul Davis
e92c169275
fix action names in BasicUI after Editor=>Control migration
2017-01-28 18:51:03 +01:00
Paul Davis
6dbe3a1e3b
post-rebase fixes
2016-09-27 14:59:30 -05:00
Paul Davis
d7a16786fc
change API for BasicUI::goto_start() to use optional roll-after arg
2016-09-27 14:59:29 -05:00
Paul Davis
ac9b5f872d
add method (taken from GTK GUI) to goto_nth_marker() to BasicUI
2016-09-27 14:59:29 -05:00
Paul Davis
0e5ac13a04
use new shared cancel_all_solo() in Mackie code
2016-09-27 14:59:29 -05:00
Paul Davis
40dd604dbc
add correct implementation for cancel all solo to BasicUI
2016-09-27 14:59:29 -05:00
Paul Davis
cf52d6e4b4
enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.h
2016-07-14 14:45:23 -04:00
Paul Davis
eed3ea5047
remove a bunch of code that will no longer be used
2016-07-06 13:38:13 -04:00
Paul Davis
291aec468f
use session stripable selection API
...
and remove old ControlProtocol signals to talk to GUI etc.
2016-07-04 12:45:53 -04:00
nick_m
34c9ac9dd7
Tempo ramps - rename bbt_time() -> bbt_at_frame(), frame_time() -> frame_at_bbt()
2016-05-27 23:38:17 +10:00
Paul Davis
ae7cc64377
copy-n-paste the ARDOUR_UI toggle-roll code into BasicUI (for Faderport and others)
2016-05-09 08:17:23 -04:00
Paul Davis
8b52b69810
make BasicUI (for control surfaces) loop toggle work like the GUI
2016-04-30 10:54:40 -04:00
Paul Davis
ff2c3dbc81
control surfaces: fix BaseUI method for disabling record enable
2016-02-02 09:03:41 -05:00
Ben Loftis
3332633d19
Editing from a control surface must have the ability to ignore mouse location.
...
Add mark_in and mark_out actions that explicitly use the playhead as the edit location.
2016-01-28 13:46:33 -06:00
Ben Loftis
5493e20c84
Add all_tracks_rec actions
2016-01-19 14:00:03 -06:00