Robin Gareus
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
Tim Mayberry
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
Robin Gareus
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
Robin Gareus
6ece6ed407
EngineDialog: immediadely push latency changes to running backends
2017-04-27 21:10:10 +02:00
Robin Gareus
2039fc6fd0
Don't directly call into engine to stop latency detection.
2017-04-27 19:45:56 +02:00
Robin Gareus
e1c4fe8edc
Show the splash-screen if the engine dialog's run() hid it.
2017-04-20 23:16:09 +02:00
Robin Gareus
057bb167ca
Run gtk-main iteration after hiding dialogs
2017-04-20 23:15:13 +02:00
Tim Mayberry
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
Tim Mayberry
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
Tim Mayberry
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
Robin Gareus
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
Robin Gareus
16cdab6327
Fix engine state ordering
2017-04-01 15:39:02 +02:00
Robin Gareus
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
Paul Davis
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
Robin Gareus
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
Robin Gareus
9d7279d012
and a more intrusive KDE workaround
2016-11-30 23:19:44 +01:00
Robin Gareus
4c4061359c
pay some attention to the special guest of the night: KDE window stacking
2016-11-30 22:52:06 +01:00
Robin Gareus
84fc68cf08
Ensure the window-close button is visible for the Engine-Dialog.
2016-11-30 18:13:35 +01:00
Robin Gareus
27d0b67b8f
Remove close/OK buttons from engine dialog
2016-11-30 14:44:36 +01:00
Robin Gareus
0cb9d4a3d2
Restrict Device selection to valid choices.
2016-11-26 15:31:21 +01:00
Robin Gareus
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
Paul Davis
05bc96f4d2
move MIDI port options out of engine dialog and into prefs
2016-10-19 17:49:35 -04:00
Paul Davis
86106bcfa1
set up MIDI port treeview columns *just once*
2016-10-18 21:18:32 -04:00
Paul Davis
7a79a9da9a
correctly show both the old MIDI setup tab (device oriented) and the new one (port oriented)
2016-10-18 18:14:00 -04:00
Paul Davis
8357775fbb
further work on a MIDI port functionality dialog
2016-10-18 18:01:03 -04:00
Paul Davis
1d39500e64
beginnings of a tab in Audio/MIDI setup to manage MIDI port functionality
2016-10-18 16:56:35 -04:00
Robin Gareus
3d256ff2c2
Constrain Samplerate selection when session is loaded
...
Ardour does not allow to change the rate of a session itself.
2016-09-30 16:50:00 +02:00
Robin Gareus
7f8ec25e25
fix sample-rate display: show active (not desired) rate
2016-09-30 16:50:00 +02:00
Robin Gareus
46d2b03af0
retain desired samplerate when switching backends
2016-07-24 13:00:15 +02:00
Paul Davis
34fe25c603
remove debug noise
2016-07-20 16:33:40 -04:00
Paul Davis
cf52d6e4b4
enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.h
2016-07-14 14:45:23 -04:00
Paul Davis
bd865c8c90
fix plural form snafu in translation macro
2016-07-14 06:20:17 -04:00
Robin Gareus
f2f9c2303a
fix initial engine state (windows: buffered-i/o; all: channelcount)
2016-05-21 16:24:35 +02:00
Robin Gareus
6d343ba3c6
fix LocaleGuard contstructor ( 3dc77280)
2016-05-07 12:19:41 +02:00
Robin Gareus
3dc7728038
we always only use the "C" locale when saving.
2016-05-05 21:49:56 +02:00
Paul Davis
17ace643e4
OMNIBUS COMMIT: prefer const XMLNode::property method (and provide a real one)
2016-05-04 23:09:45 -04:00
Robin Gareus
e14b6428c3
slightly better version of 0077923d, don't stop the engine for nothing
2016-04-18 17:37:14 +02:00
Robin Gareus
0077923dea
update flow when loading a new session with different SR.
2016-04-18 15:18:36 +02:00
Robin Gareus
652468a344
add a try-autostart-engine option (most recently used settings)
2016-04-18 14:11:22 +02:00
Robin Gareus
db56a4da71
Engine Dialog: exclude optional widgets from show_all.
2016-04-18 14:07:49 +02:00
Tim Mayberry
0812f3bac1
Hide "Use Buffered I/O" button when switching to backend with no control
...
Which in this case means the JACK backend where the server is already running.
2016-02-13 10:00:59 +10:00
Tim Mayberry
2b4ac72e5d
Add button to Engine Dialog to choose between Portaudio callback and blocking API
2016-02-11 12:15:07 +10:00
Tim Mayberry
d54a320374
Show/Hide midi calibrate button based on AudioBackend::enumerate_devices
...
Rather than use an ifdef to only pack the button on linux just hide the button
if the backend doesn't enumerate the devices.
2016-02-11 12:15:07 +10:00
Robin Gareus
c0a843a905
fix device-list update concurrency issue.
...
It may happen that during push_state_to_backend() a device is
reconfigured in a way that triggers a "Device Changed" callback before
the engine is started. This callback can trigger a change to the
configuration that will be used when the engine is actually started.
This has been seen on OSX in conjunction with Aggregate Devices
(even if the aggregate is not used, but the device which is used
is also part of an aggregate)
example: HW changed callback arrives, device-list is re-populated,
*A*irplay" is at the top of the list, Airplay supports only 44.1K,
Samplerate changes... later save also writes this new rate to the file.
2016-01-29 01:12:53 +01:00
Robin Gareus
aeaf0610d4
GUI for latency-measurement signal-level
2016-01-14 19:25:23 +01:00
Robin Gareus
fed6c9f3ad
tweak GUI for backends where nperiods is driver dependent.
2015-12-05 13:55:37 +01:00
Robin Gareus
b5c5b7e493
GUI chores to show nperiods option.
2015-12-05 01:53:13 +01:00
Robin Gareus
2529b9db96
GUI handling for live latency-measurement
2015-12-04 17:34:46 +01:00
Robin Gareus
e9b0b4bcf0
remove duplicate check (same is done few lines above)
2015-12-04 17:05:21 +01:00