Commit Graph

12368 Commits

Author SHA1 Message Date
Paul Davis
17a8a50e58 fix issue with ProcessorBox inside MonitorSection (session was not set correctly) 2018-12-15 11:58:58 -05:00
Robin Gareus
b94c9ef8e0 Fix Mixbus action fc83d044f8 & 65bda27d4 rebase ordering 2018-12-13 18:36:31 +01:00
Robin Gareus
922bc86b8e Video-Frame (not sample) 2018-12-13 17:44:58 +01:00
Paul Davis
17f5fb81d2 replace ::cast_dynamic() with relevant ActionManager::get_*_action() calls 2018-12-12 11:22:38 -05:00
Paul Davis
69777d600f replace ::cast_dynamic() with relevant ActionManager::get_*_action() calls 2018-12-12 11:12:48 -05:00
Paul Davis
961870142d remove explicit use of ::cast_dynamic() from Gtk::Action to Gtk::ToggleAction 2018-12-11 23:43:22 -05:00
Paul Davis
20c55065ab more changes flowing from a persistent MonitorSection object 2018-12-11 12:25:31 -05:00
Paul Davis
fbab611a73 use syntactic sugar 2018-12-11 12:25:12 -05:00
Paul Davis
8a2c824659 do not reset session for MonitorSection just because monitor out was removed 2018-12-11 12:24:49 -05:00
Paul Davis
5216bf3771 use correct path for various actions/bindings in monitor section 2018-12-11 12:23:23 -05:00
Paul Davis
fc6f90aefc fix commentary 2018-12-11 12:22:51 -05:00
Paul Davis
098b0f8a8b full (?) set of changes required to make MonitorSection an "always-there" component of the MixerUI
Obviously, it is not always shown, but it always exists, which means that its actions are always accessible
2018-12-11 10:28:47 -05:00
Paul Davis
685c4f8955 change action group owner pointer to be the relevant keybindings; reorder setting keybindings value and defining actions
The reorder is required so that the value of "bindings" has been set and is meaningful
2018-12-11 05:06:26 -05:00
Paul Davis
5981b7f1b8 add nominal owners for all action groups
Note: this is not yet correct. The owner (pointer) values passed in are not yet usable
2018-12-10 18:44:05 -05:00
Paul Davis
6d5f33f6e8 remove static from some members, after MonitorSection is now persistent 2018-12-10 18:42:35 -05:00
Paul Davis
29eac8ee4e no longer delete and recreate MonitorSection when it is removed/added to a Session 2018-12-10 18:41:59 -05:00
Paul Davis
12a88c9706 show-editor and show-mixer actions are now part of Common, not Window or Mixer action groups
This is a bit arbitary but they are supposed to be invokable from anywhere, and since they control Tabbables and note
pure windows, they are not part of WM::Manager's purview (Window/* actions). Thus ... Common
2018-12-10 18:39:14 -05:00
Paul Davis
5b513828bd reorder ARDOUR_UI action registration and adding tabbables to the main window, to avoid action-not-found in tabbable_state_change() 2018-12-10 18:19:31 -05:00
Paul Davis
154f9825ff remove method and inline its contents. Nothing gained by wrapping this up 2018-12-10 16:24:27 -05:00
Paul Davis
a26e6fed50 remove long-lived bug that tried to make a non-existent action insensitive 2018-12-10 16:19:54 -05:00
Paul Davis
fc83d044f8 use ActionManager namespace, rather than ActionMap objects, and remove all per-context action maps 2018-12-10 08:34:01 -05:00
Paul Davis
efd75b7152 use new action map API instead of ActionManager::get_action 2018-12-10 08:34:01 -05:00
Paul Davis
a68766ec53 use new action map API instead of ActionManager::get_action 2018-12-10 08:34:01 -05:00
Paul Davis
24331aaf20 use new action map API instead of ActionManager::get_action 2018-12-10 08:34:01 -05:00
Paul Davis
53df8350dd use new action map API instead of ActionManager::get_action 2018-12-10 08:34:01 -05:00
Paul Davis
4f96aa8f18 use new action map API instead of ActionManager::get_action 2018-12-10 08:34:01 -05:00
Paul Davis
e8903a7590 use new action map API instead of ActionManager::get_action 2018-12-10 08:34:01 -05:00
Paul Davis
3fea1fa4f2 use new action map API instead of ActionManager::get_action 2018-12-10 08:34:01 -05:00
Robin Gareus
3dcb7bf3d3 Unhardode log-message domain when logging to stdout 2018-12-09 01:31:27 +01:00
Robin Gareus
2dc3c8b365 Better version of 9ccc56e162, implicit signal disconnect 2018-12-08 23:39:50 +01:00
Robin Gareus
9ccc56e162 Fix CheckOption crash on session-reload
The ToggleAction has a lifetime of the UI, independent of the
CheckOption widget. The CheckOption needs to unsubscribe from the
signal_toggled() signal when it is deleted.

