Commit Graph

494 Commits

Author SHA1 Message Date
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
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
Robin Gareus 08acf42676
Correctly restore mixer-ui pane sizes
Pane::set_divider() constrains the divider so that widget
minimum sizes are honored.

Initially the mixer is empty and the tab has width of ~110px
(just scroll window). Pane::on_size_allocate() calls set_divider()
before actual mixer-strips are added and before the mixer window
size was restored. This incorrectly constrained pane sizes.
2022-03-29 00:31:15 +02:00
Ben Loftis 663a843484 Add explanatory text to '+' symbol on mixer and recorder pages 2022-01-30 13:44:41 -06:00
Robin Gareus 7623834421
Simplify treeview resync
The session marks itself as modified when the order-key
changes and also ensure_stripable_sort_order.
2022-01-27 01:28:49 +01:00
luz paz 364f2f0788 Fix typos in gtk2_ardour/ directory
Found via `codespell -q 3 -S *.po,./share/patchfiles,./libs -L ba,buss,busses,doubleclick,hsi,ontop,ro,seh,siz,sur,te,trough,ue`
2022-01-26 12:35:38 -05:00
Robin Gareus 056189c76c
Clean up DnD, use MIME-types
This is in preparation for allowing to drag trigger-regions
or trigger-slots. Those will not use a static singleton
PublicEditor API.

Additionally this constrains Ardour-internal drags to Ardour
(via Gtk::TARGET_SAME_APP).
2022-01-10 21:29:29 +01:00
Paul Davis 73e19c8fa7 add triggers to trigger tracks 2021-08-13 12:51:36 -06:00
Paul Davis d671dc0fa1 plugins use their route's automation time domain (GUI edition) 2021-08-13 12:51:33 -06:00
Paul Davis 7433bc27e0 intermediate, unfinished snapshot of ongoing timeline types work on GTK GUI 2021-08-13 12:51:29 -06:00
Ben Loftis db6f8aa215 Fix for Tags not being searched in the Favorite Plugins search-box 2021-08-03 13:56:19 -05:00
Robin Gareus 5c579ed52d
Remove unused #include<> (1/2)
PBD::stacktrace() is not used nor needed by default.
It should be used sparingly.
2021-05-05 17:43:28 +02:00
Robin Gareus 2ed8fd2723
Pixel-pushing: vertically align special busses
The mixer's track area has a border with shadow (again).
This breaks vertical alignment with monitor-section,
master, foldback busses.
2021-04-03 22:27:05 +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 8fbde5860d
Make group tabs insensitive when spilling sends
* Mixer layout does not change when spilling sends
* Tabs don't automatically show after spill_nothing()
  even if `show-group-tabs` is off
2021-03-28 17:46:01 +02:00
Robin Gareus 8402dd4888
Spill only direct feeds
When using chained sends, only show the direct parent:
    track A -> bus 1 -> bus 2
Showing sends feeding "bus 2", previously also displayed
"track A". However only "bus 1"' mixer-strip changed to show
the send controls.

We should not propagate displayed deliveries upstream, since
there may be ambiguities. There could be an additional send:
     track A -> bus 2
2021-03-27 21:30:56 +01:00
Robin Gareus 212b08b422
Foldback: remove unused processor actions
Also since foldback-busses are not selectable AxisViews,
various keyboard-shortcut operations cannot be performed
from the mixer-context. However the processox-box itself
provides these actions for the fold-back bus.
2021-03-26 23:52:12 +01:00
Robin Gareus a94c0d62a6
Foldback: Con't work to remove unused mixer-strip code 2021-03-26 23:49:36 +01:00
Robin Gareus cf7aad8a8a
Fix typo in previous commit 2021-03-26 15:04:21 +01:00
Robin Gareus ada1b9bce5
Show shaded plus icon on scroller-base background (rec, mixer) 2021-03-26 14:36:50 +01: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 ce28065421
Foldback: refactor spill logic
Prefer to reuse spill logic from the mixer-ui.
This allows to spill routes directly after spilling
foldbacks. Previously that resulted in FB "show sends"
to keep flashing even then no foldbacks were spilled anymore.

