Commit Graph

1198 Commits

Author SHA1 Message Date
Mads Kiilerich 1e77814c62 MainClock: drop 'primary' parameter
The main clock no longer use direct access to the config system, and
is no longer restricted to know whether it is primary clock or not.
2022-11-20 02:31:22 +01:00
Mads Kiilerich 728e463d01 AudioClock: make last_when public and use it instead of current_time
Having current_time as a public alias of the private last_when did not
add any clarity to the abstraction of last_time. A small step, but still
room for improvement.
2022-11-17 18:04:08 +01:00
Paul Davis ffd089720d ardour UI: provide proxies for BasicUI trigger/cue methods 2022-11-16 14:15:34 -07:00
Paul Davis 5330d73c35 ArdourUI HAS-A BasicUI
The idea is to allow some reduction in code duplication
2022-11-16 14:15:34 -07:00
Robin Gareus 0bf8e7d8cf
Make clock mode settings session independent
Much like the edit-tool and grid-types, clock-modes are UI state.

Saving the UI state separately allows them to be used
consistently for new sessions. Previously clock-modes were set
initially (at application start) and when loading sessions.

The clock modes of newly created sessions was different
depending on loading another session prior to creating the
session. This is now no longer the case.
2022-10-10 21:03:45 +02:00
Paul Davis 0d5fd0de0c rename "library manager" to "library downloader everywhere (breaks string freeze) 2022-09-27 11:22:56 -06:00
Robin Gareus 6f9f7fb831
Fix typo, shorten dropdown strings 2022-09-19 23:24:42 +02:00
Robin Gareus 5fb628d3ed
Use new record-mode pref (2/2), GUI control 2022-09-19 22:50:11 +02:00
Paul Davis 583bfa8878 remove some library mgmt related code that should not have been committed 2022-09-07 17:27:51 -06:00
Paul Davis 5461bfb218 add a new global window for reviewing and (soon) downloading loop libraries 2022-09-07 17:03:08 -06:00
John Emmas 30efdbe0f8 Some minor reverts to commit #63f94d29463 (from 25th May 2022)
These were preventing Ardour from compiling on Windows (Clang or MSVC)

Possibly would've been buildable with MinGW but I don't have that available to test.
2022-08-21 12:34:10 +01:00
itmuckel 63f94d2946 Remove unused includes 2022-08-19 09:27:19 -06:00
Colin Fletcher c9446aa1e1 gtk2_ardour: set region marks into currently recording regions
Region actions are generally set insensitive whilst recording, so
special-case the "add-region-cue-marker" action by explicitly enabling it
when starting to roll in record. Additionally, the action becomes disabled
again after it's been executed, so re-enable it after queuing the cue when
recording.
2022-08-09 14:03:16 -06:00
Robin Gareus 7408a9958e
Fix duplicate UI initialization
When loading the very first session is canceled (e.g.
sample-rate mismatch -> Do not load session) or fails otherwise,
execution returns to the startupFSM.

Loading another session after that then takes the same path again:

StartupFSM::dialog_response_handler() -> StartupFSM::engine_running()
-> ARDOUR_UI::attach_to_engine()

The call needs to be idempotent, otherwise setup_windows(),
create_editor() etc are called a second time and Ardour crashes.
2022-08-06 21:44:55 +02:00
Robin Gareus 84d6a0a75d
Copy demo sessions (if any) for new-users
* Fix demo-session glob (missing "*" + session_archive_suffix)
* Copy demo-session also when copying settings from older version
* Also add demo-session to recent-list if it was previously unpacked
  for new major versions.
