diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2008-12-14 09:35:23 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2008-12-14 09:35:23 +0000 |
commit | 18d6284438bb69655670a7b1e931cd73f35d00d8 (patch) | |
tree | 0ca40171267042f11f17e434d25be43074400133 /gtk2_ardour/port_matrix.cc | |
parent | 7b5e8bf0f751ec76fce440e1547f5a274a9b9549 (diff) |
bump required version of GTK, SLV2; basic fixups so that the new port-matrix io-selector actually shows up, even if its ugly and not working correctly
git-svn-id: svn://localhost/ardour2/branches/3.0@4322 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/port_matrix.cc')
-rw-r--r-- | gtk2_ardour/port_matrix.cc | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/gtk2_ardour/port_matrix.cc b/gtk2_ardour/port_matrix.cc index b1dd2a17ac..c2bb01691b 100644 --- a/gtk2_ardour/port_matrix.cc +++ b/gtk2_ardour/port_matrix.cc @@ -144,6 +144,12 @@ PortMatrix::~PortMatrix () clear (); } +void +PortMatrix::set_ports (const std::list<std::string>& ports) +{ + matrix.set_ports (ports); +} + /** Clear out the things that change when the number of source or destination ports changes */ void PortMatrix::clear () @@ -244,13 +250,17 @@ PortMatrix::setup () _side_vbox.pack_start (*_side_vbox_pad, false, false); } + matrix.clear (); + /* Checkbutton tables and visibility checkbuttons */ for (PortGroupList::iterator i = _port_group_list.begin(); i != _port_group_list.end(); ++i) { PortGroupUI* t = new PortGroupUI (*this, **i); _port_group_ui.push_back (t); - + + matrix.add_group (**i); + _visibility_checkbutton_box.pack_start (t->get_visibility_checkbutton(), false, false); CheckButton* chk = dynamic_cast<CheckButton*>(&t->get_visibility_checkbutton()); @@ -370,6 +380,8 @@ PortGroupList::refresh () boost::shared_ptr<ARDOUR::Session::RouteList> routes = _session.get_routes (); + cerr << "Looking for arour routes\n"; + for (ARDOUR::Session::RouteList::const_iterator i = routes->begin(); i != routes->end(); ++i) { PortGroup* g = 0; @@ -408,6 +420,8 @@ PortGroupList::refresh () finding all the ports that we can connect to. */ + cerr << "Looking for non-ardour ports\n"; + const char **ports = _session.engine().get_ports ("", _type.to_jack_type(), _offer_inputs ? JackPortIsInput : JackPortIsOutput); if (ports) { @@ -415,6 +429,8 @@ PortGroupList::refresh () int n = 0; string client_matching_string; + cerr << "Got some\n"; + client_matching_string = _session.engine().client_name(); client_matching_string += ':'; @@ -437,6 +453,11 @@ PortGroupList::refresh () free (ports); } + cerr << "at end of refresh, we have " << buss.ports.size () << " buss\n"; + cerr << "at end of refresh, we have " << track.ports.size () << " track\n"; + cerr << "at end of refresh, we have " << system.ports.size () << " system\n"; + cerr << "at end of refresh, we have " << other.ports.size () << " other\n"; + push_back (&system); push_back (&buss); push_back (&track); |