summaryrefslogtreecommitdiff
path: root/gtk2_ardour/mixer_strip.cc
diff options
context:
space:
mode:
authorBen Loftis <ben@harrisonconsoles.com>2015-02-25 17:19:44 -0600
committerBen Loftis <ben@harrisonconsoles.com>2015-02-25 17:19:44 -0600
commitf4203cce7ec0b8be13293e0a86f69693ec1cd977 (patch)
treeb07627645e2a07cf7f0b931166bc2405b6c66c1a /gtk2_ardour/mixer_strip.cc
parent8ed563336797d6e9d52084ec132f0cd13c8ee342 (diff)
Potential fix for confusion for Input/Output buttons on tracks with audio+midi ports
Diffstat (limited to 'gtk2_ardour/mixer_strip.cc')
-rw-r--r--gtk2_ardour/mixer_strip.cc13
1 files changed, 11 insertions, 2 deletions
diff --git a/gtk2_ardour/mixer_strip.cc b/gtk2_ardour/mixer_strip.cc
index 6e027e3f50..3058203ed7 100644
--- a/gtk2_ardour/mixer_strip.cc
+++ b/gtk2_ardour/mixer_strip.cc
@@ -837,7 +837,7 @@ MixerStrip::output_press (GdkEventButton *ev)
}
citems.push_back (SeparatorElem());
- citems.push_back (MenuElem (_("Connection Grid"), sigc::mem_fun (*(static_cast<RouteUI*>(this)), &RouteUI::edit_output_configuration)));
+ citems.push_back (MenuElem (_("Routing Grid"), sigc::mem_fun (*(static_cast<RouteUI*>(this)), &RouteUI::edit_output_configuration)));
output_menu.popup (1, ev->time);
break;
@@ -939,7 +939,7 @@ MixerStrip::input_press (GdkEventButton *ev)
}
citems.push_back (SeparatorElem());
- citems.push_back (MenuElem (_("Connection Grid"), sigc::mem_fun (*(static_cast<RouteUI*>(this)), &RouteUI::edit_input_configuration)));
+ citems.push_back (MenuElem (_("Routing Grid"), sigc::mem_fun (*(static_cast<RouteUI*>(this)), &RouteUI::edit_input_configuration)));
input_menu.popup (1, ev->time);
@@ -1161,6 +1161,11 @@ MixerStrip::update_io_button (boost::shared_ptr<ARDOUR::Route> route, Width widt
ostringstream tooltip;
char * tooltip_cstr;
+
+ //to avoid confusion, the button caption should only show connections that match the datatype of the track
+ DataType dt = DataType::AUDIO;
+ if ( boost::dynamic_pointer_cast<MidiTrack>(route) != 0 )
+ dt = DataType::MIDI;
if (for_input) {
io_count = route->n_inputs().n_total();
@@ -1177,6 +1182,10 @@ MixerStrip::update_io_button (boost::shared_ptr<ARDOUR::Route> route, Width widt
} else {
port = route->output()->nth (io_index);
}
+
+ //ignore any port connections that don't match our DataType
+ if (port->type() != dt)
+ continue;
port_connections.clear ();
port->get_connections(port_connections);