hide strict-i/o UI for Mixbus
authorRobin Gareus <robin@gareus.org>
Fri, 15 Apr 2016 12:53:18 +0000 (14:53 +0200)
committerRobin Gareus <robin@gareus.org>
Fri, 15 Apr 2016 12:53:18 +0000 (14:53 +0200)
gtk2_ardour/add_route_dialog.cc
gtk2_ardour/mixer_strip.cc
gtk2_ardour/plugin_pin_dialog.cc

index 2d8e4e4ede9bcbb080746b8370dea657990a7064..50db64d3fe9c3ec54e7083bc4736ec8782f69d6d 100644 (file)
@@ -164,13 +164,18 @@ AddRouteDialog::AddRouteDialog ()
        ++n;
 
        /* New Route's Routing is.. */
-       l = manage (new Label (_("Output Ports:"), Gtk::ALIGN_LEFT, Gtk::ALIGN_CENTER, false));
-       table2->attach (*l, 1, 2, n, n + 1, Gtk::FILL, Gtk::EXPAND, 0, 0);
-       table2->attach (strict_io_combo, 2, 3, n, n + 1, Gtk::FILL, Gtk::EXPAND | Gtk::FILL, 0, 0);
 
-       ARDOUR_UI_UTILS::set_tooltip (strict_io_combo,
-                       _("With strict-i/o enabled, Effect Processors will not modify the number of channels on a track. The number of output channels will always match the number of input channels."));
-       ++n;
+       if (Profile->get_mixbus ()) {
+               strict_io_combo.set_active (1);
+       } else {
+               l = manage (new Label (_("Output Ports:"), Gtk::ALIGN_LEFT, Gtk::ALIGN_CENTER, false));
+               table2->attach (*l, 1, 2, n, n + 1, Gtk::FILL, Gtk::EXPAND, 0, 0);
+               table2->attach (strict_io_combo, 2, 3, n, n + 1, Gtk::FILL, Gtk::EXPAND | Gtk::FILL, 0, 0);
+
+               ARDOUR_UI_UTILS::set_tooltip (strict_io_combo,
+                               _("With strict-i/o enabled, Effect Processors will not modify the number of channels on a track. The number of output channels will always match the number of input channels."));
+               ++n;
+       }
 
        options_box->pack_start (*table2, false, true);
        vbox->pack_start (*options_box, false, true);
index 86b1b8eed8f0c4942a708700ed9fa68bb0a78965..999208562f0e987b59fa5c5c9243baa1686f2c6f 100644 (file)
@@ -1591,11 +1591,13 @@ MixerStrip::build_route_ops_menu ()
        i->set_sensitive(! _session->transport_rolling());
        i->signal_activate().connect (sigc::bind (sigc::mem_fun (*this, &RouteUI::set_route_active), !_route->active(), false));
 
-       items.push_back (SeparatorElem());
-       items.push_back (CheckMenuElem (_("Strict I/O")));
-       i = dynamic_cast<Gtk::CheckMenuItem *> (&items.back());
-       i->set_active (_route->strict_io());
-       i->signal_activate().connect (sigc::hide_return (sigc::bind (sigc::mem_fun (*_route, &Route::set_strict_io), !_route->strict_io())));
+       if (!Profile->get_mixbus ()) {
+               items.push_back (SeparatorElem());
+               items.push_back (CheckMenuElem (_("Strict I/O")));
+               i = dynamic_cast<Gtk::CheckMenuItem *> (&items.back());
+               i->set_active (_route->strict_io());
+               i->signal_activate().connect (sigc::hide_return (sigc::bind (sigc::mem_fun (*_route, &Route::set_strict_io), !_route->strict_io())));
+       }
 
        items.push_back (SeparatorElem());
 
index 0b5b03c8257720abcc1debfda81f0303fbe0daf3..8bfab6b3389fc2fc1d730451926deb01a1f78230 100644 (file)
@@ -32,6 +32,7 @@
 #include "ardour/audioengine.h"
 #include "ardour/plugin.h"
 #include "ardour/port.h"
+#include "ardour/profile.h"
 #include "ardour/session.h"
 
 #include "plugin_pin_dialog.h"
@@ -776,7 +777,7 @@ PluginPinDialog::darea_expose_event (GdkEventExpose* ev)
        cairo_set_source_rgba (cr, 1., 1., 1., 1.);
        pango_cairo_show_layout (cr, layout->gobj ());
 
-       if (_pi->strict_io ()) {
+       if (_pi->strict_io () && !Profile->get_mixbus ()) {
                layout->set_text (_("Strict I/O"));
                layout->get_pixel_size (text_width, text_height);
                const double sx0 = _margin_x + .5 * (_innerwidth - text_width);