diff --git a/gtk2_ardour/clearlooks.rc.in b/gtk2_ardour/clearlooks.rc.in index 8e6a5f718b..1f345ed3db 100644 --- a/gtk2_ardour/clearlooks.rc.in +++ b/gtk2_ardour/clearlooks.rc.in @@ -1154,19 +1154,15 @@ widget "*MidiTrackStripBaseInactive" style:highest "track_header_inactive" widget "*AudioTrackMetrics" style:highest "audio_track_metrics" widget "*MidiTrackMetrics" style:highest "midi_track_metrics" widget "*AudioBusMetrics" style:highest "audio_bus_metrics" -widget "*AudioMidiTrackMetrics" style:highest "midi_track_metrics" widget "*AudioTrackMetricsLeft" style:highest "audio_track_metrics" widget "*MidiTrackMetricsLeft" style:highest "midi_track_metrics" widget "*AudioBusMetricsLeft" style:highest "audio_bus_metrics" -widget "*AudioMidiTrackMetricsLeft" style:highest "midi_track_metrics" widget "*AudioTrackMetricsRight" style:highest "audio_track_metrics" widget "*MidiTrackMetricsRight" style:highest "midi_track_metrics" widget "*AudioBusMetricsRight" style:highest "audio_bus_metrics" -widget "*AudioMidiTrackMetricsRight" style:highest "midi_track_metrics" widget "*AudioTrackMetricsInactive" style:highest "audio_track_metrics_inactive" widget "*MidiTrackMetricsInactive" style:highest "midi_track_metrics_inactive" widget "*AudioBusMetricsInactive" style:highest "audio_bus_metrics_inactive" -widget "*AudioMidiTrackMetricsInactive" style:highest "midi_track_metrics_inactive" widget "*TimeAxisViewControlsBaseUnselected" style:highest "audio_track_base" widget "*AudioTrackControlsBaseUnselected" style:highest "audio_track_base" diff --git a/gtk2_ardour/gain_meter.cc b/gtk2_ardour/gain_meter.cc index 3487ef86f8..87a7e9e0f6 100644 --- a/gtk2_ardour/gain_meter.cc +++ b/gtk2_ardour/gain_meter.cc @@ -1124,38 +1124,30 @@ GainMeter::meter_configuration_changed (ChanCount c) } } - if (_route - && boost::dynamic_pointer_cast(_route) == 0 - && boost::dynamic_pointer_cast(_route) == 0 - ) { - if (_route->active()) { - set_meter_strip_name ("AudioBusMetrics"); - } else { - set_meter_strip_name ("AudioBusMetricsInactive"); - } - } - else if ( - (type == (1 << DataType::MIDI)) - || (_route && boost::dynamic_pointer_cast(_route)) - ) { + bool is_audio_track = _route && boost::dynamic_pointer_cast(_route) != 0; + bool is_midi_track = _route && boost::dynamic_pointer_cast(_route) != 0; + + if (!is_audio_track && (is_midi_track || /* MIDI Bus */ (type == (1 << DataType::MIDI)))) { if (!_route || _route->active()) { set_meter_strip_name ("MidiTrackMetrics"); } else { set_meter_strip_name ("MidiTrackMetricsInactive"); } } - else if (type == (1 << DataType::AUDIO)) { + else if (_route && (!is_audio_track && !is_midi_track)) { + /* Bus */ + if (_route->active()) { + set_meter_strip_name ("AudioBusMetrics"); + } else { + set_meter_strip_name ("AudioBusMetricsInactive"); + } + } + else { if (!_route || _route->active()) { set_meter_strip_name ("AudioTrackMetrics"); } else { set_meter_strip_name ("AudioTrackMetricsInactive"); } - } else { - if (!_route || _route->active()) { - set_meter_strip_name ("AudioMidiTrackMetrics"); - } else { - set_meter_strip_name ("AudioMidiTrackMetricsInactive"); - } } setup_meters(); diff --git a/gtk2_ardour/meter_strip.cc b/gtk2_ardour/meter_strip.cc index 1bb12a8545..67a5d2c738 100644 --- a/gtk2_ardour/meter_strip.cc +++ b/gtk2_ardour/meter_strip.cc @@ -475,29 +475,26 @@ MeterStrip::meter_configuration_changed (ChanCount c) } } - if (boost::dynamic_pointer_cast(_route) == 0 - && boost::dynamic_pointer_cast(_route) == 0 - ) { - meter_ticks1_area.set_name ("MyAudioBusMetricsLeft"); - meter_ticks2_area.set_name ("MyAudioBusMetricsRight"); - _has_midi = false; - } - else if (type == (1 << DataType::AUDIO)) { - meter_ticks1_area.set_name ("MyAudioTrackMetricsLeft"); - meter_ticks2_area.set_name ("MyAudioTrackMetricsRight"); - _has_midi = false; - } - else if (type == (1 << DataType::MIDI)) { + bool is_audio_track = _route && boost::dynamic_pointer_cast(_route) != 0; + bool is_midi_track = _route && boost::dynamic_pointer_cast(_route) != 0; + + if (!is_audio_track && (is_midi_track || /* MIDI Bus */ (type == (1 << DataType::MIDI)))) { meter_ticks1_area.set_name ("MidiTrackMetricsLeft"); meter_ticks2_area.set_name ("MidiTrackMetricsRight"); - _has_midi = true; - } else { - meter_ticks1_area.set_name ("AudioMidiTrackMetricsLeft"); - meter_ticks2_area.set_name ("AudioMidiTrackMetricsRight"); - _has_midi = true; } + else if (_route && (!is_audio_track && !is_midi_track)) { + meter_ticks1_area.set_name ("AudioBusMetricsLeft"); + meter_ticks2_area.set_name ("AudioBusMetricsRight"); + } + else { + meter_ticks1_area.set_name ("AudioTrackMetricsLeft"); + meter_ticks2_area.set_name ("AudioTrackMetricsRight"); + } + set_tick_bar(_tick_bar); + _has_midi = 0 != (type & (1 << DataType::MIDI)); + on_theme_changed(); if (old_has_midi != _has_midi) { MetricChanged(); /* EMIT SIGNAL */