Commit graph

564 commits

Author SHA1 Message Date
Paul Davis
d07710e847 remove last of the remnants of "ardour-bindings" strings 2025-03-19 20:19:08 -06:00
Paul Davis
801099e057 use Gtkmm2ext::BindingSet for the GUI 2025-03-10 18:49:02 -06:00
luzpaz
d111f6786b Fix typos 2025-02-02 02:05:54 +01:00
Robin Gareus
000c25edcc
Update gtkmm -> ytkmm header location (omnibus commit) 2025-02-01 15:25:14 +01:00
Robin Gareus
5bb814a281
Use ArdourFrame for Mixer Scenes 2025-01-29 22:00:51 +01:00
Robin Gareus
466663dc6c
Remove explicit duplicate Frame, now Gtk::Notebook provides it 2025-01-29 21:11:02 +01:00
Robin Gareus
e4e254e7fd
Switch to favorite plugin tab when using DnD to add favorites 2025-01-29 18:25:22 +01:00
Robin Gareus
77d78fdef2
Use Tab button to pick mixer sidebar plugin display mode 2025-01-29 16:26:12 +01:00
Robin Gareus
8e444ba45d
Correctly set sidebar tab selection for new users 2025-01-29 01:45:43 +01:00
Robin Gareus
7b326e7ec0
First iteration of tabbed mixer-strip sidebar 2025-01-29 00:31:03 +01:00
jean-emmanuel
a8f6fcc2df
mixer: add "search all" mode to sidebar plugin list 2025-01-18 01:26:20 +01:00
Robin Gareus
12454f0e7b
Pack monitor-section in full-height box 2025-01-13 22:46:11 +01:00
Robin Gareus
17cd211d06
Allow to configure number of mixer scene buttons
For Mixbus increase mixer-scene buttons to 12 (same as Function buttons)
2024-12-16 23:28:00 +01:00
Robin Gareus
2c01adbeb0
Ardour has no Mixer bottom pane (keep button insensitive) 2024-12-05 20:59:00 +01:00
Robin Gareus
940e1bc2df
NO-OP: rename layout widgets for clarity 2024-11-20 18:56:20 +01:00
Robin Gareus
27ccb1c9d3
Be explicit about resizable Pane vs fixed size Attachment 2024-11-16 19:38:59 +01:00
Robin Gareus
0b933127e9
Use new Tabbable API 2024-11-15 04:40:39 +01:00
Robin Gareus
19fc6e831b
Fix missing calls to SessionHandlePtr::session_going_away()
Explicit calls to set_session(0) will disconnect the
callback to session_going_away(). So don't do that.
2024-11-10 23:27:36 +01:00
Ben Loftis
983236f348
implement focus_on_clock for each tabbable 2024-11-10 23:27:35 +01:00
Ben Loftis
8f183e26ee
Use tabbable visibility functions on all pages 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
Robin Gareus
b2e4dd91b9
Update Tabbable c'tor to allow member as top-level widget
Derived classes cannot use `Tabbable (_content_vbox,..)`
`_content_vbox` is a member of Tabbable (which has not
yet been initialized) at the point of construction.

This breaks internal API, hence the omnibus commit
2024-11-10 23:27:34 +01:00
Robin Gareus
74c4ca3e52
Reduce reliance on boost - the hard part
the rest from `tools/convert_boost.sh`.

* replace boost::function, boost::bind with std::function and std::bind.

This required some manual fixes, notably std::placeholders,
some static_casts<>, and boost::function::clear -> = {}.
2024-10-19 03:47:21 +02:00
Robin Gareus
ff95d81612
Reduce reliance on boost - the easy part
* boost::unordered_map -> std::unordered_map
* BOOST_STATIC_ASSERT/static_assert
* BOOST_FOREACH -> for
* boost::tuple -> std::tuple/g
* boost::math::isnormal -> std::isnormal
* boost::container::set -> std::set
* boost::none -> std::nullopt
* boost::optional -> std::optional
2024-10-19 03:41:16 +02:00
Robin Gareus
902ecef797
Fix typo 2024-10-08 12:50:19 +02:00
Robin Gareus
8ab7c05382
Fix fan-out of instruments with illegal path-chars in their port-name
e.g. EZDrummer "1/2" (or generic "L/R"). While those names
are perfectly fine for Ports, tracks (file) names cannot include
those chars.

Since fan-out looks up routes by name this failed to properly
connect stereo pinouts since 4a14f2fed5, 5b746b186.
2024-09-17 22:16:28 +02:00
Mark Knoop
b00e099d02
Fix action labels for gain inc/dec #9719 2024-06-05 20:03:36 +02:00
Robin Gareus
4f59b1ddf5
show/hide group-tab spacer above VCA pane 2024-05-06 23:47:10 +02:00
jean-emmanuel
4e44f44e71
mixer: use ardour widgets instead of native gtk's for plugin list dropdown and search clear button 2024-05-03 21:19:48 +02:00
Robin Gareus
ed98ff97b2
Fix adding new route in front (#9651)
When adding a new route using "Front", its presentation info
order is set to 1, after the master-bus which has PI order 0.
(see Session::ensure_route_presentation_info_gap).

Mixer_UI::add_stripables, looks up the insert iterator:
"after the route with order 0", but since the master bus is
not in mixer's track-model, the insert-iterator is left "at end".

A later call to `sync_presentation_info_from_treeview` then updated
the new track's order key to be at the end.
2024-03-02 14:55:58 +01:00
Robin Gareus
e94e7b6dc7
Vapor: keep session config and UI action in sync 2024-02-23 17:04:25 +01:00
jean-emmanuel
c28080d44c
ui: mixer: remove duplicate handler that causes a bug where the "Add Track" dialog pops up upon double clickin anywhere on a vca strip 2024-02-15 14:58:54 +01:00
Robin Gareus
0e824cce0b
Fix gtk-critical message when monitor section is not present 2024-01-28 21:59:14 +01:00
Robin Gareus
d01bb73548
Mixer: place surround-monitor after master (and before monitor section) 2024-01-15 22:40:35 +01:00
Robin Gareus
2a928dae19
Vapor: Simple Export GUI 2024-01-06 20:28:42 +01:00
Robin Gareus
7228144d6e
Vapor: GUI support to add Surround Bus 2024-01-06 20:27:03 +01:00
Robin Gareus
9cc966120c
Consolidate internal bus checks (2/2) 2024-01-06 20:21:54 +01:00
Paul Davis
a5ac6e097e switch no-strobe from cmdline to UI config preference 2023-11-10 15:50:44 -07:00
Paul Davis
9c5600ad87 no strobe for mixer ui meters 2023-11-10 10:56:03 -07:00
Robin Gareus
c162aa7aca
Consistently use context-menu button action
This fixes an issue where brining up a menu can directly activate an
action in the menu. Notably on macOS.

Nathan reports that this may also address #9515

Note: mac touchpads are not affected since right-click there is
effectively a "press and hold".
2023-10-31 20:16:23 +01:00
Paul Davis
e9585ad530 objects don't have a time domain, they have a time domain provider (GUI) 2023-08-02 15:22:52 -06:00
Paul Davis
e430b54554 class name change to clearly disambiguate Evoral::ControlList (a list of time/value pairs) from lists of Controls in libardour (GUI edition) 2023-08-02 15:22:52 -06:00
Paul Davis
78e023fcc2 deselecting a grouped track no longer deselects the entire group
I believe this to be more useful behavior than the previous state of affairs
2023-07-28 17:13:29 -06:00
Robin Gareus
295dbd8e1e
Make RCU reader return a const pointer (omnibus commit) 2023-04-08 00:15:37 +02: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
Robin Gareus
a4d9fb4935
Fix saving favorite plugin order
This broke in 7942897d93. Clearing the list triggered
favorite_plugins_deleted() for each plugin. This resulted
in an empty list being saved to disk.
2022-12-27 16:53:01 +01:00
Robin Gareus
d808315e2a
Offer dedicated alternatives for Delete/Backspace
This follows Processor Box:
 <Binding key="Delete" action="ProcessorMenu/delete"/>
 <Binding key="BackSpace" action="ProcessorMenu/backspace"/>
2022-12-02 19:50:39 +01:00
Robin Gareus
9153521f4a
Do not highlight momentarily recalled scenes
Since momentary override is a singleton, it needs to remain
GUI only, and not a session API available to any UI.

The middle-clicked button is rendered as pressed. So it is
already obvious and the Changed() signal that is emitted
when temporarily restoring a scene can simply be ignored.
2022-11-10 21:03:00 +01:00
Robin Gareus
235d51a723
Revert "MixerScenes: implement 'undo' function for mixer scene recalls (libardour)"
This reverts commit a40c8d8e9a.
This reverts commit 01c7e14c6e.
This reverts commit 162a8c00b3.
2022-11-10 20:54:12 +01:00