13
0
Commit Graph

302 Commits

Author SHA1 Message Date
eda27cc3de move all responsibility for autostart into StartupFSM and out of engine dialog 2019-11-06 17:35:30 -07:00
a16f004d24 fix vanished audio/MIDI setup window after "Start" is clicked anytime other than during startup 2019-10-29 18:20:55 -06:00
015eb03bd5 remove debug output 2019-10-24 21:32:46 -06:00
a4723ab8d9 NOOP: newline removal; space injection 2019-10-24 21:32:46 -06:00
44445ea309 remove Session::AudioMidiSetupRequired signal (no longer necessary) 2019-10-12 12:45:18 -06:00
da2d6312c4 call parent ::on_response() 2019-10-11 13:53:48 -06:00
03a248d517 make EngineDialog behavior more appropriate for use in both startup and non-startup conditions 2019-10-10 16:52:00 -06:00
1be0c0efe7 engine dialog should emit response and handle it, not just call its own response dialog 2019-10-10 16:52:00 -06:00
5044dad3f2
Fix a duplicate layout parent issue 2019-09-29 22:42:02 +02:00
478f165295
Re-layout engine dialog, improve "Autostart" button position 2019-09-27 13:58:28 +02:00
9d65350600
Add use-these-engine-settings-from-now-on checkbox
Functional, but this needs a layout fix, still.
2019-09-26 21:12:37 +02:00
9c0beeb759 fix problem with ArdourDialog::on_delete_event() not being called when appropriate during app startup
The dialog is run using gtk_dialog_run() which uses on_response() to deal with delete/close events unlike a regular
top level event loop.

Probably even better would be run run the dialog from the top level event loop, but this is a bit complex
2019-09-22 21:45:30 -06:00
799e535b2a
Fix latency-measurement port-name display
In case there are no pretty-names, a blank text was displayed
2019-09-20 23:30:05 +02:00
4050ca5633
Update GPL boilerplate and (C)
Copyright-holder and year information is extracted from git log.

