13
0
Commit Graph

56 Commits

Author SHA1 Message Date
caae3501ec
TransportMasterWidget may not have a session
Other parts in this dialog already test for session == nullptr.
This can happen in the Preferences, when switching a timecode
master w/o a session (not possible in Ardour, but some derivative
project).
2024-05-13 23:11:43 +02:00
87181710b2
Drop UI shared_ptr references to Transport Masters
This allows ARDOUR::cleanup to unregister ports before
destroying the Audio Engine. This fixes a crash at exist
with JACK since 0786be8.
2023-12-05 04:37:39 +01:00
b35518e212 switch from boost::{shared,weak}_ptr to std::{shared,weak}_ptr
This is mostly a simple lexical search+replace but the absence of operator< for
std::weak_ptr<T> leads to some complications, particularly with Evoral::Sequence
and ExportPortChannel.
2023-03-24 14:19:15 -06:00
86d9bcf525 Remove direct use of audio-engine rate (2/2)
This is in preparation for sample-rate independence.
2023-01-22 20:07:40 +01:00
c44b40afd7
Indicate UTF8 literals - fixes glyph rendering with MSVC (2/2) 2023-01-16 21:41:22 +01:00
7c5d324136 remove transport master active controls widgets 2022-09-13 16:47:21 -06:00
9ea1e5bdee move color utility functions from ARDOUR_UI_UTILS to Gtkmm2ext namespace (GUI) 2022-08-10 21:11:52 -06:00
Mads Kiilerich
d52c727ec5
gtkmm: use get_mapped instead of deprecated Gtk::Widget::is_mapped() 2022-04-08 20:20:10 +02:00
2a08e4bdaa continued work on timeline types conversion. in theory, just editor_ops.cc remains 2021-08-13 12:51:29 -06:00
b2c4e71a45
Subscribe to pretty-port name changes (GUI) 2021-01-18 03:18:20 +01:00
10ea21a35f
Fix adding transport-master
Resolve ambiguity between Dialog::add_button() and add_button member,
also use clicked signal for ArdourButton.

signal_button_press_event() only works with
ArdourButton::set_fallthrough_to_parent
2020-11-01 23:28:30 +01:00
f2cf60900b
TMM: Fix BPM display format #8118 2020-05-16 23:15:06 +02:00
a9fff59229 TMM: do not allow changing transport master while slaved (GUI edition) 2020-05-15 21:06:40 -06:00
d6b0c77bb1
TMM: display timecode using session FPS 2020-05-15 01:47:05 +02:00
6622c55912
TMM: fix last message + age display 2020-05-13 23:57:40 +02:00
5120b650c5
TMM dialog: fix rendering performance
This removes expensive markup parsing and directly sets
timecode and delta-time as plain text. The Labels use the
main clock's color schema, and dedicated ArdourMono font.
2020-05-12 21:10:28 +02:00
20c09ccfc3 Transport Masters dialog: don't use an uninitialized char array. 2020-05-11 18:37:12 -05:00
26dbd30ae6 Transport Masters dialog: various layout changes to improve legibility
Use Fonts and Color to help discriminate columns:
Values that come from the TC Master are now in black boxen (ToDo: use gtk theming)

Reduce the number of columns, to improve legibility:
Consolidate the Slave's current TC chase value and Delta (offset from Ardour current TC)
Consolidate the last message received, and how recently it was received
Remove Collect checkboxes (just disconnect the port if you don't want it to run)
2020-05-11 15:37:40 -05:00
7581ec5ac5 Transport Masters dialog: fix typo 2020-05-11 15:37:36 -05:00
44d87f2cd7
TMM GUI: display delta time from all slaves 2020-05-11 18:37:16 +02:00
18228edd54 use ardour button rather than gtk::button in transport master widget 2020-04-24 15:54:29 -06:00
b1d5e8611f carefully position floating text entry when editing transport master names 2020-04-24 15:54:15 -06:00
75b9689f0c only update port lists when a TransportMastersWidget is actually mapped
The overhead of rebuilding for every port registration and unregistration was absurd
2020-04-24 12:00:02 -06:00
afcc95167e fix copy-paste error that prevent transport master request mask from being set correctly 2020-04-24 07:44:41 -06:00
3bbad66a99 control over transport-masters-just-roll-when-sync-is-lost 2020-03-23 19:08:57 -06:00
e04f0a4c2c tweaks to display in TransportMastersWidget to reduce width jumping 2020-03-23 18:34:31 -06:00
1c551e432c fix port/connection combo/dropdown for TransportMastersWidget 2020-03-22 22:45:28 -06:00
91a87fbc5b somewhat convoluted reworking to get TransportMastersWidget's per-row port combos to update for hotplug
This approach should extended to other things, notably control surfaces
2020-03-13 22:16:37 -06:00
45f5513b66 remove debug output 2020-03-10 11:56:10 -06:00
f827294b0b small improvements to Transport Masters dialog (in preferences and elsewhere) 2020-03-10 11:40:03 -06:00
37d9ec34c8 add ::usable() method to TransportMaster objects to allow GUI to show their usability after backend/engine changes 2019-09-17 16:54:10 -06: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
3bc9281c31
Fix some Gtk::Menu related 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.

This adds explicit delete calls for menus where there is a
member variable reference to the Menu.
2019-03-07 23:50:32 +01:00
896091d256 do not attempt to update transport master rows if audioengine is not running 2019-02-06 13:54:05 -07:00
59b709be2b remove debug output 2019-01-25 11:09:31 -07:00
89d54b8790 minor refactorization of how the transport master widget is rebuilt 2019-01-25 09:23:08 -07:00
8b1c8bb511 use C++, dammit 2018-10-07 12:57:56 -04:00
9134323f4a show message if adding transport master doesn't work 2018-10-07 12:43:14 -04:00
3c0f749370 make name entry activation close dialog (potentially) 2018-10-07 12:36:04 -04:00
44cae0a624 delete transport masters from an idle callback 2018-10-07 12:29:52 -04:00
eab98962bc add dialog for adding new transport masters 2018-10-07 11:10:45 -04:00
e4a914e26e make remove work for transport masters (bug fix, really) 2018-10-05 14:29:15 -04:00
e2be5b7b02 remove debug output 2018-10-05 14:18:43 -04:00
e28f96ae73 tweak up display of "time since last msg" for transport masters 2018-10-05 14:15:02 -04:00
58e9bb0a14 move away from "sync source" concepts 2018-10-05 14:15:02 -04:00
1b71e4db2c laying the groundwork for adding/removing transport masters 2018-10-05 14:15:02 -04:00
4840543272 show last received and when for timecode timestamps in transport masters widget 2018-09-27 11:31:13 -04:00
f8264ed1fb add name editing for transport masters 2018-09-27 11:31:13 -04:00
5685865eae use new TransportMaster::speed_and_position() API 2018-09-27 11:31:13 -04:00
4bdf0dad20 rearrange parts of transport masters dialog, and fix tooltip issue 2018-09-24 15:46:11 -04:00