GUI tweaks and work on VCA mixer display
authorPaul Davis <paul@linuxaudiosystems.com>
Tue, 7 Jun 2016 16:30:38 +0000 (12:30 -0400)
committerPaul Davis <paul@linuxaudiosystems.com>
Tue, 7 Jun 2016 16:30:44 +0000 (12:30 -0400)
gtk2_ardour/clearlooks.rc.in
gtk2_ardour/mixer_ui.cc
gtk2_ardour/mixer_ui.h
gtk2_ardour/vca_master_strip.cc
gtk2_ardour/vca_master_strip.h

index bf97320a7ed7e35dbfd825a6ccfbd27d68f337ef..e66b47e35050b05608a52866359196f5c7085b2f 100644 (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"
+
index 6f7c1c82d7204146ef90890c2c63725f5010e6fb..dbe08e34fffe9b663d3175ff22af5ce23ba6a19b 100644 (file)
@@ -245,17 +245,32 @@ Mixer_UI::Mixer_UI ()
 
        list_vpacker.pack_start (rhs_pane2, 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_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 ("MixerWindow");
+       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_packer.pack_end (vca_scroller_base, true, true);
+       vca_hpacker.pack_end (vca_scroller_base, true, true);
 
-       vca_scroller.add (vca_packer);
+       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;
index 1be03132ccfccd5e8e8d21cb6de091b871937859..e467ce409360780dd3fd109dc6cc9860f07a237b 100644 (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;
index 4c4d7398591fd022bdf7434bb847663d898a292c..5d2653e05e9536088b1a12ff538ca50fa6096a45 100644 (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 ();
index 711ee7171a811b159ffeed85b080566077753353..785f76deb957fd241eecc114941b6ab3507797fa 100644 (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;