diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2012-05-09 16:44:06 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2012-05-09 16:44:06 +0000 |
commit | 5a7a89e0681c477219c1d2310678ca6226d01ffa (patch) | |
tree | e1cccd2c451667690c2d987f307c2dd2499e8c12 /libs | |
parent | 73161988bb80813ae68e4ec9ad676d54169bcb4c (diff) |
add a (potentially temporary) discover button for mackie devices
git-svn-id: svn://localhost/ardour2/branches/3.0@12228 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs')
-rw-r--r-- | libs/surfaces/mackie/gui.cc | 14 | ||||
-rw-r--r-- | libs/surfaces/mackie/gui.h | 3 | ||||
-rw-r--r-- | libs/surfaces/mackie/mackie_control_protocol.h | 3 | ||||
-rw-r--r-- | libs/surfaces/mackie/surface.cc | 2 |
4 files changed, 20 insertions, 2 deletions
diff --git a/libs/surfaces/mackie/gui.cc b/libs/surfaces/mackie/gui.cc index 8728b4a88c..e27a354305 100644 --- a/libs/surfaces/mackie/gui.cc +++ b/libs/surfaces/mackie/gui.cc @@ -74,13 +74,14 @@ MackieControlProtocolGUI::MackieControlProtocolGUI (MackieControlProtocol& p) , recalibrate_fader_button (_("Recalibrate Faders")) , ipmidi_base_port_adjustment (_cp.ipmidi_base(), 0, 32767, 1, 1000) , ipmidi_base_port_spinner (ipmidi_base_port_adjustment) + , discover_button (_("Discover Mackie Devices")) { Gtk::Label* l; Gtk::Alignment* align; set_border_width (12); - Gtk::Table* table = Gtk::manage (new Gtk::Table (2, 8)); + Gtk::Table* table = Gtk::manage (new Gtk::Table (2, 9)); table->set_row_spacings (4); table->set_col_spacings (6); l = manage (new Gtk::Label (_("Device Type:"))); @@ -144,6 +145,10 @@ MackieControlProtocolGUI::MackieControlProtocolGUI (MackieControlProtocol& p) ipmidi_base_port_spinner.set_sensitive (_cp.device_info().uses_ipmidi()); ipmidi_base_port_adjustment.signal_value_changed().connect (sigc::mem_fun (*this, &MackieControlProtocolGUI::ipmidi_spinner_changed)); + + table->attach (discover_button, 1, 2, 8, 9, AttachOptions(FILL|EXPAND), AttachOptions (0)); + discover_button.signal_clicked().connect (sigc::mem_fun (*this, &MackieControlProtocolGUI::discover_clicked)); + vector<string> profiles; profiles.push_back ("default"); @@ -510,3 +515,10 @@ MackieControlProtocolGUI::ipmidi_spinner_changed () cerr << "Set IP MIDI base to " << ipmidi_base_port_spinner.get_value() << endl; _cp.set_ipmidi_base ((int16_t) lrintf (ipmidi_base_port_spinner.get_value())); } + +void +MackieControlProtocolGUI::discover_clicked () +{ + /* this should help to get things started */ + _cp.midi_connectivity_established (); +} diff --git a/libs/surfaces/mackie/gui.h b/libs/surfaces/mackie/gui.h index 9af0c21cab..42ee338f99 100644 --- a/libs/surfaces/mackie/gui.h +++ b/libs/surfaces/mackie/gui.h @@ -105,5 +105,8 @@ class MackieControlProtocolGUI : public Gtk::Notebook Gtk::Button recalibrate_fader_button; Gtk::Adjustment ipmidi_base_port_adjustment; Gtk::SpinButton ipmidi_base_port_spinner; + Gtk::Button discover_button; + + void discover_clicked (); }; diff --git a/libs/surfaces/mackie/mackie_control_protocol.h b/libs/surfaces/mackie/mackie_control_protocol.h index 818f44b13c..0fd5d8c8a2 100644 --- a/libs/surfaces/mackie/mackie_control_protocol.h +++ b/libs/surfaces/mackie/mackie_control_protocol.h @@ -195,6 +195,8 @@ class MackieControlProtocol int16_t ipmidi_base() const { return _ipmidi_base; } void set_ipmidi_base (int16_t); + + void midi_connectivity_established (); protected: // shut down the surface @@ -233,7 +235,6 @@ class MackieControlProtocol int stop (); void thread_init (); - void midi_connectivity_established (); bool route_is_locked_to_strip (boost::shared_ptr<ARDOUR::Route>) const; diff --git a/libs/surfaces/mackie/surface.cc b/libs/surfaces/mackie/surface.cc index 4d9ab3f877..3fa76c2240 100644 --- a/libs/surfaces/mackie/surface.cc +++ b/libs/surfaces/mackie/surface.cc @@ -803,6 +803,8 @@ Surface::gui_selection_changed (const ARDOUR::StrongRouteNotificationList& route void Surface::say_hello () { + cerr << "Sending hello to port " << _port->output_port().name() << endl; + /* wakeup for Mackie Control */ MidiByteArray wakeup (7, MIDI::sysex, 0x00, 0x00, 0x66, 0x14, 0x00, MIDI::eox); _port->write (wakeup); |