This allows to re-use playlist editing in all RouteUI derivatives,
not just the main editor time axis header.
The change is mostly a NO-OP, simply moving methods from
RouteTimeAxisView (is-a RouteUI), to RouteUI.
See also 72af571f0c, ATAV for Processors cannot be identified by
Parameter alone. STAV uses a std::map<Evoral::Parameter, ..>
that is only valid for unique parameters.
The map cannot store Evoral::Parameter(PluginAutomation)
because it its not unique.
This fixes an issue with using
StripableTimeAxisView::_automation_tracks
for PluginAutomation. The latter is indexed per-plugin in
RouteTimeAxisView::processor_automation
Evoral::Parameter(PluginAutomation) is only unique per plugin,
and hence cannot be used in STAV.
7434478a35 introduced a race, IOchange triggers updating the
GUI and re-configuring processors. The latter needs to complete
first, otherwise Track::n_channels() returns the previous
channel count.
On session re-load only automation lanes with events were displayed,
regardless of visibility state. This allowed for inconsistent
state (menu showed them as visible even if they were not).
Existing function select-all-tracks is now renamed select-all-visible-lanes, to match its behavior.
New function select-all-tracks will select all Tracks, as the name implies.
To maintain consistency for those users who actively used select-all-tracks,
the default shortcut ctrl+t will continue calling select-all-visible-lanes.
Inactive tracks will now hide all controls and display only the track name
in parenthesis.
Color-change is not sufficient by itself to distinguish an inactive track
from an active one (consider the case of just 2 tracks...)
Extra XML/GUI has not been in use since ages.
Automation Lane visibility is saved as GUIObjectState.
This properly marks DropDown Menu items as active when a
Plugin Automation Lane is displayed
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.
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.
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
Issue #7429 reports that that clicking a route of an already selected group
does not update the editor mixer strip selection. To fix this we call
Editor::set_selected_mixer_strip() at the end of
RouteTimeAxisView::selection_click();
The overhead of maybe calling it twice should be toleratable, as
::set_selected_mixer_strip() checks, if the route is already the current mixer
strip route before setting it.