major design changes: use glib event loop for MIDI thread/UI; rework design of BaseUI...
[ardour.git] / gtk2_ardour / ardour_ui.cc
index 0607a03e54ad6dfc2fe516c7e497cd89f38dfc7c..a4675f4a212b92384e42a211b8bfaf5f4ecf21ce 100644 (file)
 #include "pbd/memento_command.h"
 #include "pbd/file_utils.h"
 
-#include <gtkmm2ext/gtk_ui.h>
-#include <gtkmm2ext/utils.h>
-#include <gtkmm2ext/click_box.h>
-#include <gtkmm2ext/fastmeter.h>
-#include <gtkmm2ext/stop_signal.h>
-#include <gtkmm2ext/popup.h>
-#include <gtkmm2ext/window_title.h>
+#include "gtkmm2ext/gtk_ui.h"
+#include "gtkmm2ext/utils.h"
+#include "gtkmm2ext/click_box.h"
+#include "gtkmm2ext/fastmeter.h"
+#include "gtkmm2ext/stop_signal.h"
+#include "gtkmm2ext/popup.h"
+#include "gtkmm2ext/window_title.h"
 
 #include "midi++/manager.h"
 
@@ -115,7 +115,7 @@ sigc::signal<void,nframes_t, bool, nframes_t> ARDOUR_UI::Clock;
 
 ARDOUR_UI::ARDOUR_UI (int *argcp, char **argvp[])
 
-       : Gtkmm2ext::UI (X_("Ardour"), argcp, argvp),
+       : Gtkmm2ext::UI (X_("gui"), argcp, argvp),
 
          primary_clock (X_("primary"), false, X_("TransportClockDisplay"), true, true, false, true),
          secondary_clock (X_("secondary"), false, X_("SecondaryClockDisplay"), true, true, false, true),
@@ -274,7 +274,12 @@ ARDOUR_UI::ARDOUR_UI (int *argcp, char **argvp[])
 
        /* we like keyboards */
 
-       keyboard = new Keyboard;
+       keyboard = new ArdourKeyboard;
+
+       XMLNode* node = ARDOUR_UI::instance()->keyboard_settings();
+       if (node) {
+               keyboard->set_state (*node, Stateful::loading_state_version);
+       }
 
        reset_dpi();