2022-07-27 01:08:01 +02:00
Paul Davis e2e6274956 libardour: change API of Session::request_locate() to include "force" argument (GUI edition) 2022-05-27 18:49:23 -06:00
Robin Gareus d513d8b876
Do not allow dir-separators in session-template names
See also: 576f10b6f1
2022-05-15 19:53:12 +02:00
Robin Gareus f8e1202ed4
Bootstrap IO Plugin UI 2022-05-09 17:39:05 +02:00
sra 76a0b3c70e
Disable sandbox in lua SessionInit scripts. 2022-04-21 00:34:10 +02:00
Mads Kiilerich 7f649efd42
gtkmm: use set_can_focus() instead of deprecated Gtk::Widget::set_flags(CAN_FOCUS) 2022-04-08 21:11:06 +02:00
Mads Kiilerich 440264e0b8
gtkmm: use ALIGN_START instead of deprecated Gtk::AlignmentEnum::ALIGN_TOP 2022-04-08 21:11:06 +02:00
Mads Kiilerich 2aa72891f3
gtkmm: use ALIGN_START instead of deprecated Gtk::AlignmentEnum::ALIGN_LEFT 2022-04-08 21:11:06 +02:00
Mads Kiilerich a86aa31747
gtkmm: use get_visible() instead of deprecated Gtk::Widget::is_visible() 2022-04-08 20:20:10 +02:00
Mads Kiilerich d52c727ec5
gtkmm: use get_mapped instead of deprecated Gtk::Widget::is_mapped() 2022-04-08 20:20:10 +02:00
Ben Loftis b25aa18c80 add_route_dialog: add a checkbox to show Tracks on the Cue page 2022-03-18 18:36:06 -05:00
Ben Loftis 7f89db9f36 primary clock should show BBT now 2022-03-15 09:03:40 -05:00
Robin Gareus c593ac75a5
Remove Video Export Infobox (1/2) 2022-03-11 04:55:46 +01:00
Robin Gareus 370adfa322
Add option to hide cue rec/play toolbar buttons 2022-03-01 17:53:11 +01:00
Ben Loftis 54d794e242 rough-in global Cue functions (rec-enable and play-enable i.e. cue-ffwd) 2022-02-12 21:46:30 -06:00
Ben Loftis 986942fe96 Cue Page: rename Trig -> Cue 2022-01-25 19:50:57 -06:00
Robin Gareus 5f3cd26d02
Cleanup at exit, delete duplicate_routes_dialog 2022-01-24 21:25:20 +01:00
Robin Gareus de355155ed
NO-OP: clarify variable name (2/2) 2022-01-15 00:06:38 +01:00
Paul Davis 7ade2099ce move point of deletion of video timeline
The "ask about deletion" dialog will run a recursive main loop
which will call idle handlers, which could call the visual change
handler if the playhead is rolling. VTL is assumed to stoll
exist when this is called
2021-12-15 15:52:15 -07:00
Paul Davis 237dfb53e7 remove add trigger check box from add route dialog (always use triggers) 2021-12-13 15:12:36 -07:00
Houston4444 692aa7bbb8
Add NSM ':switch:' capability
This allows to switch from one Ardour session to another without
application restart.

This also include some minor related NSM fixes.
2021-12-04 14:34:44 +01:00
Robin Gareus 9ce604bc03
New Tabbable: Trigger-Page skeleton 2021-12-01 23:10:08 +01:00
Paul Davis 9e763c2672 remove all dangling event-loop-precall code 2021-10-11 17:48:53 -06:00
Paul Davis c0720c7a4c don't show standalone triggerbox window after adding tracks with a triggerbox 2021-10-10 13:53:45 -06:00
Paul Davis 305c9ba6e9 triggerboxGUI: use new API and tweak add route dialog to allow choice to add triggerbox 2021-10-08 13:45:27 -06:00
Robin Gareus 747b24f063
Change LuaWindow into an ArdourWindow
* remember window visibility, size and position
* Show as toggle in the window-menu (rather than show action)
* reduce specialization, use WM and ArdourWindow infrastructure
  (transient parent, window-type, etc)
2021-09-20 04:26:24 +02:00
Robin Gareus 851fab7ec3
Print g_log messages to stdout as well
This handles an edge-case in case the message arrives
before the UI is up, there is still a message printed,
before Ardour crashes (e.g. when setup_windows() fails).
2021-09-20 04:16:09 +02:00
Paul Davis aed9adceee display triggerbox GUI window when adding a track that has one 2021-08-13 12:51:36 -06:00
Paul Davis aa4e578780 no instrument by default on trigger tracks 2021-08-13 12:51:36 -06:00
Paul Davis 73e19c8fa7 add triggers to trigger tracks 2021-08-13 12:51:36 -06:00
Paul Davis 139a051b18 remove default args to Session::new_midi_track() (gui edition) 2021-08-13 12:51:36 -06:00
Paul Davis f0ff72c669 remove old call to set libtemporal thread local sample rate 2021-08-13 12:51:31 -06:00
Paul Davis ae01dafcce use Temporal::set_thread_sample_rate() rather than explicit assignment 2021-08-13 12:51:30 -06:00
Paul Davis 772d70ae4c use glib event callback to invoke per-thread code every time the GUI event loop does stuff 2021-08-13 12:51:29 -06:00
Paul Davis 2a08e4bdaa continued work on timeline types conversion. in theory, just editor_ops.cc remains 2021-08-13 12:51:29 -06:00
Paul Davis 1b06fcb335 another snapshot of ongoing work on timeline types. still not compilable 2021-08-13 12:51:29 -06:00