Add options to add ports to input/output menus on mixer strips.

git-svn-id: svn://localhost/ardour2/branches/3.0@10408 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
Carl Hetherington 2011-11-03 02:20:45 +00:00
parent 154c2a35d7
commit c9ec37afaf
2 changed files with 35 additions and 0 deletions

View File

@ -674,6 +674,16 @@ MixerStrip::output_press (GdkEventButton *ev)
output_menu_bundles.clear ();
citems.push_back (MenuElem (_("Disconnect"), sigc::mem_fun (*(static_cast<RouteUI*>(this)), &RouteUI::disconnect_output)));
for (DataType::iterator i = DataType::begin(); i != DataType::end(); ++i) {
citems.push_back (
MenuElem (
string_compose ("Add %1 port", (*i).to_i18n_string()),
sigc::bind (sigc::mem_fun (*this, &MixerStrip::add_output_port), *i)
)
);
}
citems.push_back (SeparatorElem());
ARDOUR::BundleList current = _route->output()->bundles_connected ();
@ -785,6 +795,16 @@ MixerStrip::input_press (GdkEventButton *ev)
case 3:
{
citems.push_back (MenuElem (_("Disconnect"), sigc::mem_fun (*(static_cast<RouteUI*>(this)), &RouteUI::disconnect_input)));
for (DataType::iterator i = DataType::begin(); i != DataType::end(); ++i) {
citems.push_back (
MenuElem (
string_compose ("Add %1 port", (*i).to_i18n_string()),
sigc::bind (sigc::mem_fun (*this, &MixerStrip::add_input_port), *i)
)
);
}
citems.push_back (SeparatorElem());
input_menu_bundles.clear ();
@ -2015,3 +2035,15 @@ MixerStrip::override_solo_visibility () const
return boost::optional<bool> ();
}
void
MixerStrip::add_input_port (DataType t)
{
_route->input()->add_port ("", this, t);
}
void
MixerStrip::add_output_port (DataType t)
{
_route->output()->add_port ("", this, t);
}

View File

@ -305,6 +305,9 @@ class MixerStrip : public RouteUI, public Gtk::EventBox
PBD::ScopedConnection _config_connection;
void add_input_port (ARDOUR::DataType);
void add_output_port (ARDOUR::DataType);
static std::string meter_point_string (ARDOUR::MeterPoint);
};