Commit graph

1166 commits

Author SHA1 Message Date
Robin Gareus
ee1e7ad00e
Clear waveform cache when rebuilding peak-files 2020-12-21 21:13:13 +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
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
Robin Gareus
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
Paul Davis
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
Paul Davis
826bdc413c fix behavior of ARDOUR_UI::transport_rewind/forward actions 2020-04-20 17:18:37 -06:00
Robin Gareus
606d6de4b1
Consistent Lua script error and print() output 2/2 2020-04-18 18:16:12 +02:00
Robin Gareus
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
Robin Gareus
232b21d289
Statusbar: tweak tooltips 2020-03-30 03:52:20 +02:00
Robin Gareus
b49764edf5
Statusbar: link session property dialog for format & timecode 2020-03-30 01:10:00 +02:00
Robin Gareus
e43cc9c7bb
Statusbar: add session-path display 2020-03-30 00:14:25 +02:00
Robin Gareus
325477803e
Statusbar: fix >24h disk-space label 2020-03-29 23:54:34 +02:00
Robin Gareus
7a98605748
Statusbar: do not highlight 100% DSP load when freewheeling 2020-03-29 21:05:23 +02:00
Robin Gareus
a49365ef1e
Statusbar: use white on red as fixed color error highlight 2020-03-29 21:04:21 +02:00
Robin Gareus
6f4d1f5e2e
Use light font for status-bar labels instead of italic 2020-03-29 21:02:26 +02:00
Robin Gareus
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
Paul Davis
d7500056fc stop transport clocks from jumping after the playhead is moved via a CursorDrag 2020-03-25 19:24:38 -06:00
Paul Davis
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
Paul Davis
900bab7271 basic pass at deleting scratch sessions 2020-03-24 21:15:32 -06:00
Robin Gareus
e3e794f3a8
Fix crash at exit when closing session before quit 2020-03-25 02:23:16 +01:00
Paul Davis
4d91637b45 handle scratch session when quitting 2020-03-24 18:26:12 -06:00
Paul Davis
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
Robin Gareus
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
Robin Gareus
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
Robin Gareus
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
Robin Gareus
44e55c501e
Add some const'ness 2020-01-30 23:35:37 +01:00
Robin Gareus
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
Paul Davis
47767738b9 rename DoTheRightThing to RollIfAppropriate 2020-01-18 08:49:18 -07:00
Paul Davis
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
Robin Gareus
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
Robin Gareus
1881d73f43
Remove unused API (no more unconditional splash pop-back) 2019-12-14 23:44:04 +01:00
Robin Gareus
2b55d6dce3
First batch of MessageDialog replacements 2019-12-14 23:44:01 +01:00
Robin Gareus
561cf86919
Fix session sensitivity of some toolbar controls 2019-12-13 16:33:12 +01:00
Robin Gareus
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
Paul Davis
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
Paul Davis
3e443bc237 improve operation of ARDOUR_UI::toggle_roll() for loop mode (particularly when loop-is-mode) 2019-11-02 16:32:18 -06:00
Paul Davis
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
Paul Davis
be12af293d remove now-unused member variable 2019-10-24 21:32:46 -06:00
Paul Davis
0ea395b934 startupFSM is now responsible for attaching GUI to AudioEngine 2019-10-24 21:32:46 -06:00
Robin Gareus
ebb89ba805
Super basic Virtual-Keyboard UI 2019-10-18 03:50:52 +02:00
Paul Davis
44445ea309 remove Session::AudioMidiSetupRequired signal (no longer necessary) 2019-10-12 12:45:18 -06:00
Paul Davis
74454d1859 do not accidentally re-create splash 2019-10-11 14:44:30 -06:00
Paul Davis
54acf6af6a enforce singleton nature of Splash a little more rigorously, and slightly rationalize it's use 2019-10-11 14:29:55 -06:00
Paul Davis
aaecba2116 move pre-release dialog into StartupFSM (and enlarge font sizing) 2019-10-10 21:24:52 -06:00
Paul Davis
b3f2ed46b1 center all(?) early-startup dialogs 2019-10-10 19:54:33 -06:00
Paul Davis
18b4a4213f add initial version of StartupFSM along with its owners/users 2019-10-10 16:52:00 -06:00
Paul Davis
2c5fcf24a5 rename ArdourStartup to NewUserWizard and rename source file(s) 2019-10-10 16:52:00 -06:00
Robin Gareus
cdbf8ee160
Show pre-release dialog also for source-tree self-builds 2019-09-29 18:25:13 +02:00