It also simplifies various aspects of foldback prev/next
logic.
2021-03-25 21:38:10 +01:00
Robin Gareus e204095b71
Fix mixer initial group-tab display 2021-02-07 12:06:26 +01:00
Robin Gareus 2bf9014ba1
Fix crash when detaching Editor or Mixer w/o session
Mixer_UI::show_window(), Editor::use_own_window() use
`show_all()` and the fixup items that should be invisible.
This involves a call to `parameter_changed ("show-group-tabs");`
2021-02-07 00:09:20 +01:00
Robin Gareus 7ef55225a0
Plug a tiny memory leak 2021-01-09 20:18:12 +01:00
Robin Gareus a3df0523b5
Fix crash when requesting disk/in monitoring of busses
e.g. select the master-bus, use  "D" or "I" keyboard shortcuts
in the mixer window.
2021-01-05 23:35:55 +01:00
Robin Gareus 7942897d93
VST3: cleanup, drop references (1/2)
VST3PluginInfo holds a shared_ptr reference to
VST3PluginModule. In order to cleanly unload a plugin, all
references have to be dropped.

Unloading a plugin cleanly before exit is needed in some
cases (e.g. Waves shell otherwise crashes)
2020-11-25 05:33:16 +01:00
Robin Gareus 3f16f60221
VST3: Ardour-GUI basics 2020-09-16 22:49:19 +02:00
Robin Gareus 1b261fab48
Remove unused LV2 ifdef 2/3
LV2 has been mandatory since 6.0 (04ccd328dc)
2020-09-15 17:35:04 +02:00
Robin Gareus 0518e1e88f
Make plugin list lengths configuable 2020-06-26 13:02:59 +02:00
Robin Gareus 4f4ee4c652
Sort plugin chart alphabetically 2020-06-26 13:01:50 +02:00
Robin Gareus 77362a2429
Consolidate common plugin search & sort methods
Also add a namespace, to prevent any symbol conflicts for
the structs.
2020-06-25 21:04:02 +02:00
Robin Gareus e06497beba
Fix API usage (time_t -> int64_t) 2020-06-25 20:14:57 +02:00
Robin Gareus c6ee111c3d
Don't save custom favorite order when filter is active 2020-06-25 13:57:51 +02:00
Robin Gareus 44436f1c9f
Tweak mixer-sidebar layout (plugin search) 2020-06-25 06:41:27 +02:00
Robin Gareus 0eb038575f
Overhaul Mixer Favorite Plugin sidebar
* use dedicated sort-order (fix issue with order being forgotten
  when results are filtered)
* add support for recent and most-used plugins
* add a text-entry search filter for favorites
* remove tag-filter drop-down
* ignore v5 instant.xml plugin sort order
2020-06-25 05:52:38 +02:00
Robin Gareus be701f0248
NO-OP: clarify variable name 2020-06-25 02:26:01 +02:00
Len Ovens 8e1e271eba Add a meter to Foldback bus
Spaces got replaced by tabs as well.
2020-05-07 17:13:40 -07:00
Paul Davis b258ad792e force provision of "menu-name" for all WindowProxy objects, and thus Tabbables
Actions for hide/show/attach/detach tabbables use hard-coded names which are not
translated. Using Tabbable/WindowProxy::name() to lookup the action will fail,
since the name can be translated. This changes just removes the option to not
provide a menu-name when creating these objects, and uses the name menu-name
when looking up an action by name
2020-05-01 14:33:47 -06:00
Robin Gareus 250da353d4
Disable spill when target-bus is removed #8014
Individual mixer-strip already revert to default display when
the send vanishes. This also resets the mixer view.
2020-04-15 20:21:27 +02:00
Edgar Aichinger eb5a41e3a3
Fix typos in the GUI in preparation for translations 2020-04-13 16:10:07 +02:00
Robin Gareus 71ab4614f8
Fix fan-out port connection race-condition
This directly creates tracks without auto-connect.
2020-04-03 15:37:49 +02:00
Robin Gareus 14f15ca1e9
Move RouteUI::fan_out to Mixer_UI
The previous version had various issues, in particular
when creating Tracks with an instrument, the RouteUI was not
available when the signal was emitted (likely caused by recent
ee-work of Audio+MIDI and Tape track removal).

However as side-effect fanned-out tracks/busses may now
be ordered before the new instrument route.

This also fixes an edge case of multiple fan-out in case
there is more than one RouteUI instance (mixer, editor-mixer,
meter-bridge).
2020-04-02 20:27:51 +02:00
Ben Loftis c765079b2f Show Sends button should instigate a Spill, akin to a VCA spill 2020-03-23 15:24:08 -05:00
Ben Loftis 2945e6ee23 Foldback: Sync nav buttons when a new foldback bus is added 2020-02-22 16:56:44 -06:00
Paul Davis 78d5e6af28 add mixer actions for toggle disk & input monitoring; bind to d and i in mixer bindings 2019-11-20 09:37:33 -07:00
Len Ovens 7dd7488872 Session should not be accessed when not there. 2019-11-06 08:30:11 -08:00