e73d20c5a4
Close and save is possible without running engine
...
Since de99d7c528
, Ardour sessions can be saved and
Ardour can be closed without a running engine.
2021-01-27 04:13:26 +01:00
ee1e7ad00e
Clear waveform cache when rebuilding peak-files
2020-12-21 21:13:13 +01:00
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
f3fbf58185
Set default transient parent to the main window
...
This is mainly useful for plugin windows, but also relevant
for other Ardour WM managed dialogs and windows.
2020-09-27 02:07:19 +02:00
cce424b695
Mark some menu items insensitive w/o session
...
When closing a session without loading or creating a new one,
Ardour's main window and menu are accessible.
Menu > Session > Properties : crash w/o a session
Menu > Window > Transport Masters : any interaction causes a crash.
2020-09-18 21:03:56 +02:00
24ed3c5a9e
minor code reworking for 46fca9062d
(no semantic changes)
2020-04-23 09:05:18 -06:00
Mister Benjamin
46fca9062d
Honour forward/rewind option when already rolling #8031
...
The options ForwardSlow, Forward and ForwardFast and their
respective Rewind options were not honoured in the execution
of forward/rewind operations when the transport was already
rolling at a slower speed than the forward or rewind option's
speed with same direction as the requested direction.
2020-04-23 08:19:20 -06:00
826bdc413c
fix behavior of ARDOUR_UI::transport_rewind/forward actions
2020-04-20 17:18:37 -06:00
606d6de4b1
Consistent Lua script error and print() output 2/2
2020-04-18 18:16:12 +02:00
e1a9034a0e
Synchronize meter-reset #7465
...
Queue reset to be handled when the meter is updated.
Also only call set_name(), set_active_state() when the
state changes.
2020-04-10 23:50:10 +02:00
232b21d289
Statusbar: tweak tooltips
2020-03-30 03:52:20 +02:00
b49764edf5
Statusbar: link session property dialog for format & timecode
2020-03-30 01:10:00 +02:00
e43cc9c7bb
Statusbar: add session-path display
2020-03-30 00:14:25 +02:00
325477803e
Statusbar: fix >24h disk-space label
2020-03-29 23:54:34 +02:00
7a98605748
Statusbar: do not highlight 100% DSP load when freewheeling
2020-03-29 21:05:23 +02:00
a49365ef1e
Statusbar: use white on red as fixed color error highlight
2020-03-29 21:04:21 +02:00
6f4d1f5e2e
Use light font for status-bar labels instead of italic
2020-03-29 21:02:26 +02:00
9076cc60a4
Tweak status-bar layout & design
...
* remove color: increase contrast, do not use red/green
foreground because it does no work with various themes
* do use red background to alert users
* use italics for labels heading
* increase spacing between elements
* use mono-space font with DSP load (fixed with) up to 99%
* Fix translations, use compose strings
2020-03-29 18:56:21 +02:00
d7500056fc
stop transport clocks from jumping after the playhead is moved via a CursorDrag
2020-03-25 19:24:38 -06:00
b3cbd8f44e
if user chooses not to delete a scratch session, removed the file that identifies it as unnamed (GUI)
2020-03-25 10:25:00 -06:00
900bab7271
basic pass at deleting scratch sessions
2020-03-24 21:15:32 -06:00
e3e794f3a8
Fix crash at exit when closing session before quit
2020-03-25 02:23:16 +01:00
4d91637b45
handle scratch session when quitting
2020-03-24 18:26:12 -06:00
97340a5c89
when saving an unnamed session, rename it (GUI edition)
...
Note that this is done at the GUI level, might need to double check if there are
other paths into a "save" that should be covered. Control surfaces use the action, but
Lua comes to mind
2020-03-24 14:10:39 -06:00
5f27382b88
Remove Audio+MIDI track, and consolidate route creation methods
...
Audio+MIDI tracks were just MIDI tracks with an additional
audio input, and do not directly allow use of vocoders (an
instrument is loaded by default).
For pitch-correction or similar use-cases one would prefer an
audio-track (main data) with MIDI only being used as control-input.
Ardour 5/6 pin-connections and side-chain offer a much nicer
workflow for this setup.
Alternatively one can get those tracks-types by manually adding
an input port to an existing track, and creating a custom template.
2020-03-19 16:18:48 +01:00
5f88cbfd39
Prevent adding routes in read-only sessions
...
"AddTrackBus" is a rec_sensitive and write_sensitive action.
However the mixer bypasses this and unconditionally calls
ARDOUR_UI::instance()->add_route () in various cases
(right-click on blank space or scroller, left-click on "Add" buttons
in the VCA pane, route pane, etc).
Since those are direct events, not related actions, they need
to be explicitly ignored.
Ideally the "+" buttons would be made insensitive...
2020-03-17 22:30:58 +01:00
4262d701eb
Remove GUI thread x-run reset on engine re-start
...
This has been superseded by the previous commit, doing this
independently from the GTK GUI.
2020-02-24 22:22:09 +01:00
44e55c501e
Add some const'ness
2020-01-30 23:35:37 +01:00
b2051d98fd
Clarify pending-state message
...
Previously this dialog was mainly used for crashes during
recording. Now it is also used for backup saves in general.
2020-01-28 17:29:36 +01:00
47767738b9
rename DoTheRightThing to RollIfAppropriate
2020-01-18 08:49:18 -07:00
3c00048b0c
Session::request_locate() takes a tri-valued second argument for "roll-after-locate"
...
This allows callers to defer logic about auto-play/current rolling state and more to TransportFSM where it
can be cnentralized and is less ambiguous
2020-01-18 08:49:18 -07:00
6487d6c62b
Fix external timecode GUI display
...
Only show mis/matching TC if FPS has been detected and
timecode master is locked.
2020-01-12 18:04:12 +01:00
Nikolaus Gullotta
ce54e342ed
Add additional roll check in transport_record
...
Previously there was no check for roll in case Session::Enabled this
can cause issues with "latched-record-enable" and "transport-roll"
2019-12-16 13:06:04 -06:00
1881d73f43
Remove unused API (no more unconditional splash pop-back)
2019-12-14 23:44:04 +01:00
2b55d6dce3
First batch of MessageDialog replacements
2019-12-14 23:44:01 +01:00
561cf86919
Fix session sensitivity of some toolbar controls
2019-12-13 16:33:12 +01:00
6ee21fb77e
GUI: Use new boost::optional API
...
get_value_or() has been deprecated since boost 1.56
2019-11-21 17:49:20 +01:00
b79d47b1b5
fix crash caused by storing clock modes while loading a session
...
The store would delete any existing node of the same name,
which was the node being used to set the mode in the first
place.
2019-11-08 12:40:26 -07:00
3e443bc237
improve operation of ARDOUR_UI::toggle_roll() for loop mode (particularly when loop-is-mode)
2019-11-02 16:32:18 -06:00
a072228de5
remove seamless looping as an option (it's now the only kind of looping we support)
2019-11-01 14:04:28 -06:00
be12af293d
remove now-unused member variable
2019-10-24 21:32:46 -06:00
0ea395b934
startupFSM is now responsible for attaching GUI to AudioEngine
2019-10-24 21:32:46 -06:00
ebb89ba805
Super basic Virtual-Keyboard UI
2019-10-18 03:50:52 +02:00
44445ea309
remove Session::AudioMidiSetupRequired signal (no longer necessary)
2019-10-12 12:45:18 -06:00
74454d1859
do not accidentally re-create splash
2019-10-11 14:44:30 -06:00
54acf6af6a
enforce singleton nature of Splash a little more rigorously, and slightly rationalize it's use
2019-10-11 14:29:55 -06:00
aaecba2116
move pre-release dialog into StartupFSM (and enlarge font sizing)
2019-10-10 21:24:52 -06:00
b3f2ed46b1
center all(?) early-startup dialogs
2019-10-10 19:54:33 -06:00
18b4a4213f
add initial version of StartupFSM along with its owners/users
2019-10-10 16:52:00 -06:00
2c5fcf24a5
rename ArdourStartup to NewUserWizard and rename source file(s)
2019-10-10 16:52:00 -06:00
cdbf8ee160
Show pre-release dialog also for source-tree self-builds
2019-09-29 18:25:13 +02:00
4f41367836
Add Latency Control Toolbar Widgets
2019-09-29 02:45:37 +02:00
468731c14b
goodbye Profile->...trx
2019-09-25 13:02:31 -06:00
5beeca2e95
split apart ardour_ui.cc into a series of distinct source modules.
...
Should be a 100% no-op - no code was altered, just moved
2019-09-23 14:49:06 -06:00
fcc7f335a1
UI goto_start() action no longer forces roll-after-locate
2019-09-22 12:23:54 -06:00
ca4b6bb7e9
NO-OP: fix some Wimplicit-fallthrough, see prev commit
2019-09-18 17:38:01 +02:00
da88e9d34c
Foldback gui: Added hide and show
...
- New menu item in view menu
- Foldback strip has hide button
- Adding a new foldback bus sets show
- setting is saved and restored
2019-09-11 16:36:05 -07:00
d59aa81b39
Remove NO-OP, ProcessThread::init() does nothing
2019-09-09 18:43:57 +02:00
cfc8a2c263
Push UI theme to backend, LV2 plugin options
2019-08-26 18:58:34 +02:00
994b59c836
Prefer implicit deletion of .pending
...
Session destruction removes ".pending", no need to explicitly delete
the file.
2019-08-16 01:55:54 +02:00
9fb403546c
Allow to inhibit screensaver/system sleep
2019-08-11 20:39:39 +02:00
6bdf5cb0d7
Gui should allow foldback bus to be mono.
2019-08-06 13:16:44 -07: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
0717c4c71a
Prefix env variable with "ARDOUR_" 2/2
2019-07-26 16:58:31 +02:00
0d1d6d6975
remove -C,-E and -U command line options
2019-07-18 14:08:07 -06:00
47fcc85b19
remove debug output
2019-07-18 10:53:55 -06:00
b47df18d5c
don't bother with session dialog if user has already provided the name
...
This recognizes that if a template is desired, it can be also be
set from the cmdline
2019-07-18 10:53:44 -06:00
5f8c9a4e60
if a user specifies just a session name (not path) and it does not exist, use the default session folder
2019-07-18 10:53:34 -06:00
8f9a1e1cf4
Use exit-status macros for compatibility 3/3
2019-07-04 22:21:49 +02:00
1cec6d1250
Remove toolbar meter (meter type) context-menu
...
This meter is follows in sync the master-bus meter. The type should
be set directly on the master-bus.
2019-06-09 19:45:01 +02:00
31815b5f26
NO-OP: whitespace
...
This fixes mostly <tab> after <space> and similar <tab> not used
for indenting as well as some related code alignment issues.
2019-04-13 17:57:46 +02:00
1557ea5314
Cleanup "Clean-up", hide dialog before starting cleanup
2019-04-07 18:51:50 +02:00
51df70b405
ActionManager::get_all_actions() no longer includes <Actions> in the paths it returns, part 3 (GUI)
2019-03-20 11:15:47 -07:00
7b96fa1c5e
Fix some Gtk::Menu memory leaks
...
A Gtk::manage()d widget will be deleted when its parent container
is destroyed. Top-level context menus are not inside a container and
hence need to be manually deallocated.
The solution here is to use a shared Gtk::Menu pointer that is
centrally de/re-allocated.
This works because the GUI is single-threaded and at most one
context menu is visible at a time.
2019-03-07 23:50:50 +01:00
64e1d691ec
Prefer using RAII to suspend signals
2019-03-07 23:50:43 +01:00
f098a6fb06
Revert "Show VCA pane whan adding a VCA"
...
This reverts commit 9a0260148d
.
2019-03-01 18:44:52 +01:00
9a0260148d
Show VCA pane whan adding a VCA
2019-03-01 18:00:11 +01:00
8244026533
Consolidate ToggleAction cast, use new API
...
Furthermore we can assume that all Actions are registered and
Unregistered actions will ::abort() execution.
2019-02-28 23:54:42 +01:00
b0f99312d8
get ordering correct of global binding set creation and action registration
2019-02-16 01:15:12 -07:00
c60d8cf747
(libs) call ARDOUR::init_post_engine() from within libardour rather than requiring "users" of the library to arrange for it
2019-01-16 15:29:38 -06:00
9d1fa8f820
re-order startup process, registering actions early
...
Mostly to stop an error when UIConfiguration::map_parameters()
looks for an action that has not yet been registered
2019-01-13 12:01:18 -06:00
2dbf804b73
No interest in bug-reports for alpha-releases
...
So far all 6.0-pre bug reports are known issues due to incomplete
work-in-progress. There is no manpower to triage those.
2019-01-01 16:19:05 +01:00
154f9825ff
remove method and inline its contents. Nothing gained by wrapping this up
2018-12-10 16:24:27 -05:00
fc83d044f8
use ActionManager namespace, rather than ActionMap objects, and remove all per-context action maps
2018-12-10 08:34:01 -05:00
3fea1fa4f2
use new action map API instead of ActionManager::get_action
2018-12-10 08:34:01 -05:00
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
4dc65e6613
Prefer testing the session instead of using a global variable
2018-12-06 02:24:31 +01:00
df28a71252
Consolidate API, prefer ->running()
2018-11-28 15:19:39 +01:00
245d48dbd0
NO-OP: Clarify function name
2018-11-28 15:16:25 +01:00
f150f6c074
Use central method to check for engine where required
...
These are generally places where tracks/busses are created or port
connections change.
2018-11-28 00:01:50 +01:00
57d7b5de65
GUI limitation: Require engine to add/remove tracks/busses
2018-11-27 13:18:39 +01:00
9b2612f686
Make foldback bus match foldback sends namewise
...
to avoid confusion with listener sends or monitor bus
2018-11-12 22:30:32 -08:00
b06713bd8e
GUI options to select FLAC as media format
2018-11-07 19:59:51 +01:00
287ce3d477
Allow ListenBus to be added by GUI
2018-11-01 13:13:48 -07:00
4f86da8544
Wimplicit-fallthrough fixes for gtk-ardour
2018-10-26 14:53:49 +02:00
58e9bb0a14
move away from "sync source" concepts
2018-10-05 14:15:02 -04:00
d71dfdfd6a
Add a window that shows DSP usage of all plugins
...
Currently hidden, use
Editor:access_action("Window", "toggle-plugin-dsp-load")
2018-09-25 00:13:08 +02:00
6ca8ec5141
remove debug output
2018-09-23 13:48:19 -04:00
d9de14aa63
rename transport masters dialog -> window
2018-09-23 13:48:19 -04:00
db385c2e3c
new transport slave/master implementation, gui edition
2018-09-18 19:06:04 -04:00