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
c74f02025d
Unify support chat channel.
2018-08-04 21:33:21 +02:00
afb5d8cc24
Fix some GUI typos (thanks to IOhannes/debian for reporting)
2018-02-28 20:40:38 +01:00
54db84ffee
Re-add fixed-color DSP-load indicator background
2018-02-20 12:53:21 +01:00
66732e4791
Use standard Labels again.
...
Since the Gauges become little more than text with colored background,
prepare their removal. If color is wanted, use named widget-style.
2018-02-20 12:15:29 +01:00
9fe534ede8
Shuffle order of items in status bar; change behavior per oofus on irc.
...
( note: this essentially reverts ed459a )
2018-02-17 09:24:46 -06:00
fa22689b70
Consistently use Gauge to avoid the overloaded term Indicator.
2018-02-17 09:24:15 -06:00
cfed95fd0b
Remove unused status labels. (using gauges instead)
2018-02-17 09:24:14 -06:00
309ca938e6
Add Disk IO gauge.
2018-02-17 09:24:14 -06:00
f50c839ea8
Blink disk+dsp gauges on major errors ( disk out of space or xrun-while-recording )
2018-02-14 10:26:23 -06:00
dc61256466
new_grid: Rewrite of Snap and Grid. (squashed commit)
...
Separate Snap from Grid. Lots of naming changes.
Multiple simultaneous snap options allowed. Grid is one of the possible Snap options.
Grid uses the same data as the rulers. Replace complicated tempo_lines with simple grid_lines.
The Grid is zoom-scale-sensitive along with the rulers. If you are zoomed out, grid becomes coarser.
2018-02-09 09:59:39 -06:00
d03352cfac
Add Toolbar disk-space widget.
2018-01-14 18:49:27 +01:00
c7ed461bcf
Add DSP-load & x-run widget to the toolbar.
2017-12-28 15:53:40 +01:00
22c497b62d
Add a separate, dedicated transport-control window
2017-12-22 22:15:50 +01:00
aab787f686
Separate and consolidate Transport-Control-UI code
2017-12-22 22:15:50 +01:00
12a5102713
Catch exceptions by const reference
2017-11-23 10:38:52 +01:00
15150c57c1
Implement clock delta modes
...
* use new config variable
* update GUI to select delta-modes
* delegate delta-calculation to MainClock
* save offset to calculate absolute-time
2017-11-23 00:13:32 +01:00
8e8168547b
Fix NSM for distro-builds (waf install)
2017-10-31 15:26:29 +01:00
0f82302e63
Update GUI, use filename-extensions
2017-10-18 19:24:54 +02:00
b73eac450a
Fix session-archive file extension filter
2017-10-03 03:09:25 +02:00
f9710f4624
Update Session-Archive Dialog: add compression-option
2017-10-03 02:24:19 +02:00
7db12f6b12
convert codebase to use Temporal for various time types
2017-09-24 12:03:54 -04:00
b1659f8c31
correct version in pre-release warning
2017-09-19 08:34:04 -04:00
0cf116c43a
Menu Action list omit leading /
2017-09-18 10:30:37 -07: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
68e57101ad
fully remove diskstream code
2017-09-18 11:40:53 -04:00
201d536ee9
Reset RouteDialog: name edited by-user
...
* after each "Add" operation
* when cleaning the name field
2017-08-22 17:07:42 +02:00
Johannes Mueller
bb20327959
Pass session description or route comment as default description
...
... to SaveTemplateDialog
2017-08-20 21:09:30 +02:00
Johannes Mueller
245154d06a
Let user add a route template description on saving route templates
2017-08-20 21:09:30 +02:00
Johannes Mueller
ae51d5fd4e
Let the user add a template description on saving session templates
2017-08-20 21:09:30 +02:00
2cc32456ab
Lua may call C++ functions with throw. Catch them
2017-08-19 01:06:44 +02:00
e0a83a758e
Redesign Session+Route Template Meta Script API
...
Remove special-cased script types. Allow Action-Scripts to be re-used
for session-setup or route-templates.
2017-08-18 20:42:55 +02:00
f85c320759
Push user track-templates to the template list
2017-08-18 02:38:25 +02:00
d2ad0a6c5f
Consolidate add/track/route/bus wrappers -- step one.
2017-08-18 00:11:54 +02:00
ed8b8ffc71
Track Templates: redesign of Add Track dialog.
2017-08-17 13:32:01 -05:00
8ecbf0486f
Update GUI, session-format notifications, skip unusable in recent list
2017-08-17 18:52:07 +02:00
24cb141aa6
Revert "Revert ongoing SessionDialog changes for 5.11 release."
...
This reverts commit bd40b9132c
.
2017-08-16 05:23:13 +02:00
bd40b9132c
Revert ongoing SessionDialog changes for 5.11 release.
...
To be reverted again after the release. This temporarily reverts
26c88b2
, c67d1d4
, 5e41293
, 8b7df13
, ff61435
, 1039894
, 8717c0d
and GUI parts of 47d86cf
2017-08-16 01:17:35 +02:00
26c88b2a3e
Replace advanced session-setup options with script
2017-08-16 00:51:20 +02:00
b3dc75fed3
Prepare for removal of Advanced Session Options (BusProfile)
2017-08-16 00:51:20 +02:00
c2afd958ba
Re-add template script debugging (after 7d48e80e
)
2017-08-15 17:46:04 +02:00
3ff352be79
Maybe fix crash on Close Session -> Quit (windows threading)
2017-08-11 19:45:49 +02:00
7d48e80e5f
Fix MSVC builds (binding external static members)
...
This Revert "Lua GUI Instance update: prepare for template scripts"
commit c37cdf548d
.
2017-08-11 18:01:28 +02:00
f27e53f485
Add support for scripted meta-templates.
2017-08-11 15:24:05 +02:00
80e0094ef4
Add support for templates to invoke one-time scripts
2017-08-10 02:26:08 +02:00
1b5354632f
Fix Session > New (cancel retains the current session if any)
2017-08-03 19:25:14 +02:00
53565962b2
Ask user to save when using save-as or snapshot+switch.
2017-07-26 23:49:57 +02:00
1f5ebc5485
Remove ArdourPrompter wrapper
2017-07-17 21:06:04 +02:00
eb1e423b75
Remove <gtkmm.h> include from header files.
2017-07-17 21:06:04 +02:00
f9e5e4360e
Move more Gtkmm2ext widgets into libwidget
2017-07-17 21:06:04 +02:00
f6e182b937
Move Gtkmm2ext widgets into libwidget
2017-07-17 21:06:04 +02:00
5c92613698
Separate Ardour UI widgets into dedicated library
2017-07-17 21:06:04 +02:00
Johannes Mueller
610d9fd3b9
First draft of a template management dialog
...
Goal is to a simple dialog that can rename and remove templates. This is
helpful in order to keep the template list tidy.
So far it works for session templates. Track templates tbd.
2017-07-12 16:15:03 +02:00
54aa82cd4b
Another approach for stuck splash-screens:
...
Use Editor::first_idle() which is invoked every time when a session
is loaded (via set_session). This will catch ALL successful
session loads.
Failed session-loads explicitly pop down the splash in
ARDOUR_UI::load_session.
This only leaves "abort session open" which returns to the
session-open dialog (which pops back the splash).
2017-07-03 16:19:10 +02:00
Thomas Brand
218528dbe9
Fix some typos (closes GH PR #356 )
2017-07-01 21:29:46 +02:00
Thomas Brand
63ea7b6516
NO-OP whitespace (updated GH PR #357 )
2017-07-01 19:28:26 +02:00
2b1b0aa240
Fix crash when rapidly switching snapshots
...
ARDOUR_UI::load_session() calls flush_pending() which runs
gtk_main_iteration()s until idle.
If a user selects another snapshot from the sidebar, load_session()
is called again (from a call to load session)
2017-07-01 03:10:50 +02:00
1e97c09eed
Fix adding tracks/busses at the top
2017-06-17 04:37:10 +02:00
Daniel Sheeler
2c41df9474
add route dialog now has "Add" and "Add and Close" buttons. "Add" keeps dialog open so user can add multiple templates.
2017-06-03 21:44:48 -05:00
b21c4b41a3
when creating a new session after working on one, the "Cancel" button should be a quit button.
...
This avoids ending up with a null Session pointer in the GUI (#7369 )
2017-05-29 15:35:03 -04:00
c72e3f16a1
Use correct property names for Editor transport controllable state
...
These are normalized in the PBD::XMLProperty ctor, which is why
Editor::get_transport_controllable_state() uses the hyphenated names to
retrieve the properties and will not result in any state format change.
2017-05-26 08:48:04 +10:00
24d5f1a624
Tweak/fix splash screen event-loop
...
Prevent possible endless loop in Splash::display() and handle
some related edge-cases and race conditions WRT expose_done
and is_visible().
2017-05-11 14:20:56 +02:00
ba24f287ca
Make -A open action list in a browser instead of command terminal.
2017-04-29 22:47:24 -07:00
73e80b4429
Set -b to open in browser.
2017-04-29 15:37:31 -07:00
620f3b9358
Change actions to -A and use -b to output keybindings
2017-04-28 08:19:20 -07:00
1ebf35f137
Allow to hide engine dialog w/o unloading session.
2017-04-27 21:10:37 +02:00
68883cbb56
Changed "ardour" to PROGRAM_NAME
2017-04-22 15:32:48 -07:00
b81d6a6160
Set -b switch to only two columns, correct options text.
2017-04-22 08:07:35 -07:00
5d5642d6ec
Add HTML output for -b so that output can replace actions page in manual.
2017-04-21 12:58:59 -07:00
e15524cc64
Use PBD::to_string instead of std::ostream when setting up video server url
...
To avoid issues with locales that use grouping/thousands separators.
2017-04-19 09:36:59 +10:00
41493d556a
Use XMLNode::get/set_property API in ARDOUR_UI class
2017-04-19 09:36:55 +10:00
fda05ac64b
Use ID::to_s() in gtk2_ardour instead of ID::print()
2017-04-19 07:49:58 +10:00
47ea6534d0
Add option to disable blinking alert buttons.
2017-03-26 21:42:01 +02:00
4ae5737beb
Add GUI-Idle debugging/profiling util
2017-03-15 11:34:05 +01:00