-#ifndef __ardour_ui_io_selector_h__
-#define __ardour_ui_io_selector_h__
-
-#if __GNUC__ >= 3
-#include <ext/slist>
-using __gnu_cxx::slist;
-#else
-#include <slist.h>
-#endif
-
-#include <string>
-#include <gtkmm/box.h>
-#include <gtkmm/frame.h>
-#include <gtkmm/button.h>
-#include <gtkmm/scrolledwindow.h>
-#include <gtkmm/notebook.h>
-#include <gtkmm/treeview.h>
-#include <gtkmm/liststore.h>
-
-#include <ardour_dialog.h>
-
-namespace ARDOUR {
- class IO;
- class Session;
- class PortInsert;
- class Port;
- class Redirect;
-}
-
-class IOSelector : public Gtk::VBox {
- public:
- IOSelector (ARDOUR::Session&, ARDOUR::IO&, bool for_input);
- ~IOSelector ();
-
- void redisplay ();
-
- enum Result {
- Cancelled,
- Accepted
- };
-
- sigc::signal<void,Result> Finished;
-
- protected:
- ARDOUR::Session& session;
-
- private:
- ARDOUR::IO& io;
- bool for_input;
- ARDOUR::Port *selected_port;