Commit graph

33499 commits

Author SHA1 Message Date
David Robillard
383bdfacfe Add BasicUI::sample_rate()
Towards removing the direct use of Session by surfaces.
2021-09-17 16:52:18 -04:00
David Robillard
98d06f98c9 Add BasicUI::vca_manager()
Towards removing the direct use of Session by surfaces.
2021-09-17 16:47:16 -04:00
David Robillard
abd2691997 Add BasicUI::UndoHistoryChanged()
Unlike the other signals, this one isn't directly from Session, but surfaces do
not need the full dependency on UndoHistory.

Towards removing the direct use of Session by surfaces.
2021-09-17 16:46:08 -04:00
David Robillard
4aa7af490c Add BasicUI::get_stripables()
Towards removing the direct use of Session by surfaces.
2021-09-17 16:45:00 -04:00
David Robillard
8aa2bb9795 Add BasicUI::get_remote_nth_stripable()
Towards removing the direct use of Session by surfaces.
2021-09-17 16:43:51 -04:00
David Robillard
003f1a4974 Add BasicUI::selection()
Towards removing the direct use of Session by surfaces.
2021-09-17 16:42:42 -04:00
David Robillard
8cbff2b202 Add BasicUI::audible_sample()
Towards removing the direct use of Session by surfaces.
2021-09-17 16:42:21 -04:00
David Robillard
453fac0df7 Add BasicUI::click_gain()
Towards removing the direct use of Session by surfaces.
2021-09-17 16:35:04 -04:00
David Robillard
fad1531b2d Add BasicUI::set_control() and set_controls()
Towards removing the direct use of Session by surfaces.
2021-09-17 16:34:43 -04:00
David Robillard
cbbc6f66ee Reduce surface dependence on session.h 2021-09-17 16:30:11 -04:00
David Robillard
ed27a9effb Make surfaces access Session signals through BasicUI accessors 2021-09-17 16:28:36 -04:00
David Robillard
a48cddf235 Add BasicUI::transport_rolling()
Now this name directly corresponds to the session method it wraps.

Towards removing the direct use of Session by surfaces.
2021-09-17 16:21:30 -04:00
David Robillard
def143bc64 Replace BasicUI transport_rolling with transport_stopped_or_stopping
For consistency with the underlying Session API, and to avoid an unfortunate
soft-overload with Session::transport_rolling() that does something different.
2021-09-17 16:20:18 -04:00
David Robillard
3e101dd895 Add BasicUI::locations()
Towards removing the direct use of Session by surfaces.
2021-09-17 16:16:37 -04:00
David Robillard
fdc24b6594 Add BasicUI::get_play_loop()
Towards removing the direct use of Session by surfaces.
2021-09-17 16:11:58 -04:00
David Robillard
93f5dc7e9e Add BasicUI::have_rec_enabled_track()
Towards removing the direct use of Session by surfaces.
2021-09-17 16:07:47 -04:00
David Robillard
0dc7cbba14 Add BasicUI::master_out() and BasicUI::monitor_out()
Towards removing the direct use of Session by surfaces.
2021-09-17 16:07:26 -04:00
David Robillard
b35f9ca1a0 Add BasicUI::cancel_all_mute()
Towards removing the direct use of Session by surfaces.
2021-09-17 16:01:36 -04:00
David Robillard
799008e4d7 Add BasicUI::record_status()
Towards removing the direct use of Session by surfaces.
2021-09-17 16:00:24 -04:00
David Robillard
1f17d0834c Add BasicUI::config()
Towards removing the direct use of Session by surfaces.
2021-09-17 15:59:13 -04:00
David Robillard
850bd44702 Add BasicUI::engine_sample_time()
Towards removing the direct use of Session by surfaces.
2021-09-17 15:58:53 -04:00
David Robillard
36789f080c Add BasicUI::make_port_name_non_relative()
Towards removing the direct use of Session by surfaces.
2021-09-17 15:51:55 -04:00
David Robillard
ece7d18baf Replace direct use of Session::midi_panic() in surfaces 2021-09-17 15:15:52 -04:00
David Robillard
78ee9b8917 Replace direct use of Session::get_transport_speed() in surfaces 2021-09-17 15:15:32 -04:00
David Robillard
3318f4e54c Replace direct use of Session::transport_sample() in surfaces 2021-09-17 15:15:11 -04:00
David Robillard
e7a769d608 Replace direct use of Session::request_transport_speed() in surfaces 2021-09-17 15:03:07 -04:00
David Robillard
badb360d1d Replace direct use of Session::goto_end() in surfaces 2021-09-17 15:02:47 -04:00
David Robillard
585e8173f9 Replace direct use of Session::goto_start() in surfaces 2021-09-17 15:02:27 -04:00
David Robillard
7b73f006a6 Replace direct use of Session::request_locate() in surfaces 2021-09-17 15:02:05 -04:00
David Robillard
666b3ba920 Move RecordState to ardour/types.h
This allows it to be used without including session.h.
2021-09-17 14:49:44 -04:00
David Robillard
de345dd790 Put BasicUI in namespace ARDOUR 2021-09-17 14:49:23 -04:00
David Robillard
1a5ffc4c8b Factor out ControlProtocol::get_session() 2021-09-17 14:31:34 -04:00
David Robillard
e17d20054a Remove some unnecessary Session dependency 2021-09-17 14:22:50 -04:00
David Robillard
b58c22c1be Remove BasicUI default constructor
Towards stronger lifetime guarantees, in particular the validity of _session.

