13
0
Commit Graph

503 Commits

Author SHA1 Message Date
923d07be31 remove debug output 2018-12-27 17:18:21 -05:00
b09ac181e0 div wrapping 2018-12-27 17:18:21 -05:00
0805b6b925
Consolidate two more engine-checks 2018-11-28 15:17:57 +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
1d8dc009f7
Catch potential exceptions when adding tracks/busses 2018-11-27 13:19:34 +01:00
57d7b5de65
GUI limitation: Require engine to add/remove tracks/busses 2018-11-27 13:18:39 +01: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
a2fefe68db use modified API name in GUI 2017-09-18 11:40:53 -04:00
e6064b286e basic GUI framework for setting Disk I/O options 2017-09-18 11:40:53 -04:00
58e49e3512 cue monitoring for audio (GUI aspects) 2017-09-18 11:40:53 -04:00
b5e1eb7538 Migrate PC dialog to RouteUI, midnam handing to RTAV.
This allows to to bring up the PC dialog from Editor/Editor-Mixer & Mixer
for both MIDI Tracks as well as MIDI Busses.
2017-09-09 18:25:36 +02:00
5f2132e9cc Fix Route-template file suffix 2017-08-23 21:33:29 +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
c5c3498e98 Use const wherever you can 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
af103cf3c2 Remove old destructive API (non layered is a dynamic mode) 1/2 2017-08-18 20:59:52 +02:00
fde0e293a3 Remove unused "mark" parameter from stop_touch() API 2017-07-24 01:59:18 +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
b5e9451bc7 Remove unused sources & includes 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
b7dc469515 Remove old API (unused, incorrect for grouped tracks) 2017-07-08 15:43:55 +02:00
Thomas Brand
63ea7b6516 NO-OP whitespace (updated GH PR #357) 2017-07-01 19:28:26 +02:00
af6941ac34 Prepare VCA Automation Lanes -- refactor TAV
* add an abstract StripableTimeAxisView (Route TAV + VCA TAV)
* move common strip-methods into STAV
* Add Automation Lanes to VCA TAV
* Allow ATAV without Automatable for VCA Controls
2017-06-15 16:06:32 +02:00
1794d08789 Fix Monitor Group override 2017-06-12 20:47:44 +02:00
0afd18eb5d NO-OP: whitespace 2017-05-04 00:43:40 +02:00
a23ac120f2 The return of explicit exclusive solo. 2017-05-04 00:42:07 +02:00
962e7a214a Revert "consistent use of context-menu popups"
This reverts commit b3722f7063.

In some cases ardour shows context-menu on right-mouse-button
release. In this case selecting a menu-entry should happen
with the left-mouse button (or any button?!)

Using ev->button is only correct if the menu is temporary and only
visible while the button is held, button release then activates the
menu-item.

This needs further work, in some cases allowing any button (0) to work
makes sense and overall consistency needs to be improved.
Different places use different strategies for context-menus which
don't always match the button used in the event-handler.

This is a hotfix (to make TAV context menus work again with left-click)
2017-03-24 14:48:46 +01:00
b3722f7063 consistent use of context-menu popups 2017-03-16 02:36:48 +01:00
05dfc1fdc1 Update color stripable color-picker(s)
* consistent behavior (Route, VCA)
* non-modal
* a single color picker for each RouteUI/VCA at most
* fix bug: VCA picker staying around even when VCA was deleted
2017-03-11 00:33:43 +01:00
5c4a2025f1 Fix touching mute automation (mostly)
controllable->set_value() from GUI context will eventually queue
a session-rt command. By the time the realtime command runs, the
controllable needs to be in "touch" mode.

The AutomationController "toggle" UI worked around this by directly using
the underlying API (ignoring slaved-controls and ignoring groups).
The RouteUI's GUI wasn't able to write mute-automation at all.

This commit is a compromise: press + hold (touch) + release button.

(it may need further special-casing for _desc.toggled in
AutomationControl::actually_set_value(), also undoing automation-writes
is currently  not working correctly)
2017-02-28 05:01:17 +01:00
1071c0e788 Likely fix for bug: cannot change track colors in older 4.x sessions. 2017-02-27 20:51:17 -06:00
0808b87138 Add GUI part to immediately fan-out multi-out instruments on track creation 2017-01-21 00:40:18 +01:00
c6a7c9417e Plug some mixer memory leaks 2017-01-20 13:53:45 +01:00
cf5a0de709 Add initial GUI support for global monitor states 2017-01-16 19:54:42 +01:00
Nil Geisweiller
4c66e36b91 Fix indentation 8 whitespaces to tab 2016-12-21 23:09:40 +01:00
8ba7e8f4ef Hide/remove per-track record-mode in favor of global setting. 2016-12-17 02:43:42 +01:00
ae1d4a9346 Fix route color selection dialog 2016-11-29 22:39:20 +01:00
ca55fbf2f8 The DisplaySuspender is useless with async Session RTEvents 2016-11-25 10:05:36 +01:00
5ab33bdb63 Fix crash when fanning out from editor mixer
when creating a new track or bus editor-selection changes and the
editor-mixer's _route changes.
2016-11-16 05:24:01 +01:00
857c0d4a5e Refine instrument fan-out:
* prefix (rather than suffix) portgroup-name
* check if group already exists
* disconnect targets (when autoconnect preference is enabled)
* expose tracks/busses option
2016-11-11 10:48:33 +01:00
33942e6d52 Implement instrument fan-out options (group, track/bus) 2016-11-10 21:39:20 +01:00
b116a68a5c C++ implementation of fan_out_instrument.lua 2016-11-10 04:54:59 +01:00
24eaec1fa8 handle blink-rec-arm change without application restart 2016-10-13 18:07:41 +02:00
822810b88f the endless quest to plug memory leaks -- episode 379 2016-07-25 17:38:59 +02:00
cf52d6e4b4 enough with umpteen "i18n.h" files. Consolidate on pbd/i18n.h 2016-07-14 14:45:23 -04:00
da7d7f9502 many changes associated with rationalizing selection flow 2016-07-06 13:39:10 -04:00
bca1be28e3 avoid unnecessary multiple calls to RouteUI::update_monitoring_state() 2016-07-04 09:27:33 -04:00
d233b33707 operate directly on realtime controls, not via Session 2016-07-04 09:27:33 -04:00
176660fff4 fix logic of RouteUI::set_color_from_route() 2016-07-01 18:03:29 -04:00
15fcb0845a make sure RouteUIs show selection status at startup 2016-06-10 13:57:18 -04:00
d403eaf1a0 phase out phase in favor of polarity 2016-06-10 01:18:20 +02:00
212afd402c color management and handling for VCAs 2016-06-09 16:03:14 -04:00
0678d0ada1 use new ControlSlaveUI object in mixer strip 2016-06-09 13:12:09 -04:00
3f0cbfc152 comment and minor fix 2016-06-08 21:25:48 -04:00
7015ece8ef use 4.x and earlier route colors 2016-06-08 21:18:20 -04:00
f0eef82364 alphabetize local includes 2016-06-08 21:18:20 -04:00
01812f53c3 use, or mostly use PresentationInfo for selection status of Routes.
Needs extension to Surfaces, replacing GuiSelectionChanged signal concept
2016-06-05 20:50:57 -04:00
3e12d4b4a6 use PresentationInfo color to set route colors. GUI appears to respond as expected 2016-06-05 17:16:20 -04:00
b69776ba15 catch up on change in definition of various AxisView {set,is}_selected() implementations 2016-06-05 16:33:02 -04:00
bdd2f25c8b RouteUI is no longer an AxisView so use ARDOUR_UI::instance()->gui_object_state() directly 2016-06-05 16:33:01 -04:00
77f19ff8da add braces 2016-06-05 16:33:01 -04:00
c31435b474 RouteUI is now also derived from SessionHandlePtr but NOT AxisView. Fix initialization.
Only "most derived" classes can initialize virtual base classes (SessionHandlePtr)
2016-06-05 16:33:01 -04:00
2aeb33989e adjust color API for RouteUI to use PresentationInfo's color 2016-06-05 16:33:01 -04:00
171b70927a make AxisView::marked_for_display() be virtual so we can use the a Stripable's PresentationInfo hidden() status 2016-06-05 16:33:01 -04:00
8818e1887a there is no explicit "Remote Control ID" control anymore - all done by ordering in the GUI 2016-06-02 19:19:22 -04:00
d30266dfc3 use new record safe control in GUI 2016-05-31 15:30:45 -04:00
482873760c initial implementation of VCA time axis views 2016-05-31 15:30:44 -04:00
f022784014 convert editor routes code to use Stripable 2016-05-31 15:30:44 -04:00
e0ff70cf86 first vaguely working version using PresentationInfo
remote control ID and "order keys" have been removed.
2016-05-31 15:30:42 -04:00
5b5e64d860 remove Route::listening_via_monitor()
This is better tested with direct use of the solo_control and
Config->get_solo_controls_are_listen_controls()
2016-05-31 15:30:41 -04:00
69250b64ea move ever close to working master/slave logic, this time with audio testing 2016-05-31 15:30:41 -04:00
202ddba9e2 remove more debug output 2016-05-31 15:30:41 -04:00
6de4953be8 a variety of changes that get closer to correctly functioning behaviour for VCA solo+mute (BUT ARE NOT DONE YET) 2016-05-31 15:30:41 -04:00
4615e090b4 remove some debug output 2016-05-31 15:30:40 -04:00
e1bcd70712 a slew of as-yet incomplete work to get VCA solo+mute closer to working 2016-05-31 15:30:40 -04:00
b2b5c965c8 some tweaks for solo logic to get things working as they were before (correctly) 2016-05-31 15:30:40 -04:00
537272b3b1 direct connect monitoring changes to the real RouteUI method (no-op, really) 2016-05-31 15:30:40 -04:00
653ae4acd6 universal change in the design of the way Route/Track controls are designed and used. The controls now own their own state, rather than proxy for state in their owners.
Massive changes all over the code to accomodate this. Many things are not finished. Consider this a backup safety commit
2016-05-31 15:30:40 -04:00
c107f1ab56 show VCA master mute state in RouteUI, even if Config->get_show_solo_mutes() is false (since it is orthogonal) 2016-05-31 15:30:40 -04:00
36784ee94f use route automation control Changed() signals for solo/mute in GUI 2016-05-31 15:30:40 -04:00
75b327964b tweak mixer VCA button appearance and prepare for live updates to VCA state 2016-05-31 15:30:39 -04:00
d47dc72595 single button for VCA assignment, plus unassign now works 2016-05-31 15:30:38 -04:00
ac7df69b49 rec-safe GUI 2016-05-24 21:30:33 +02:00
6605b52c17 centralize rec-en sensitivity & prepare for rec-safe 2016-05-24 03:01:27 +02:00
cc0abf4ef5 add route-ui pin-manager 2016-05-10 20:54:11 +02:00
e180b0f706 RouteUI solo buttons should trigger group actions 2016-03-14 10:49:24 -04:00
bfbf260eaf when using InverseGroup for rec-enable, do not collect group members and pass them to a session RT event method 2016-01-25 22:10:43 -05:00
c338057b7b NOOP: whitespace fixes 2016-01-25 22:08:47 -05:00
5fd07fe3af when using InverseGroup for solo, do not collect group members and pass them to a session RT event method 2016-01-25 22:08:23 -05:00
7b6142ed99 when using InverseGroup, do not collect group members and pass them to a session RT event method 2016-01-25 22:06:41 -05:00
23794eca5b rename Controllable::WholeGroup => InverseGroup to reflect real intent.
Add logic to RouteGroupMember::use_group() to implement the real intent of InverseGroup
2016-01-22 11:58:31 -05:00
9e5b7db89f first compiling, mostly working version of group controls changes 2016-01-22 11:58:31 -05:00
64c9198d60 add group disposition argument to Route::set_gain() and use it in various UIs
Executive decisions were necessary in a couple of places about the correct group disposition
behaviour, notably faderport and OSC surfaces
2016-01-18 12:11:09 -05:00
7edd521afe unhardcode "ardour:" port-prefix 2015-12-21 18:54:34 +01:00
6f955aa0bd add Duplicate action to track and mixer context menus 2015-11-17 16:55:11 -06:00
André Nusser
6ccffbaf09 Improve behavior of overwrite_file_dialog.
- Make overwrite file dialogs transient.
- Cancelling the overwrite dialog doesn't close initial dialog.
2015-11-04 17:52:00 -05:00
André Nusser
5d50abed75 Confirmation on overwrite for track and session templates. -fixes #6587 2015-10-21 23:28:44 -04:00
696b89b71a rework 8b80fe0, use std::string, not char* 2015-10-15 11:24:15 +02:00
dee89fb98a add missing include 2015-10-07 15:39:32 +02:00
0d137f7bdf fix solo-group override 2015-10-07 15:29:00 +02:00
e79b2e376f amend prev commit. 2015-10-07 14:25:33 +02:00
a02fc6340b update solo button callback semantics
override-group toggles current group state (not disables groups)
2015-10-07 14:21:30 +02:00
3bb492a0c0 fix crash for solo btn2 + primary-mod 2015-10-07 14:21:30 +02:00
22b07e0233 NOOP, remove trailing tabs/whitespace. 2015-10-05 16:17:49 +02:00
4dc63966f0 globally remove all trailing whitespace from ardour code base.
Paul Davis was responsible for introducing almost all of this.
2015-10-04 14:51:05 -04:00
André Nusser
42647c9920 Introduce Ctrl+Shift+Click on lock solo in the mixer. 2015-09-28 17:58:40 -04:00
6b019a4953 Move UIConfiguration Singleton into UIConfiguration header
This removes the direct dependence on ardour_ui.h from 39 files
2015-09-16 16:55:17 -04:00
a95b6cfd92 ctrl-shift-click on solo isolate now enables AND disables solo-isolate for all routes.
It would be nice to have operate-on-selection for all this RouteUI stuff, wouldn't it?
2015-07-16 10:11:04 -04:00
64586a8301 factor out Route::muted_by_others from existing code 2015-05-29 15:21:20 -05:00
1d5c6104f5 replace old ArdourButton::Icon API with Gtkmm2ext. 2015-05-24 21:45:39 +02:00
db7d0c59b5 remove explicit VectorIcon Element 2015-05-24 20:28:24 +02:00
d25e8f2233 update ArdourButton Icon API 2015-04-07 22:34:09 +02:00
803853b4a4 rationalize incorrect design for removing tracks.
Still requires a way to make this work correctly from the mixer window
2015-04-06 17:56:23 -04:00
e31d6a90f7 protect RouteUI's destructor from crashes caused by MeterStrips with no route.
MeterStrip class heirarchy needs fundamental redesign.
2015-04-01 11:58:31 -04:00
d6574c9c40 remove duplicated calls to update solo/mute state from RouteUI descendants.
RouteUI::set_route() already does the right thing. Also remove RouteUI::mute_changed() since its
only role was to handle the mute change signal from a route, which boost::bind() makes unnecessary
since we can connect update_mute_display() directly.
2015-03-31 12:31:06 -04:00
75e0f5a023 remove GUI object state when tracks/busses are removed.
Not doing this results in accumulation of useless GUI object state which is never cleaned up.
Taken from work by Grygorii Zharun.
2015-03-30 15:27:23 -04:00
nick_m
c9d10158f6 Metadata windows are no longer transient windows.
Comment out input and output IOSelectorWindows being set to KEEP_ABOVE
in the route ui (just in case there is a good reason for it).
2015-03-12 04:06:20 +11:00
69069e0381 Fix whitespace (noop). 2015-01-07 20:12:14 -05:00
b5c9a92a58 Move Timers/Timeouts from ARDOUR_UI into functions in timers.h and use PBD::Timers 2015-01-01 19:04:14 +07:00
cf537b97f5 Add missing namespace qualifiers. 2014-11-30 23:56:19 -05:00
ea5876b836 Remove dead code. 2014-11-25 02:11:44 -05:00
de7ac1f29b yet another rec-button [no]blink fix 2014-09-07 21:03:25 +02:00
4a1b6b2e78 fix another blinking-rec btn issue (amend 0ae8dd4) 2014-09-06 13:23:59 +02:00
35d8f18990 hard stop blinking rec-arm 2014-09-05 17:26:21 +02:00
0ae8dd4bdb connect "blink-rec-arm" only when needed.
This also fixes rec-arm button display when Mixer strip
is showing an aux-send instead of the current route.

It's still only a half-baked solution. If "blink-rec-arm" is
to stay a lot of details related to this will need addressing.
2014-09-05 04:20:15 +02:00
09cec26610 fix some compiler warnings 2014-09-03 02:40:06 +02:00
c4212fb10b use tape-track rec-enable icon throughout. 2014-09-03 02:40:01 +02:00
5d5d859c2a use new 'special' rec-en button 2014-09-02 20:43:27 +02:00
4718def3c4 update track-header width when removing track(s). 2014-08-31 22:54:43 +02:00
f5533213c0 fix some compiler warnings 2014-08-30 02:26:36 +02:00
d6454dfb36 amend 7be3c88a, update rec-en color 2014-08-29 19:55:25 +02:00
7be3c88a3e experiment with unicode circle for rec-en
fixes button-area width mismatch on track-headers
except for tape-tracks (which till use old fixed size icon)
2014-08-29 01:13:49 +02:00
7306568634 More fixes to ArdourButton actions.
Optionally allow events to fallthrough to parents, in particular for the DnDVBox case.
Also allow the number_label to operate as a track selector.
2014-08-28 14:25:19 -05:00
61c11157c0 add option to blink rec-enables 2014-08-28 13:00:59 -05:00
3f297f7dab Fix ArdourButton event sequence.
Always give ArdourButton a chance to handle Press or Release events if you override them.
This allows ArdourButtons to do the "Pressed" animation
And it now correctly eats the event so button clicks don't select the channelstrip.
2014-08-28 10:31:57 -05:00
5db98d9372 fix pushed-in state of invert buttons, and fix an initizlization order warning 2014-08-27 10:49:36 -05:00
74f313dd6b Rationalize ArdourButton and lots of associated theming issues.
ArdourButtons now have a "pushed" animation.
The gradient is now implemented in the button, rather than providing 2 colors in the theme, which was burdensome.
Lots of code cleanup in ArdourButton.  Removed several unnecessary flags.
Refactor more stuff into route_ui.
2014-08-22 11:51:20 -05:00
c29417f48e Merge branch 'selection_fixes' of https://github.com/nmains/ardour into cairocanvas 2014-08-14 17:48:11 +02:00
nick_m
7e022b6445 Fix crash on snapshot change. 2014-08-15 01:42:48 +10:00
90397c3ac9 remove cruft related to button-height commit 2014-08-13 11:00:04 -05:00
3961017921 allow track headers to select io from right-click menu 2014-08-01 13:48:47 -05:00
b75b88a1eb Use text to specify combo box padding for better font/display tolerance.
Consistent mixer strip button height.

The latter works by setting all the button size request heights to the
calculated height of the alphabet.  Thus, all buttons of the same class will be
the same height regardless of their actual text.
2014-07-30 18:30:42 -04:00
b32823f074 Various UI tweaks.
Refactor comments dialog into Route_UI so it can be shared by tracks and strips.
Make Color and Comments selections consistent in the menus
Refine the color displays at the top of each mixer strip
Correctly color the number displays on tracks
2014-07-29 16:40:19 -05:00
a3b704b8c0 remove awful, inobvious, wrong and no longer necessary "_i_am_the_modifier" crap from RouteUI, except in one case where it might be useful 2014-07-10 11:54:59 -04:00
c52cb37bf2 suspend route redisplay for (rec-en, solo, mute and monitor) batch changes 2014-06-29 02:52:56 +02:00
a3c378cf62 move utility functions into a dedicated namespace 2014-06-25 21:47:54 +02:00