summaryrefslogtreecommitdiff
path: root/libs/ardour/io.cc
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2009-01-20 14:46:00 +0000
committerCarl Hetherington <carl@carlh.net>2009-01-20 14:46:00 +0000
commit61db2175eb8b8fffd0c1796ace78ac33c9e1adf0 (patch)
tree6fdc23e7e0161ce54642b0bd44dc8e0a33f05efe /libs/ardour/io.cc
parentef038c1a84ecd541a540d5a5baa677d7663e535c (diff)
New matrix-based editor for connections and bundles, based on thorwil's design.
Add Bundle Manager dialog. git-svn-id: svn://localhost/ardour2/branches/3.0@4415 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/io.cc')
-rw-r--r--libs/ardour/io.cc11
1 files changed, 8 insertions, 3 deletions
diff --git a/libs/ardour/io.cc b/libs/ardour/io.cc
index ed1064f0e8..2b8f12680f 100644
--- a/libs/ardour/io.cc
+++ b/libs/ardour/io.cc
@@ -593,7 +593,7 @@ IO::remove_output_port (Port* port, void* src)
PortCountChanged (n_outputs()); /* EMIT SIGNAL */
}
- if (change == ConnectionsChanged) {
+ if (change == ConfigurationChanged) {
setup_bundles_for_inputs_and_outputs ();
}
@@ -2592,19 +2592,24 @@ IO::setup_bundles_for_inputs_and_outputs ()
{
char buf[32];
+ _bundle_for_inputs->remove_channels ();
+ _bundle_for_outputs->remove_channels ();
+
snprintf(buf, sizeof (buf), _("%s in"), _name.c_str());
_bundle_for_inputs->set_name (buf);
uint32_t const ni = inputs().num_ports();
- _bundle_for_inputs->set_nchannels (ni);
for (uint32_t i = 0; i < ni; ++i) {
+ snprintf (buf, sizeof(buf), _("in %d"), (i + 1));
+ _bundle_for_inputs->add_channel (buf);
_bundle_for_inputs->set_port (i, inputs().port(i)->name());
}
snprintf(buf, sizeof (buf), _("%s out"), _name.c_str());
_bundle_for_outputs->set_name (buf);
uint32_t const no = outputs().num_ports();
- _bundle_for_outputs->set_nchannels (no);
for (uint32_t i = 0; i < no; ++i) {
+ snprintf (buf, sizeof(buf), _("out %d"), (i + 1));
+ _bundle_for_outputs->add_channel (buf);
_bundle_for_outputs->set_port (i, outputs().port(i)->name());
}
}