summaryrefslogtreecommitdiff
path: root/gtk2_ardour/port_matrix_column_labels.cc
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2009-12-14 16:44:20 +0000
committerCarl Hetherington <carl@carlh.net>2009-12-14 16:44:20 +0000
commitda762129f19c28aff64f833b6ec09fba946faef6 (patch)
tree9f85b36735e42c257226bbb09432741d957f0613 /gtk2_ardour/port_matrix_column_labels.cc
parent383b24cc48e542d83fca90d4263f800b33d69402 (diff)
Offer all of a bundle's ports for disconnection / removal when opening a menu over a bundle's name in the port matrix.
git-svn-id: svn://localhost/ardour2/branches/3.0@6365 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/port_matrix_column_labels.cc')
-rw-r--r--gtk2_ardour/port_matrix_column_labels.cc12
1 files changed, 10 insertions, 2 deletions
diff --git a/gtk2_ardour/port_matrix_column_labels.cc b/gtk2_ardour/port_matrix_column_labels.cc
index c10bb01a2b..be26474e75 100644
--- a/gtk2_ardour/port_matrix_column_labels.cc
+++ b/gtk2_ardour/port_matrix_column_labels.cc
@@ -436,11 +436,19 @@ PortMatrixColumnLabels::position_to_channel (double p, double o, boost::shared_p
void
PortMatrixColumnLabels::button_press (double x, double y, int b, uint32_t t, guint)
{
- ARDOUR::BundleChannel const gc = position_to_channel (x, y, _matrix->visible_columns());
+ ARDOUR::BundleChannel w = position_to_channel (x, y, _matrix->visible_columns());
+
+ if (
+ (_matrix->arrangement() == PortMatrix::LEFT_TO_BOTTOM && y > (_height - _longest_bundle_name * sin (angle ()))) ||
+ (_matrix->arrangement() == PortMatrix::TOP_TO_RIGHT && y < (_longest_bundle_name * sin (angle ())))
+ ) {
+
+ w.channel = -1;
+ }
if (b == 3) {
_matrix->popup_menu (
- gc,
+ w,
ARDOUR::BundleChannel (),
t
);