mirror of
https://github.com/Ardour/ardour.git
synced 2026-01-09 15:15:41 +01:00
Fix 6031: Fix inactive MIDI track headers when reloading session
Update the visual state of MidiTimeAxisView accordingly to its route in MidiTimeAxisView::set_route()
This commit is contained in:
parent
a3dd27c41b
commit
d405a0059d
2 changed files with 17 additions and 20 deletions
|
|
@ -169,12 +169,7 @@ MidiTimeAxisView::set_route (boost::shared_ptr<Route> rt)
|
|||
ignore_toggle = false;
|
||||
|
||||
if (is_midi_track()) {
|
||||
controls_ebox.set_name ("MidiTimeAxisViewControlsBaseUnselected");
|
||||
time_axis_frame.set_name ("MidiTimeAxisViewControlsBaseUnselected");
|
||||
_note_mode = midi_track()->note_mode();
|
||||
} else { // MIDI bus (which doesn't exist yet..)
|
||||
controls_ebox.set_name ("MidiBusControlsBaseUnselected");
|
||||
time_axis_frame.set_name ("MidiBusControlsBaseUnselected");
|
||||
}
|
||||
|
||||
/* if set_state above didn't create a gain automation child, we need to make one */
|
||||
|
|
@ -193,7 +188,7 @@ MidiTimeAxisView::set_route (boost::shared_ptr<Route> rt)
|
|||
|
||||
/* map current state of the route */
|
||||
ensure_pan_views (false);
|
||||
|
||||
update_control_names();
|
||||
processors_changed (RouteProcessorChange ());
|
||||
|
||||
_route->processors_changed.connect (*this, invalidator (*this),
|
||||
|
|
@ -238,11 +233,6 @@ MidiTimeAxisView::set_route (boost::shared_ptr<Route> rt)
|
|||
time_axis_hbox.pack_end(*v, false, false, 0);
|
||||
midi_scroomer_size_group->add_widget (*v);
|
||||
|
||||
controls_ebox.set_name ("MidiTrackControlsBaseUnselected");
|
||||
time_axis_frame.set_name ("MidiTrackControlsBaseUnselected");
|
||||
controls_base_selected_name = "MidiTrackControlsBaseSelected";
|
||||
controls_base_unselected_name = "MidiTrackControlsBaseUnselected";
|
||||
|
||||
midi_view()->NoteRangeChanged.connect (
|
||||
sigc::mem_fun(*this, &MidiTimeAxisView::update_range));
|
||||
|
||||
|
|
@ -1287,32 +1277,37 @@ void
|
|||
MidiTimeAxisView::route_active_changed ()
|
||||
{
|
||||
RouteUI::route_active_changed ();
|
||||
update_control_names();
|
||||
}
|
||||
|
||||
void
|
||||
MidiTimeAxisView::update_control_names ()
|
||||
{
|
||||
if (is_track()) {
|
||||
if (_route->active()) {
|
||||
controls_ebox.set_name ("MidiTrackControlsBaseUnselected");
|
||||
time_axis_frame.set_name ("MidiTrackControlsBaseUnselected");
|
||||
controls_base_selected_name = "MidiTrackControlsBaseSelected";
|
||||
controls_base_unselected_name = "MidiTrackControlsBaseUnselected";
|
||||
} else {
|
||||
controls_ebox.set_name ("MidiTrackControlsBaseInactiveUnselected");
|
||||
time_axis_frame.set_name ("MidiTrackControlsBaseInactiveUnselected");
|
||||
controls_base_selected_name = "MidiTrackControlsBaseInactiveSelected";
|
||||
controls_base_unselected_name = "MidiTrackControlsBaseInactiveUnselected";
|
||||
}
|
||||
} else {
|
||||
} else { // MIDI bus (which doesn't exist yet..)
|
||||
if (_route->active()) {
|
||||
controls_ebox.set_name ("BusControlsBaseUnselected");
|
||||
time_axis_frame.set_name ("BusControlsBaseUnselected");
|
||||
controls_base_selected_name = "BusControlsBaseSelected";
|
||||
controls_base_unselected_name = "BusControlsBaseUnselected";
|
||||
} else {
|
||||
controls_ebox.set_name ("BusControlsBaseInactiveUnselected");
|
||||
time_axis_frame.set_name ("BusControlsBaseInactiveUnselected");
|
||||
controls_base_selected_name = "BusControlsBaseInactiveSelected";
|
||||
controls_base_unselected_name = "BusControlsBaseInactiveUnselected";
|
||||
}
|
||||
}
|
||||
|
||||
if (get_selected()) {
|
||||
controls_ebox.set_name (controls_base_selected_name);
|
||||
time_axis_frame.set_name (controls_base_selected_name);
|
||||
} else {
|
||||
controls_ebox.set_name (controls_base_unselected_name);
|
||||
time_axis_frame.set_name (controls_base_unselected_name);
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
|
|
|
|||
|
|
@ -133,6 +133,8 @@ private:
|
|||
void note_range_changed ();
|
||||
void contents_height_changed ();
|
||||
|
||||
void update_control_names ();
|
||||
|
||||
bool _ignore_signals;
|
||||
MidiScroomer* _range_scroomer;
|
||||
PianoRollHeader* _piano_roll_header;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue