Add a rescan button.
authorCarl Hetherington <carl@carlh.net>
Tue, 10 Feb 2009 15:45:06 +0000 (15:45 +0000)
committerCarl Hetherington <carl@carlh.net>
Tue, 10 Feb 2009 15:45:06 +0000 (15:45 +0000)
git-svn-id: svn://localhost/ardour2/branches/3.0@4519 d708f5d6-7413-0410-9779-e7cbd77b26cf

gtk2_ardour/global_port_matrix.cc
gtk2_ardour/global_port_matrix.h

index 24ff101c61ceb9812074300236f8414460bea3a0..10a28b128d7a3666f4bf0d25bd294152e925e395 100644 (file)
@@ -17,6 +17,8 @@
 
 */
 
+#include <gtkmm/image.h>
+#include <gtkmm/stock.h>
 #include "global_port_matrix.h"
 #include "i18n.h"
 #include "ardour/bundle.h"
@@ -113,9 +115,23 @@ GlobalPortMatrixWindow::GlobalPortMatrixWindow (ARDOUR::Session& s, ARDOUR::Data
                set_title (_("MIDI Connections Manager"));
                break;
        }
+
+       Gtk::HBox* buttons_hbox = Gtk::manage (new Gtk::HBox);
+
+       _rescan_button.set_label (_("Rescan"));
+       _rescan_button.set_image (*Gtk::manage (new Gtk::Image (Gtk::Stock::REFRESH, Gtk::ICON_SIZE_BUTTON)));
+       _rescan_button.signal_clicked().connect (sigc::mem_fun (*this, &GlobalPortMatrixWindow::rescan));
+       buttons_hbox->pack_start (_rescan_button, Gtk::PACK_SHRINK);
        
        Gtk::VBox* vbox = Gtk::manage (new Gtk::VBox);
        vbox->pack_start (_port_matrix);
+       vbox->pack_start (*buttons_hbox, Gtk::PACK_SHRINK);
        add (*vbox);
        show_all ();
 }
+
+void
+GlobalPortMatrixWindow::rescan ()
+{
+       _port_matrix.setup_all_ports ();
+}
index cb402fc3cf12492d72900e18c7a03fd96908262d..db742252ad894a3cb6bf04bc60df20ce50992016 100644 (file)
@@ -20,6 +20,7 @@
 #ifndef __ardour_gtk_global_port_matrix_h__
 #define __ardour_gtk_global_port_matrix_h__
 
+#include <gtkmm/button.h>
 #include "port_matrix.h"
 #include "port_group.h"
 #include "ardour_dialog.h"
@@ -62,7 +63,10 @@ public:
        GlobalPortMatrixWindow (ARDOUR::Session&, ARDOUR::DataType);
 
 private:
+       void rescan ();
+       
        GlobalPortMatrix _port_matrix;
+       Gtk::Button _rescan_button;
 
 };