summaryrefslogtreecommitdiff
path: root/gtk2_ardour/port_matrix_grid.cc
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2009-01-23 21:24:11 +0000
committerCarl Hetherington <carl@carlh.net>2009-01-23 21:24:11 +0000
commitf6652f07ae2bfa9d7984c5b6feffd6479faec034 (patch)
tree8f02ca41d0f56eb20be3f684eefdf29e218c3a1e /gtk2_ardour/port_matrix_grid.cc
parent9245b7f95947ae196b8bb734ecb9767a362cccfe (diff)
Add global port matrix dialogs.
git-svn-id: svn://localhost/ardour2/branches/3.0@4434 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/port_matrix_grid.cc')
-rw-r--r--gtk2_ardour/port_matrix_grid.cc20
1 files changed, 19 insertions, 1 deletions
diff --git a/gtk2_ardour/port_matrix_grid.cc b/gtk2_ardour/port_matrix_grid.cc
index 461e9f5f72..e202332d86 100644
--- a/gtk2_ardour/port_matrix_grid.cc
+++ b/gtk2_ardour/port_matrix_grid.cc
@@ -117,8 +117,10 @@ PortMatrixGrid::render (cairo_t* cr)
y = by;
for (uint32_t l = 0; l < (*j)->nchannels (); ++l) {
- if (_port_matrix->get_state (*j, l, *i, k)) {
+ PortMatrix::State const s = _port_matrix->get_state (*j, l, *i, k);
+ switch (s) {
+ case PortMatrix::ASSOCIATED:
set_source_rgba (cr, association_colour(), 0.5);
cairo_arc (
cr,
@@ -130,8 +132,24 @@ PortMatrixGrid::render (cairo_t* cr)
);
cairo_fill (cr);
+ break;
+
+ case PortMatrix::UNKNOWN:
+ set_source_rgba (cr, unknown_colour(), 0.5);
+ cairo_rectangle (
+ cr,
+ x + thick_grid_line_width(),
+ y + thick_grid_line_width(),
+ column_width() - 2 * thick_grid_line_width(),
+ row_height() - 2 * thick_grid_line_width()
+ );
+ cairo_fill (cr);
+ break;
+ case PortMatrix::NOT_ASSOCIATED:
+ break;
}
+
y += row_height();
}
x += column_width();