#include <gtkmm/radiobutton.h>
#include <gtkmm/label.h>
#include <gtkmm/table.h>
+#include <gtkmm/entry.h>
#include <gtkmm/treestore.h>
#include "ardour_window.h"
private:
+ struct AddTransportMasterDialog : public ArdourDialog {
+ public:
+ AddTransportMasterDialog ();
+ std::string get_name () const;
+ ARDOUR::SyncSource get_type () const;
+
+ private:
+ Gtk::Label name_label;
+ Gtk::Label type_label;
+ Gtk::HBox name_hbox;
+ Gtk::HBox type_hbox;
+ Gtk::Entry name_entry;
+ Gtk::ComboBoxText type_combo;
+ };
+
struct Row : sigc::trackable, PBD::ScopedConnectionList {
TransportMastersWidget& parent;
Gtk::EventBox label_box;
sigc::connection update_connection;
PBD::ScopedConnection current_connection;
+ PBD::ScopedConnection add_connection;
+ PBD::ScopedConnection remove_connection;
void rebuild ();
void current_changed (boost::shared_ptr<ARDOUR::TransportMaster> old_master, boost::shared_ptr<ARDOUR::TransportMaster> new_master);
void add_master ();
+
+ public:
+ bool idle_remove (Row*);
};
class TransportMastersWindow : public ArdourWindow