13
0
Commit Graph

45 Commits

Author SHA1 Message Date
03ececf178 move arm-all/arm-none actions from RecorderUI to ARDOUR_UI and add toggle-arm-all 2024-05-07 11:13:38 -06:00
295dbd8e1e
Make RCU reader return a const pointer (omnibus commit) 2023-04-08 00:15:37 +02:00
b35518e212 switch from boost::{shared,weak}_ptr to std::{shared,weak}_ptr
This is mostly a simple lexical search+replace but the absence of operator< for
std::weak_ptr<T> leads to some complications, particularly with Evoral::Sequence
and ExportPortChannel.
2023-03-24 14:19:15 -06:00
86d9bcf525 Remove direct use of audio-engine rate (2/2)
This is in preparation for sample-rate independence.
2023-01-22 20:07:40 +01:00
483047635c Rec page: implement Undo actions and shortcuts
* undo is not (currently) a Global action, it's an Editor action
* ... but we want the ability to undo a recording

One option would be to chagne Undo to a Global action, which would have a
 sizable impact on code and existing shortcuts.

Instead I'm choosing to implement a Rec-page-specific Undo action & shortcut

It's conceivable that someday we would want the Recorder page to ONLY undo
 record operations, and the Mixer page to ONLY undo mixer operations, or
 something like that.  This lays the foundation for that.
