fix for toolbar master-meter w/o master bus and/or detached toolbar
This commit is contained in:
parent
5cbd4ce759
commit
af9ac37b60
@ -193,7 +193,9 @@ ARDOUR_UI::set_session (Session *s)
|
||||
editor_meter_peak_display.hide();
|
||||
}
|
||||
|
||||
if (_session && _session->master_out()) {
|
||||
if (_session
|
||||
&& _session->master_out()
|
||||
&& _session->master_out()->n_outputs().n(DataType::AUDIO) > 0) {
|
||||
editor_meter = new LevelMeterHBox(_session);
|
||||
editor_meter->set_meter (_session->master_out()->shared_peak_meter().get());
|
||||
editor_meter->clear_meters();
|
||||
@ -216,12 +218,17 @@ ARDOUR_UI::set_session (Session *s)
|
||||
editor_meter_peak_display.signal_button_release_event().connect (sigc::mem_fun(*this, &ARDOUR_UI::editor_meter_peak_button_release), false);
|
||||
|
||||
if (Config->get_show_editor_meter()) {
|
||||
transport_tearoff_hbox.pack_start (meter_box, false, false);
|
||||
transport_tearoff_hbox.pack_start (editor_meter_peak_display, false, false);
|
||||
meter_box.show();
|
||||
editor_meter_peak_display.show();
|
||||
} else {
|
||||
meter_box.hide();
|
||||
editor_meter_peak_display.hide();
|
||||
} else if (meter_box.get_parent()) {
|
||||
transport_tearoff_hbox.remove (meter_box);
|
||||
transport_tearoff_hbox.remove (editor_meter_peak_display);
|
||||
}
|
||||
} else if (meter_box.get_parent()) {
|
||||
transport_tearoff_hbox.remove (meter_box);
|
||||
transport_tearoff_hbox.remove (editor_meter_peak_display);
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -402,11 +402,13 @@ ARDOUR_UI::parameter_changed (std::string p)
|
||||
} else if (p == "show-editor-meter") {
|
||||
bool show = Config->get_show_editor_meter();
|
||||
if (editor_meter && show) {
|
||||
transport_tearoff_hbox.pack_start (meter_box, false, false);
|
||||
transport_tearoff_hbox.pack_start (editor_meter_peak_display, false, false);
|
||||
meter_box.show();
|
||||
editor_meter_peak_display.show();
|
||||
} else if (editor_meter && !show) {
|
||||
meter_box.hide();
|
||||
editor_meter_peak_display.hide();
|
||||
} else if (editor_meter && !show && meter_box.get_parent()) {
|
||||
transport_tearoff_hbox.remove (meter_box);
|
||||
transport_tearoff_hbox.remove (editor_meter_peak_display);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user