Commit graph

24 commits

Author SHA1 Message Date
Ben Loftis
983236f348
implement focus_on_clock for each tabbable 2024-11-10 23:27:35 +01:00
Ben Loftis
4b1e09f810
Pack Pages using Tabbable constructs 2024-11-10 23:27:35 +01:00
Ben Loftis
1b18c3e76c
Use Transport Bar in top-level pages 2024-11-10 23:27:34 +01:00
Paul Davis
ca1583cdad the great onceification (gui)
Replace use of #ifndef header guards with #pragma once

Modern C++, baby!
2024-10-17 07:44:31 -06:00
Paul Davis
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
Paul Davis
39ed528e25 std-ize: convert all boost shared/weak ptr includes to <memory>
Also fix stdint.h -> cstdint and alphabetically order std includes
2023-03-24 14:19:15 -06:00
Ben Loftis
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
Robin Gareus
c10c3ed64f
Show I/O Plugins on Recorder Page 2022-05-17 02:26:28 +02:00
Paul Davis
ca22ba77e1 Constification: make Stateful::get_state() const, with all other required const-ness added (GUI) 2022-04-06 21:56:59 -06:00
Ben Loftis
50c555f1a1
Default_Play_Speed: simple varispeed GUI 2021-07-03 19:06:02 +02:00
Robin Gareus
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
Ben Loftis
5b8835483e Default_Play_Speed: simple varispeed GUI 2021-06-25 11:51:34 -05:00
Ben Loftis
7cc92d8f27 Playlist UI tweaks: add global playlist buttons to Rec page (tentative, for testing) 2021-06-08 08:33:48 -05:00
Robin Gareus
283cade057
Update GUI Region[s]PropertyChanged signal handlers (2/3) 2021-05-07 23:29:25 +02:00
Robin Gareus
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
Robin Gareus
1bffdfc334
Open add-route dialog on double-click or context-click 2021-03-28 20:39:34 +02:00
Robin Gareus
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
Robin Gareus
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
Robin Gareus
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
Robin Gareus
ece37d9ca0
RecorderUI: Implement track renaming 2021-02-23 16:24:55 +01:00
Robin Gareus
4412b8714b
RecorderUI: Capture info and transport ctrls 2021-02-23 16:24:30 +01:00
Robin Gareus
15361bca55
RecorderUI: Add input port monitoring 2021-02-23 16:24:27 +01:00
Robin Gareus
582c99a156
RecorderUI: initial implementation 2021-02-23 16:24:23 +01:00
Robin Gareus
f10d380d9a
RecorderUI: Tabbable Window Skeleton 2021-02-22 01:00:07 +01:00