I was expecting this to be a whole ordeal, but... compiler says no.
2021-09-17 14:19:15 -04:00
David Robillard
6dfb04c4da Rename ControlProtocol::session to ControlProtocol::_session
To match ARDOUR_UI, which this is something of a long lost base class of (and
hopefully in the future a literal base class of).
2021-09-17 14:18:46 -04:00
David Robillard
52139d8291 Remove dead code 2021-09-17 13:56:13 -04:00
David Robillard
13746a7fac Clean up control_protocol includes
This order (most local first) is better because it's more likely to catch
missing includes.
2021-09-17 13:55:52 -04:00
David Robillard
05a389bf36 Clean up whitespace 2021-09-17 13:53:31 -04:00
David Robillard
3dad396627 Factor out duplicated MidiByteArray 2021-09-17 13:53:09 -04:00
Robin Gareus
e5599d1c85
Fix div/zero, allow switching backends
This is another attempt replacing 1288262ca7,
which performs better.
2021-09-15 17:52:59 +02:00
Robin Gareus
cb81b06a5d
Revert "Fix div/zero, allow switching backends"
This reverts commit 1288262ca7.
2021-09-15 17:52:53 +02:00
John Emmas
840e63e6b2 Prefer tags for 'boost::intrusive::list' rather than list_member_hook<>
list_member_hook<> is very troublesome in MSVC and is known to cause problems in other compilers when used inside a class which has a virtual base class.
2021-09-15 09:28:54 +01:00
Paul Davis
999fe54ab8 canvas: a few variable cleanups in Table and more use of for (auto ..) 2021-09-14 22:39:59 -06:00
Paul Davis
6aaba192a0 canvas: improve computation of Table bounding box 2021-09-14 21:39:24 -06:00
Paul Davis
0878894c59 triggerbox: set bg color for packing table in trigger UI 2021-09-14 21:38:48 -06:00
Paul Davis
b3854c2e92 canvas: just use stack and size counter instead of std::vector<> 2021-09-14 21:22:56 -06:00
Paul Davis
9925147aae triggerbox: follow UI changes to Table::attach() 2021-09-14 21:18:44 -06:00
Paul Davis
1c42c733f7 canvas: remove use of Table::Index from API of Table::attach() 2021-09-14 21:18:44 -06:00
Paul Davis
c952c57a99 canvas: actually follow CSS conventions for 1/2/3/4 arguments in padding 2021-09-14 21:18:44 -06:00
Robin Gareus
5eee8bf1a3
Allow to change process graph while auditioning
This fixes an issue with adding/removing tracks while auditioning.

Session::remove_routes() calls Graph::clear_other_chain(),
which will block until the graph chains have been swapped.
2021-09-15 04:03:18 +02:00