From: Ben Loftis Date: Wed, 14 Feb 2018 20:47:00 +0000 (-0600) Subject: Re-pack the master meters (in the toolbar) so the editor_meter_peak_display button... X-Git-Url: https://main.carlh.net/gitweb/?p=ardour.git;a=commitdiff_plain;h=c206fa98a1be56678b05bbc728602a859686591b Re-pack the master meters (in the toolbar) so the editor_meter_peak_display button is more clickable. --- diff --git a/gtk2_ardour/ardour_ui.h b/gtk2_ardour/ardour_ui.h index db7bfa95b2..36dbebea95 100644 --- a/gtk2_ardour/ardour_ui.h +++ b/gtk2_ardour/ardour_ui.h @@ -494,6 +494,7 @@ private: DiskSpaceIndicator disk_space_indicator; ArdourWidgets::ArdourVSpacer status_spacer; + ArdourWidgets::ArdourVSpacer meterbox_spacer; ArdourWidgets::ArdourButton auto_return_button; ArdourWidgets::ArdourButton follow_edits_button; @@ -508,7 +509,7 @@ private: Gtk::Table action_script_table; Gtk::VBox alert_box; - Gtk::VBox meter_box; + Gtk::Table editor_meter_table; ArdourWidgets::ArdourButton editor_meter_peak_display; LevelMeterHBox * editor_meter; float editor_meter_max_peak; diff --git a/gtk2_ardour/ardour_ui2.cc b/gtk2_ardour/ardour_ui2.cc index 54d2a8416b..71d4af10b8 100644 --- a/gtk2_ardour/ardour_ui2.cc +++ b/gtk2_ardour/ardour_ui2.cc @@ -212,16 +212,18 @@ ARDOUR_UI::repack_transport_hbox () } if (editor_meter) { - if (meter_box.get_parent()) { - transport_hbox.remove (meter_box); - transport_hbox.remove (editor_meter_peak_display); + if (editor_meter_table.get_parent()) { + transport_hbox.remove (editor_meter_table); + } + if (meterbox_spacer.get_parent()) { + transport_hbox.remove (meterbox_spacer); } if (UIConfiguration::instance().get_show_editor_meter()) { - transport_hbox.pack_end (editor_meter_peak_display, false, false); - transport_hbox.pack_end (meter_box, false, false); - meter_box.show(); - editor_meter_peak_display.show(); + transport_hbox.pack_end (editor_meter_table, false, false); + transport_hbox.pack_end (meterbox_spacer, false, false, 3); + editor_meter_table.show(); + meterbox_spacer.show(); } } diff --git a/gtk2_ardour/ardour_ui_dialogs.cc b/gtk2_ardour/ardour_ui_dialogs.cc index 8b6eaa044b..8a3b9d1722 100644 --- a/gtk2_ardour/ardour_ui_dialogs.cc +++ b/gtk2_ardour/ardour_ui_dialogs.cc @@ -209,21 +209,19 @@ ARDOUR_UI::set_session (Session *s) update_format (); - if (meter_box.get_parent()) { - transport_hbox.remove (meter_box); - transport_hbox.remove (editor_meter_peak_display); + if (editor_meter_table.get_parent()) { + transport_hbox.remove (editor_meter_table); } if (editor_meter) { - meter_box.remove(*editor_meter); + editor_meter_table.remove(*editor_meter); delete editor_meter; editor_meter = 0; editor_meter_peak_display.hide(); } - if (meter_box.get_parent()) { - transport_hbox.remove (meter_box); - transport_hbox.remove (editor_meter_peak_display); + if (editor_meter_table.get_parent()) { + transport_hbox.remove (editor_meter_table); } if (_session && @@ -237,9 +235,14 @@ ARDOUR_UI::set_session (Session *s) editor_meter->set_meter_type (_session->master_out()->meter_type()); editor_meter->setup_meters (30, 10, 6); editor_meter->show(); - meter_box.pack_start(*editor_meter); - editor_meter->ButtonPress.connect_same_thread (editor_meter_connection, boost::bind (&ARDOUR_UI::editor_meter_button_press, this, _1)); + + editor_meter_table.set_homogeneous(true); + editor_meter_table.attach(*editor_meter, 0,1, 0,2, SHRINK, EXPAND); + editor_meter_table.attach(editor_meter_peak_display, 0,1, 2,3, EXPAND|FILL, EXPAND|FILL); + + editor_meter->show(); + editor_meter_peak_display.show(); } ArdourMeter::ResetAllPeakDisplays.connect (sigc::mem_fun(*this, &ARDOUR_UI::reset_peak_display)); @@ -309,7 +312,7 @@ ARDOUR_UI::unload_session (bool hide_stuff) fps_connection.disconnect(); if (editor_meter) { - meter_box.remove(*editor_meter); + editor_meter_table.remove(*editor_meter); delete editor_meter; editor_meter = 0; editor_meter_peak_display.hide(); diff --git a/gtk2_ardour/editor.h b/gtk2_ardour/editor.h index 947985b40e..8f6730f045 100644 --- a/gtk2_ardour/editor.h +++ b/gtk2_ardour/editor.h @@ -637,7 +637,6 @@ private: ArdourWidgets::VPane editor_summary_pane; Gtk::EventBox meter_base; - Gtk::HBox meter_box; Gtk::EventBox marker_base; Gtk::HBox marker_box; Gtk::VBox scrollers_rulers_markers_box;