X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fport_group.cc;h=96db6f73e718a5ce36c45d286ad0f1aa12203fef;hb=cf52d6e4b40111eb04b244ec054055a4ec15dbe0;hp=d02171a2b1b2679677f8fa14820469e837f9260f;hpb=d237165e2178225b9f0b6a79055d808925baceae;p=ardour.git diff --git a/gtk2_ardour/port_group.cc b/gtk2_ardour/port_group.cc index d02171a2b1..96db6f73e7 100644 --- a/gtk2_ardour/port_group.cc +++ b/gtk2_ardour/port_group.cc @@ -43,7 +43,7 @@ #include "time_axis_view.h" #include "public_editor.h" -#include "i18n.h" +#include "pbd/i18n.h" using namespace std; using namespace Gtk; @@ -316,7 +316,7 @@ struct RouteIOs { class RouteIOsComparator { public: bool operator() (RouteIOs const & a, RouteIOs const & b) { - return a.route->order_key () < b.route->order_key (); + return a.route->presentation_info ().order() < b.route->presentation_info().order(); } }; @@ -381,7 +381,7 @@ PortGroupList::gather (ARDOUR::Session* session, ARDOUR::DataType type, bool inp */ for (list::iterator i = route_ios.begin(); i != route_ios.end(); ++i) { - TimeAxisView* tv = PublicEditor::instance().axis_view_from_route (i->route); + TimeAxisView* tv = PublicEditor::instance().axis_view_from_stripable (i->route); /* Work out which group to put these IOs' bundles in */ boost::shared_ptr g; @@ -511,7 +511,18 @@ PortGroupList::gather (ARDOUR::Session* session, ARDOUR::DataType type, bool inp lpnc += ':'; vector ports; - if (AudioEngine::instance()->get_ports ("", type, inputs ? IsInput : IsOutput, ports) > 0) { + if (type == DataType::NIL) { + vector p1; + AudioEngine::instance()->get_ports ("", DataType::AUDIO, inputs ? IsInput : IsOutput, ports); + AudioEngine::instance()->get_ports ("", DataType::MIDI, inputs ? IsInput : IsOutput, p1); + for (vector::const_iterator s = p1.begin(); s != p1.end(); ++s) { + ports.push_back (*s); + } + } else { + AudioEngine::instance()->get_ports ("", type, inputs ? IsInput : IsOutput, ports); + } + + if (ports.size () > 0) { for (vector::const_iterator s = ports.begin(); s != ports.end(); ) {