GUI tweaks and work on VCA mixer display

This commit is contained in:
Paul Davis 2016-06-07 12:30:38 -04:00
parent 669b745329
commit e574ab30e7
5 changed files with 46 additions and 21 deletions

View file

@ -1012,6 +1012,12 @@ style "pane"
fg[ACTIVE] = @somewhat_bright_indicator
}
style "vca_label_bar" = "medium_bold_text"
{
bg[NORMAL] = @darkest
fg[NORMAL] = @lightest
}
class "GtkWidget" style:highest "default"
class "GtkScrollbar" style:highest "ardour_adjusters"
class "GtkLabel" style:highest "default_generic"
@ -1203,3 +1209,6 @@ widget "*MonitorSectionLabel" style:highest "small_text"
widget "*ooltip*" style:highest "tooltip"
widget "*Pane" style:highest "pane"
widget "*Pane.Divider" style:highest "pane"
widget "*VCALabelBar" style:highest "vca_label_bar"
widget "*VCALabelBar*" style:highest "vca_label_bar"

View file

@ -245,17 +245,32 @@ Mixer_UI::Mixer_UI ()
list_vpacker.pack_start (rhs_pane2, true, true);
vca_scroller_base.add_events (Gdk::BUTTON_PRESS_MASK|Gdk::BUTTON_RELEASE_MASK);
vca_scroller_base.set_name ("MixerWindow");
vca_scroller_base.signal_button_release_event().connect (sigc::mem_fun(*this, &Mixer_UI::masters_scroller_button_release), false);
vca_packer.pack_end (vca_scroller_base, true, true);
string vca_text = _("Control Masters");
Gtk::HBox* vca_top_padding = manage (new Gtk::HBox);
vca_top_padding->set_size_request (-1, 2);
vca_vpacker.pack_start (*vca_top_padding, false, false);
vca_label.set_text (vca_text);
vca_label_bar.set_size_request (-1, 16); /* must match height in GroupTabs::set_size_request() */
vca_scroller.add (vca_packer);
vca_label_bar.set_name (X_("VCALabelBar"));
vca_label_bar.add (vca_label);
vca_vpacker.pack_start (vca_label_bar, false, false);
vca_scroller_base.add_events (Gdk::BUTTON_PRESS_MASK|Gdk::BUTTON_RELEASE_MASK);
vca_scroller_base.set_name (X_("MixerWindow"));
vca_scroller_base.signal_button_release_event().connect (sigc::mem_fun(*this, &Mixer_UI::masters_scroller_button_release), false);
vca_hpacker.pack_end (vca_scroller_base, true, true);
vca_scroller.add (vca_hpacker);
vca_scroller.set_policy (Gtk::POLICY_ALWAYS, Gtk::POLICY_AUTOMATIC);
vca_scroller.signal_button_release_event().connect (sigc::mem_fun(*this, &Mixer_UI::strip_scroller_button_release));
vca_vpacker.pack_start (vca_scroller, true, true);
inner_pane.add (scroller);
inner_pane.add (vca_scroller);
inner_pane.add (vca_vpacker);
global_hpacker.pack_start (inner_pane, true, true);
global_hpacker.pack_start (out_packer, false, false);
@ -326,8 +341,12 @@ Mixer_UI::Mixer_UI ()
rhs_pane2.show();
strip_packer.show();
inner_pane.show();
vca_top_padding->show ();
vca_scroller.show();
vca_packer.show();
vca_vpacker.show();
vca_hpacker.show();
vca_label_bar.show();
vca_label.show();
vca_scroller_base.show();
out_packer.show();
list_hpane.show();
@ -1276,8 +1295,8 @@ Mixer_UI::redisplay_track_list ()
TreeModel::Children::iterator i;
uint32_t n_masters = 0;
container_clear (vca_packer);
vca_packer.pack_end (vca_scroller_base, true, true);
container_clear (vca_hpacker);
vca_hpacker.pack_end (vca_scroller_base, true, true);
for (i = rows.begin(); i != rows.end(); ++i) {
@ -1291,7 +1310,7 @@ Mixer_UI::redisplay_track_list ()
VCAMasterStrip* vms;
if ((vms = dynamic_cast<VCAMasterStrip*> (s))) {
vca_packer.pack_start (*vms, false, false);
vca_hpacker.pack_start (*vms, false, false);
vms->show ();
n_masters++;
continue;

View file

@ -148,7 +148,10 @@ class Mixer_UI : public Gtkmm2ext::Tabbable, public PBD::ScopedConnectionList, p
Gtkmm2ext::HPane inner_pane;
Gtk::HBox strip_packer;
Gtk::ScrolledWindow vca_scroller;
Gtk::HBox vca_packer;
Gtk::HBox vca_hpacker;
Gtk::VBox vca_vpacker;
Gtk::EventBox vca_label_bar;
Gtk::Label vca_label;
Gtk::EventBox vca_scroller_base;
Gtk::HBox out_packer;
Gtkmm2ext::HPane list_hpane;

View file

@ -50,7 +50,7 @@ PBD::Signal1<void,VCAMasterStrip*> VCAMasterStrip::CatchDeletion;
VCAMasterStrip::VCAMasterStrip (Session* s, boost::shared_ptr<VCA> v)
: SessionHandlePtr (s)
, _vca (v)
, gain_meter (s, 250)
, gain_meter (s, 254)
, context_menu (0)
, delete_dialog (0)
{
@ -77,9 +77,6 @@ VCAMasterStrip::VCAMasterStrip (Session* s, boost::shared_ptr<VCA> v)
hide_button.signal_clicked.connect (sigc::mem_fun(*this, &VCAMasterStrip::hide_clicked));
width_hide_box.pack_start (number_label, true, true);
width_hide_box.pack_end (hide_button, false, true);
solo_mute_box.set_spacing (2);
solo_mute_box.pack_start (mute_button, true, true);
solo_mute_box.pack_start (solo_button, true, true);
@ -91,8 +88,7 @@ VCAMasterStrip::VCAMasterStrip (Session* s, boost::shared_ptr<VCA> v)
number_label.set_alignment (.5, .5);
number_label.set_fallthrough_to_parent (true);
top_padding.set_size_request (-1, 16); /* must match height in GroupTabs::set_size_request() */
bottom_padding.set_size_request (-1, 30); /* this one is a hack. there's no trivial way to compute it */
bottom_padding.set_size_request (-1, 32); /* this one is a hack. there's no trivial way to compute it */
//Glib::RefPtr<Pango::Layout> layout = vertical_button.get_layout ();
// layout->set_justify (JUSTIFY_CENTER);
@ -110,8 +106,8 @@ VCAMasterStrip::VCAMasterStrip (Session* s, boost::shared_ptr<VCA> v)
global_vpacker.set_border_width (1);
global_vpacker.set_spacing (0);
global_vpacker.pack_start (top_padding, false, false);
global_vpacker.pack_start (width_hide_box, false, false);
global_vpacker.pack_start (number_label, false, false);
global_vpacker.pack_start (hide_button, false, false);
global_vpacker.pack_start (vertical_button, true, true);
global_vpacker.pack_start (solo_mute_box, false, false);
global_vpacker.pack_start (gain_meter, false, false, 2);
@ -132,7 +128,6 @@ VCAMasterStrip::VCAMasterStrip (Session* s, boost::shared_ptr<VCA> v)
vertical_button.show ();
hide_button.show ();
number_label.show ();
width_hide_box.show ();
gain_meter.show ();
solo_mute_box.show_all ();
assign_button.show ();

View file

@ -57,7 +57,6 @@ class VCAMasterStrip : public AxisView, public Gtk::EventBox
Gtk::VBox global_vpacker;
Gtk::HBox top_padding;
Gtk::HBox bottom_padding;
Gtk::HBox width_hide_box;
Gtk::HBox solo_mute_box;
ArdourButton width_button;
ArdourButton color_button;