Fix port matrix menu checkbox when the window is closed. Make the port matrix origin the bottom left when tabs are on left and bottom. Don't shrink the port matrix when auto-resizing it.

git-svn-id: svn://localhost/ardour2/branches/3.0@7673 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
Carl Hetherington 2010-08-24 13:28:27 +00:00
parent 211b57b303
commit 2ba936f0b3
5 changed files with 32 additions and 13 deletions

View file

@ -223,21 +223,21 @@ PortMatrixBody::compute_rectangles ()
} else if (_matrix->arrangement() == PortMatrix::LEFT_TO_BOTTOM) {
col_rect.set_height (min (_alloc_height, col.second));
row_rect.set_x (0);
row_rect.set_y (0);
row_rect.set_width (min (_alloc_width, row.first));
row_rect.set_height (std::min (_alloc_height - col_rect.get_height(), row.second));
row_rect.set_x (0);
row_rect.set_y (_alloc_height - row_rect.get_height() - col_rect.get_height());
row_rect.set_width (min (_alloc_width, row.first));
grid_rect.set_x (row_rect.get_width());
grid_rect.set_y (0);
grid_rect.set_y (_alloc_height - row_rect.get_height() - col_rect.get_height());
grid_rect.set_width (std::min (_alloc_width - row_rect.get_width(), grid.first));
grid_rect.set_height (row_rect.get_height ());
col_rect.set_width (grid_rect.get_width () + col_overhang);
col_rect.set_x (row_rect.get_width() + grid_rect.get_width() - col_rect.get_width());
_column_labels_border_x = col_rect.get_x () >= 0 ? col_rect.get_x () : 0;
col_rect.set_y (row_rect.get_height());
col_rect.set_y (_alloc_height - col_rect.get_height());
}
_column_labels_height = col_rect.get_height ();