git history begins in 2005. So (C) from 1998..2005 is lost. Also some
(C) assignment of commits where the committer didn't use --author.
2019-08-03 15:53:15 +02:00
d70b03ae61
Fix engine-dialog for backends without MIDI options 2019-07-25 17:49:42 +02:00
83f484a3ce
Engine Dialog: update MIDI devices, merge settings with state 2019-05-06 01:29:18 +02:00
ae181f5f66
Fix MIDI latency measurement
* Restore active state of devices after measurement
* Don't manually set latencies for measurement (backend handles this)
* remove superfluous call to stop measurement
2019-05-06 00:13:47 +02:00
837678bdcc
Use pretty-port-names in latency measurement dialog 2019-05-05 18:15:18 +02:00
df90d4f636
Engine Dialog MIDI tweaks
* Allow to dynamically en/disable MIDI devices when running
* Push midi latencies directly to running backend
2018-12-23 21:58:56 +01:00
2d87af1988
Engine-dialog: skip audio device update when running
Only update MIDI devices list, which can be dynamic. Audio devices
which are in-use can't be updated, and the GUI may no longer show
the current device (since it is in use).
2018-12-23 21:58:56 +01:00
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
8f216afa24 Another engine dialog edge-case fix to set the samplerate
Honor the sesssion's sample-rate when showing the dialog with the engine
stopped. This can happen when then engine dies or hide/show the dialog
after manually stopping the engine.
2018-11-11 19:51:56 +01:00
38301c808c Fix sample-rate override when changing backends or devices
This indirectly honors session_loaded() and prevents that restoring
engine-state can change the sample-rate dropdown when a session is loaded.
2018-11-11 18:50:01 +01:00
30b087ab3d globally change all use of "frame" to refer to audio into "sample".
Generated by tools/f2s. Some hand-editing will be required in a few places to fix up comments related to timecode
and video in order to keep the legible
2017-09-18 12:39:17 -04:00
d4a089937b Populate the buffer size combo when connecting to jack that is already running.
This would crash (throw) if ardour was started with an invalid backend
(alsa with no devices avaliable) and then changec to an alredy running
jack. The invalid backend at the start would leave the buffer
size combo empty and switching to the running jack backend did not populate
buffer size list.
2017-08-10 09:49:22 -05:00
cc4df34697 SNAFU. Allow changing engine buffer-size while running 2017-08-04 03:39:41 +02:00
5c92613698 Separate Ardour UI widgets into dedicated library 2017-07-17 21:06:04 +02:00
Thomas Brand
63ea7b6516 NO-OP whitespace (updated GH PR #357) 2017-07-01 19:28:26 +02:00
6d35b3c4e4 Remove locale_guard.h from ardour/ardour.h header
Add to source files that use LocaleGuard

Results in far less recompiling when pbd/locale_guard.h changes
2017-06-22 10:48:38 +10:00
921bdd4a51 Fix engine-state history.
Remove old code to remove duplicate engine state which was used to
work-around a bug since 3.x saved duplicates but broke with 4.x separate
i/o devices.

Add a new variant to purge old unused states per backend (after sorting).
2017-06-16 22:32:56 +02:00
6ece6ed407 EngineDialog: immediadely push latency changes to running backends 2017-04-27 21:10:10 +02:00
2039fc6fd0 Don't directly call into engine to stop latency detection. 2017-04-27 19:45:56 +02:00
e1c4fe8edc Show the splash-screen if the engine dialog's run() hid it. 2017-04-20 23:16:09 +02:00
057bb167ca Run gtk-main iteration after hiding dialogs 2017-04-20 23:15:13 +02:00
ab30f45bba Use PBD::to_string to convert period count in EngineControl class
The functionality is the same so might as well use it.
2017-04-19 09:36:59 +10:00
0739bada9e Use PBD::to_string to convert bufsize to string in EngineControl class
string_compose uses std::ostream/stringstream which will insert thousands
separators in some locales. This was not a problem when LocaleGuard set the
global C++ locale to "C"
2017-04-19 09:36:59 +10:00
800112c3b7 Use XMLNode::get/set_property API in EngineDialog class
Fixes many of the type conversions but I doubt any would have been an issue.

LocaleGuard is no longer necessary
2017-04-19 09:36:55 +10:00
3e43585fa1 Pop splash on dialog response - not d'tor.
A Dialog Window may not be tightly scoped, and may be around
for a while (query settings from the dialog instance). The destructor
may only be called  later.
2017-04-01 16:40:07 +02:00
16cdab6327 Fix engine state ordering 2017-04-01 15:39:02 +02:00
8bed793b48 Properly desensitize various engine-controls.
MIDI system and channel-count cannot be changed while the engine is
running.
2017-04-01 14:37:35 +02:00
05b0102668 ArdourButton: if _act_on_release is true, only trigger actions/signal clicks on key release, and vice versa
This should really be split in separate semantics for key and button events.

Fixes a subtle but nasty bug in the EngineDialog where the change of the default focus
widget from a Gtk::Button (acts on press) to an ArdourButton (acts on release) caused
events occuring after a dialog has grabbed focus to trigger button clicks
2017-03-01 22:30:20 +01:00
d766095732 Further tweaks to EngineDialog z-axis stacking
When there's no main window (initial setup, no transient parent),
preset a normal window listed in the task-bar.

The duality the Engine Dialog being used as Ardour-WM managed non-modal
Window (Menu > A/M Setup) and modal Dialog (AudioEngineSetupRequired)
complicates this a bit.
2016-12-07 14:50:17 +01:00
9d7279d012 and a more intrusive KDE workaround 2016-11-30 23:19:44 +01:00
4c4061359c pay some attention to the special guest of the night: KDE window stacking 2016-11-30 22:52:06 +01:00
84fc68cf08 Ensure the window-close button is visible for the Engine-Dialog. 2016-11-30 18:13:35 +01:00
27d0b67b8f Remove close/OK buttons from engine dialog 2016-11-30 14:44:36 +01:00
0cb9d4a3d2 Restrict Device selection to valid choices. 2016-11-26 15:31:21 +01:00
0b8a7d3429 Don't allow recursive calls to EngineDialog
OK -> start_engine() can eg. trigger an interactive plugin scan,
which in turn leaves the EngineDialog responsive. changing settings
or clicking OK again can lead to undefined behavior.
2016-11-19 04:54:36 +01:00
05bc96f4d2 move MIDI port options out of engine dialog and into prefs 2016-10-19 17:49:35 -04:00
86106bcfa1 set up MIDI port treeview columns *just once* 2016-10-18 21:18:32 -04:00