From 2006805d0041b92f1f6febca113f21ccc8183253 Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Tue, 24 Aug 2010 13:29:00 +0000 Subject: [PATCH] Tweak arrangement of labels and tabs in port matrices. git-svn-id: svn://localhost/ardour2/branches/3.0@7674 d708f5d6-7413-0410-9779-e7cbd77b26cf --- gtk2_ardour/port_matrix.cc | 31 +++++++++++++++++++++++++------ 1 file changed, 25 insertions(+), 6 deletions(-) diff --git a/gtk2_ardour/port_matrix.cc b/gtk2_ardour/port_matrix.cc index 3be5458973..50bade3a9e 100644 --- a/gtk2_ardour/port_matrix.cc +++ b/gtk2_ardour/port_matrix.cc @@ -63,12 +63,9 @@ PortMatrix::PortMatrix (Window* parent, Session* session, DataType type) _body = new PortMatrixBody (this); _body->DimensionsChanged.connect (sigc::mem_fun (*this, &PortMatrix::body_dimensions_changed)); - _vbox.pack_start (_vspacer, false, false); - _vbox.pack_start (_vnotebook, false, false); - _vbox.pack_start (_vlabel, true, true); - _hbox.pack_start (_hspacer, false, false); - _hbox.pack_start (_hnotebook, false, false); - _hbox.pack_start (_hlabel, true, true); + _hbox.pack_end (_hspacer, true, true); + _hbox.pack_end (_hnotebook, false, false); + _hbox.pack_end (_hlabel, false, false); _vnotebook.signal_switch_page().connect (sigc::mem_fun (*this, &PortMatrix::notebook_page_selected)); _vnotebook.property_tab_border() = 4; @@ -289,6 +286,20 @@ PortMatrix::select_arrangement () count_of_our_type (_ports[1].total_channels()) }; + /* XXX: shirley there's an easier way than this */ + + if (_vspacer.get_parent()) { + _vbox.remove (_vspacer); + } + + if (_vnotebook.get_parent()) { + _vbox.remove (_vnotebook); + } + + if (_vlabel.get_parent()) { + _vbox.remove (_vlabel); + } + /* The list with the most channels goes on left or right, so that the most channel names are printed horizontally and hence more readable. However we also maintain notional `signal flow' vaguely from left to right. Subclasses @@ -304,6 +315,10 @@ PortMatrix::select_arrangement () _hlabel.set_label (_("Destinations")); _vlabel.set_angle (90); + _vbox.pack_end (_vlabel, false, false); + _vbox.pack_end (_vnotebook, false, false); + _vbox.pack_end (_vspacer, true, true); + attach (*_body, 1, 2, 0, 1, FILL | EXPAND, FILL | EXPAND); attach (_vscroll, 2, 3, 0, 1, SHRINK); attach (_hscroll, 1, 2, 2, 3, FILL | EXPAND, SHRINK); @@ -322,6 +337,10 @@ PortMatrix::select_arrangement () _vlabel.set_label (_("Destinations")); _vlabel.set_angle (-90); + _vbox.pack_end (_vspacer, true, true); + _vbox.pack_end (_vnotebook, false, false); + _vbox.pack_end (_vlabel, false, false); + attach (*_body, 0, 1, 1, 2, FILL | EXPAND, FILL | EXPAND); attach (_vscroll, 2, 3, 1, 2, SHRINK); attach (_hscroll, 0, 1, 2, 3, FILL | EXPAND, SHRINK);