- /* Disconnect All button */
- disconnect_button.set_name ("IOSelectorButton");
- disconnect_button.set_image (*Gtk::manage (new Gtk::Image (Gtk::Stock::DISCONNECT, Gtk::ICON_SIZE_BUTTON)));
- disconnect_button.signal_clicked().connect (sigc::mem_fun (_selector, &IOSelector::disassociate_all));
- get_action_area()->pack_start (disconnect_button, false, false);
-
- /* Add Port button */
- if (_selector.maximum_io_ports() > _selector.n_io_ports()) {
- add_button.set_name ("IOSelectorButton");
- add_button.set_image (*Gtk::manage (new Gtk::Image (Gtk::Stock::ADD, Gtk::ICON_SIZE_BUTTON)));
- get_action_area()->pack_start (add_button, false, false);
- add_button.signal_clicked().connect (sigc::bind (sigc::mem_fun (_selector, &IOSelector::add_channel), boost::shared_ptr<Bundle> ()));
- }
-
- /* Rescan button */
- rescan_button.set_name ("IOSelectorButton");
- rescan_button.set_image (*Gtk::manage (new Gtk::Image (Gtk::Stock::REFRESH, Gtk::ICON_SIZE_BUTTON)));
- rescan_button.signal_clicked().connect (sigc::mem_fun (_selector, &IOSelector::setup));
- get_action_area()->pack_start (rescan_button, false, false);
-
- io->PortCountChanged.connect (sigc::hide (mem_fun (*this, &IOSelectorWindow::ports_changed)));
-
- /* Cancel button */
- if (can_cancel) {
- cancel_button.set_name ("IOSelectorButton");
- cancel_button.set_image (*Gtk::manage (new Gtk::Image (Gtk::Stock::CANCEL, Gtk::ICON_SIZE_BUTTON)));
- get_action_area()->pack_start (cancel_button, false, false);
- } else {
- cancel_button.hide();
- }
- cancel_button.signal_clicked().connect (mem_fun(*this, &IOSelectorWindow::cancel));
-
- /* OK button */
- ok_button.set_name ("IOSelectorButton");
- if (!can_cancel) {
- ok_button.set_image (*Gtk::manage (new Gtk::Image (Gtk::Stock::CLOSE, Gtk::ICON_SIZE_BUTTON)));
- }
- ok_button.signal_clicked().connect (mem_fun(*this, &IOSelectorWindow::accept));
- get_action_area()->pack_start (ok_button, false, false);
-
- get_vbox()->set_spacing (8);
-
- get_vbox()->pack_start (_selector, true, true);