Also a CheckOption without a Action makes no sense. require _action
to be give at instantiation time.
2018-12-08 21:18:54 +01:00
Robin Gareus
474d68c051 NO-OP: whitespace and some guaranteed assertion removal 2018-12-08 20:36:03 +01:00
Robin Gareus
41827a546a Fix crash when closing session, recursive mon-section removal 2018-12-08 20:15:53 +01:00
Robin Gareus
d314a510f6 Fix gmsynth detection
Previously this worked since gmsynth was sorted after reasonably synth
2018-12-08 17:04:32 +01:00
Ben Loftis
65bda27d42 Tweaks to Mixer and Monitor keybindings:
Add Mixer-specific view keybindings for list, vca, mon.  (thanks to: the_CLA)
Move monitor keybindings (mute, dim, mono) to be globally-accessible.

Implement new mixer-specific actions to show/hide monitor,vcas,mixbuses (the_CLA)
Move monitor funcs (mute,dim,mono) to globally-accessible actions.
Make a new Monitor group insted of using Transport group.
Allow use-monitor-section to be controlled by both menu and session-options dialog.
2018-12-07 12:57:26 -06:00
Robin Gareus
927a33c5f3 Remove redundant call (there's no session, nothing to save) 2018-12-07 03:46:58 +01:00
Robin Gareus
d864f42d20 Fix editor sizing issue introduced in 4dc65e66
Previously Editor::instant_save() returned if no session was loaded,
effectively Config->add_instant_xml(get_state()); was never called.

instant save() is called early on, in Editor's c'tor before the editor
is realized and saves invalid window-size and window-state, which
are used later.
2018-12-07 03:46:47 +01:00
Robin Gareus
4dc65e6613 Prefer testing the session instead of using a global variable 2018-12-06 02:24:31 +01:00
Robin Gareus
bf874562ef Fix inconsistent session-check
under some circumstances, e.g. session-exit it is possible to to have
inconsistent information
    ARDOUR_UI::instance()->session_loaded == true
 && ARDOUR_UI::instance()->the_session() == NULL

This lead to a crash on MacOS/X. stopping the engine at exit may destory
an Aggregate Device, leading to DeviceListChanged which in turn updates
the engine-dialog..
 else if (ARDOUR_UI::instance()->session_loaded) {
   float active_sr = ARDOUR_UI::instance()->the_session()->nominal_sample_rate ();
2018-12-06 02:24:30 +01:00
Paul Davis
2eae3b5cd1 another replacement of ActionManager::get_action() by ActionMap::find_action() 2018-12-05 17:48:34 -05:00
Paul Davis
4423945643 start using ActionMap in preference to ActionManager 2018-12-05 17:33:06 -05:00
Robin Gareus
d6b5c23579 Fix generic plugin UI for plugins with only properties
e.g. reMID.lv2 has only a atom/file-property and no control-inputs.
2018-12-05 20:18:56 +01:00
Robin Gareus
9f1293bfe5 Tab to prev/next name-entry: skip only rec-armed tracks 2018-12-04 22:07:27 +01:00
Robin Gareus
80aa43b830 Expose DSP load window 2018-12-03 22:45:22 +01:00
Robin Gareus
78f749ef65 Don't show DSP stats of inserts that don't collect them. 2018-12-03 22:43:13 +01:00
Robin Gareus
c8d08338df GUI Updates for plugin save/delete operations 2018-12-02 01:38:14 +01:00
Paul Davis
7801888810 fix incorrect accumulation of export video options each time the dialog is used 2018-11-29 17:43:17 -05:00
Robin Gareus
e42699600b Delete temporary Window Proxy for dialogs
There are two cases:
 (A) Proxy is created first, dialog is created later on demand
 (B) Dialog is created and directly registers its window as proxy

In (B) the dialog is usually on the stack and destroyed when the
ArdourDialog instances leaves scope. In that case ~ArdourDialog()
is called and the proxy remained.

Destroying the proxy does destroy the registered window in ~WindowProxy()
If ArdourDialog's d'tor itself deletes the proxy it would recurse into
itself. Existing APIs e.g. drop_window() likewise delete the window and
cannot be safely called from ~ArdourDialog.
2018-11-29 14:25:22 +01:00
Robin Gareus
df28a71252 Consolidate API, prefer ->running() 2018-11-28 15:19:39 +01:00
Robin Gareus
0805b6b925 Consolidate two more engine-checks 2018-11-28 15:17:57 +01:00