2022-12-16 13:18:37 -06:00
9ea1e5bdee move color utility functions from ARDOUR_UI_UTILS to Gtkmm2ext namespace (GUI) 2022-08-10 21:11:52 -06:00
a92af7768d modifiers: implement is_momentary_push_event for momentary buttons (gtk2 part) 2022-06-17 11:07:58 -05:00
43f58f88a6
Allow input meters without session when backend is connected
This also fixes a race with ARDOUR::AudioEngine::start() emitting
a Running() signal being emitted without a valid session.
2022-05-31 19:08:19 +02:00
5c18e64616
Fix I/O Plugin meter without session - amend c10c3ed6
The RecoderUI can show device input meters as long as a backend is
running regardless of a session. I/O Plugins are however
part of a specific session.
2022-05-18 21:07:30 +02:00
c10c3ed64f
Show I/O Plugins on Recorder Page 2022-05-17 02:26:28 +02:00
Mads Kiilerich
7f649efd42
gtkmm: use set_can_focus() instead of deprecated Gtk::Widget::set_flags(CAN_FOCUS) 2022-04-08 21:11:06 +02:00
Mads Kiilerich
09c6e68ae8
gtkmm: use append() instead of deprecated Gtk::ComboBoxText::append_text() 2022-04-08 21:10:56 +02:00
Mads Kiilerich
a86aa31747
gtkmm: use get_visible() instead of deprecated Gtk::Widget::is_visible() 2022-04-08 20:20:10 +02:00
Mads Kiilerich
d52c727ec5
gtkmm: use get_mapped instead of deprecated Gtk::Widget::is_mapped() 2022-04-08 20:20:10 +02:00
luz paz
3d395585c1
Fix various typos
Found via `codespell -q 3 -S *.po,./share/patchfiles,./libs -L ba,buss,busses,doubleclick,hsi,ontop,ro,seh,siz,sord,sur,te,trough,ue`  
Follow-up to 364f2f078
2022-04-08 19:51:02 +02:00
ca22ba77e1 Constification: make Stateful::get_state() const, with all other required const-ness added (GUI) 2022-04-06 21:56:59 -06:00
9ad82787a1 Instrument Selector: use a 3-way Disposition to disambiguate the uses of this widget 2022-02-04 21:33:12 -06:00
663a843484 Add explanatory text to '+' symbol on mixer and recorder pages 2022-01-30 13:44:41 -06:00
754230921d there is no Properties::position any more (GUI)
Position is a part of a length property (a duple specifying
"duration AT position", and there is no distinct property
for just the position itself
2021-09-25 16:49:51 -06:00
a71ba473f7 fix up post-rebase issues after rebase on master 2021-08-13 12:51:34 -06:00
f67d39fa66 RecorderUI: Do not show input meters for control-only ports Faderport, Mackie, etc 2021-08-04 09:14:10 -05:00
33faf7ca56
Fix tooltip for new-playlist button 2021-07-13 17:02:14 +02:00
50c555f1a1
Default_Play_Speed: simple varispeed GUI 2021-07-03 19:06:02 +02:00
83b9ab1bee
Temporarily revert ongoing varispeed development
This reverts bf88f3fe64
until 35813db0f4

in order to move development into a branch, until after the
upcoming 6.8 release
2021-06-26 18:58:24 +02:00
5b8835483e Default_Play_Speed: simple varispeed GUI 2021-06-25 11:51:34 -05:00
7cc92d8f27 Playlist UI tweaks: add global playlist buttons to Rec page (tentative, for testing) 2021-06-08 08:33:48 -05:00
283cade057
Update GUI Region[s]PropertyChanged signal handlers (2/3) 2021-05-07 23:29:25 +02:00
6a82aa392c
Fix deadlock when duplicating regions w/ripple
This is an initial work-around for signal emission with
Playlist:region_lock held:

Playlist::duplicate() takes RegionWriteLock() and then calls
RegionFactory::create(). The newly created region does NOT have
property-changes suspended, and the RegionFactory can change
region-properties which results in signal-emission.

This in turn can lead to a call Editor::session_gui_extents()
-> ARDOUR::Playlist::get_extent() -> Playlist::RegionReadLock

which deadlocks: https://pastebin.com/84rSbsA3

Eventually we need a mechanism to create regions with
->suspend_property_changes() and add it to the playlist's
thawlist (pass a thawlist to the region-factory).
2021-04-30 03:40:32 +02:00
dd060b04dc
RecorderUI: Fix monitoring when hot-plugging devices
When there are no input ports at the time the engine starts
running, MonitorInputChanged signal was not subscribed to.
This breaks AFL solo. This happens e.g. when re-starting the
engine with ALSA slave devices.
2021-04-18 19:03:35 +02:00
1bffdfc334
Open add-route dialog on double-click or context-click 2021-03-28 20:39:34 +02:00
cf7aad8a8a
Fix typo in previous commit 2021-03-26 15:04:21 +01:00
ada1b9bce5
Show shaded plus icon on scroller-base background (rec, mixer) 2021-03-26 14:36:50 +01:00
04a40140dc
Remove "add route" button from recorder and mixer
This GTK button style is out of place in both contexts.
Furthermore it is inconsistent to not have the same button
in the editor (there is a dropzone).
2021-03-26 14:35:17 +01:00
cb6ad45e9d
Fix crash when CatchDeletion signal from self_delete arrives late
This is rather an unusual edge-case, seen on macOS when the UI
never continues past the first idle stage.
2021-03-08 17:15:03 +01:00
a7ce58b995
Fix rec-ruler time display
The calculation to round the distance to seconds has to be performed
using floating point maths, not just the result being cast to double.
The time-granularity must not be zero.
2021-02-25 17:59:53 +01:00
John Emmas
53b90dc0dc Add a cast when using 'ceil' (to keep MSVC happy) 2021-02-25 16:46:19 +00:00
07d04be98d
Potential fix for MSVC builds
The set is defined with custom compare fn:
  std::set<T, cmp> x;
but later iterators used a default constructor:
  std::set<T>::iterator i = x.begin();
2021-02-25 15:55:10 +01:00
7f9dae0078
RecorderUI: add a "+" add route button
This provides consistent look and feel with the mixer-window.
2021-02-23 23:07:22 +01:00
c2e4198c0d
RecorderUI: add option to disable waveforms 2021-02-23 16:25:01 +01:00
16cbec311a
RecorderUI: add some key-bindings 2021-02-23 16:24:58 +01:00
ece37d9ca0
RecorderUI: Implement track renaming 2021-02-23 16:24:55 +01:00
4412b8714b
RecorderUI: Capture info and transport ctrls 2021-02-23 16:24:30 +01:00
15361bca55
RecorderUI: Add input port monitoring 2021-02-23 16:24:27 +01:00
582c99a156
RecorderUI: initial implementation 2021-02-23 16:24:23 +01:00
f10d380d9a
RecorderUI: Tabbable Window Skeleton 2021-02-22 01:00:07 +01:00