[nemiver] Remove libglademm dependency and replace with GtkBuilder (Closes: #590817)



commit 7d4faeaeca78cc2ca114d3a49ac752cbd840cd70
Author: Hubert Figuiere <hub figuiere net>
Date:   Wed Aug 25 20:35:57 2010 -0700

    Remove libglademm dependency and replace with GtkBuilder (Closes: #590817)
    
    	* configure.ac: remove libglademm detection
    	* glade/*: renamed to ui/*
    	* src/persp/dbgperspective/glade/*.glade: renamed to src/persp/dbgperspective/ui/*.ui
    	* */Makefile.am: adjust following the renaming of glade to ui.
    	* */*.{h,cc}: replace anything Glade with GtkBuilder.

 Makefile.am                                        |    2 +-
 configure.ac                                       |   11 +-
 glade/Makefile.am                                  |    8 -
 glade/locatefiledialog.glade                       |  149 ---
 glade/workbench.gladep                             |    8 -
 po/POTFILES.in                                     |   34 +-
 src/common/nmv-env.cc                              |   26 +-
 src/common/nmv-env.h                               |    4 +-
 src/main.cc                                        |    1 -
 src/persp/dbgperspective/Makefile.am               |    2 +-
 src/persp/dbgperspective/glade/Makefile.am         |   22 -
 src/persp/dbgperspective/glade/bodycontainer.glade |   76 --
 .../dbgperspective/glade/findtextdialog.glade      |  357 ------
 .../dbgperspective/glade/globalvarsinspector.glade |   78 --
 .../dbgperspective/glade/loadcoredialog.glade      |  209 ----
 .../dbgperspective/glade/openfiledialog.glade      |  204 ----
 .../dbgperspective/glade/preferencesdialog.glade   | 1248 --------------------
 .../dbgperspective/glade/proclistdialog.glade      |  202 ----
 .../dbgperspective/glade/runprogramdialog.glade    |  524 --------
 .../dbgperspective/glade/savedsessionsdialog.glade |  194 ---
 .../dbgperspective/glade/setbreakpointdialog.glade |  499 --------
 .../dbgperspective/nmv-call-function-dialog.cc     |   13 +-
 .../dbgperspective/nmv-choose-overloads-dialog.cc  |   24 +-
 src/persp/dbgperspective/nmv-dbg-perspective.cc    |   18 +-
 src/persp/dbgperspective/nmv-find-text-dialog.cc   |   34 +-
 .../nmv-global-vars-inspector-dialog.cc            |   12 +-
 src/persp/dbgperspective/nmv-load-core-dialog.cc   |   17 +-
 src/persp/dbgperspective/nmv-memory-view.h         |    1 -
 src/persp/dbgperspective/nmv-open-file-dialog.cc   |   19 +-
 src/persp/dbgperspective/nmv-preferences-dialog.cc |   76 +-
 src/persp/dbgperspective/nmv-proc-list-dialog.cc   |   13 +-
 .../dbgperspective/nmv-remote-target-dialog.cc     |   74 +-
 src/persp/dbgperspective/nmv-run-program-dialog.cc |   55 +-
 .../dbgperspective/nmv-saved-sessions-dialog.cc    |   17 +-
 .../dbgperspective/nmv-set-breakpoint-dialog.cc    |   51 +-
 .../dbgperspective/nmv-var-inspector-dialog.cc     |   18 +-
 src/persp/dbgperspective/nmv-watchpoint-dialog.cc  |   35 +-
 src/persp/dbgperspective/ui/Makefile.am            |   22 +
 src/persp/dbgperspective/ui/bodycontainer.ui       |   46 +
 .../callfunctiondialog.ui}                         |   80 +-
 .../chooseoverloadsdialog.ui}                      |   81 +-
 src/persp/dbgperspective/ui/findtextdialog.ui      |  248 ++++
 src/persp/dbgperspective/ui/globalvarsinspector.ui |   61 +
 src/persp/dbgperspective/ui/loadcoredialog.ui      |  133 +++
 src/persp/dbgperspective/ui/openfiledialog.ui      |  150 +++
 src/persp/dbgperspective/ui/preferencesdialog.ui   |  748 ++++++++++++
 src/persp/dbgperspective/ui/proclistdialog.ui      |  139 +++
 .../remotetargetdialog.ui}                         |  149 ++-
 src/persp/dbgperspective/ui/runprogramdialog.ui    |  322 +++++
 src/persp/dbgperspective/ui/savedsessionsdialog.ui |  134 +++
 src/persp/dbgperspective/ui/setbreakpointdialog.ui |  344 ++++++
 .../varinspectordialog.ui}                         |   83 +-
 .../watchpointdialog.ui}                           |  133 ++-
 src/uicommon/nmv-dialog.cc                         |   38 +-
 src/uicommon/nmv-dialog.h                          |    8 +-
 src/uicommon/nmv-locate-file-dialog.cc             |   15 +-
 src/uicommon/nmv-ui-utils.h                        |   34 +-
 src/workbench/nmv-workbench.cc                     |   24 +-
 ui/Makefile.am                                     |    8 +
 ui/locatefiledialog.ui                             |  108 ++
 glade/workbench.glade => ui/workbench.ui           |   73 +-
 61 files changed, 3123 insertions(+), 4393 deletions(-)
---
diff --git a/Makefile.am b/Makefile.am
index fcf3d8b..68715a2 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,4 +1,4 @@
-SUBDIRS = src glade menus tests po data docs help
+SUBDIRS = src ui menus tests po data docs help
 ACLOCAL_AMFLAGS = -I m4
 headers= config.h
 
diff --git a/configure.ac b/configure.ac
index 31663ba..ccf621a 100644
--- a/configure.ac
+++ b/configure.ac
@@ -36,8 +36,6 @@ LIBXML2_VERSION=2.6.22
 AC_SUBST([LIBXML2_VERSION])
 LIBGTKMM_VERSION=2.12.0
 AC_SUBST([LIBGTKMM_VERSION])
-LIBGLADEMM_VERSION=2.6.0
-AC_SUBST([LIBGLADEMM_VERSION])
 LIBGTKSOURCEVIEWMM1_VERSION=0.3.0
 AC_SUBST([LIBGTKSOURCEVIEWMM1_VERSION])
 LIBGTKSOURCEVIEWMM2_VERSION=1.9.4
@@ -255,7 +253,6 @@ fi
 
 if test x$ENABLE_WORKBENCH = xyes ; then
     DEP_WORKBENCH=" gtkmm-2.4 >= $LIBGTKMM_VERSION \
-                   libglademm-2.4 >= $LIBGLADEMM_VERSION \
                    $LIBGTKSOURCEVIEWMM_PKG >= $LIBGTKSOURCEVIEWMM_VERSION"
 fi
 
@@ -286,7 +283,6 @@ AC_SUBST(NEMIVERCOMMON_CFLAGS)
 
 dnl library dependencies for the nemiver common UI module
 DEP_UICOMMON=" gtkmm-2.4 >= $LIBGTKMM_VERSION \
-               libglademm-2.4 >= $LIBGLADEMM_VERSION \
                $LIBGTKSOURCEVIEWMM_PKG >= $LIBGTKSOURCEVIEWMM_VERSION \
                vte >= $LIBVTE_VERSION"
 
@@ -310,8 +306,7 @@ AC_SUBST(NEMIVERWORKBENCH_LIBS)
 AC_SUBST(NEMIVERWORKBENCH_CFLAGS)
 
 dnl library dependencies for the nemiver debug perspective plugin
-DEP_PERSP=" libglademm-2.4 >= $LIBGLADEMM_VERSION \
-           $LIBGTKSOURCEVIEWMM_PKG >= $LIBGTKSOURCEVIEWMM_VERSION \
+DEP_PERSP="$LIBGTKSOURCEVIEWMM_PKG >= $LIBGTKSOURCEVIEWMM_VERSION \
            vte >= $LIBVTE_VERSION"
 
 PKG_CHECK_MODULES(NEMIVERDBGPERSP, $DEP_UICOMMON $DEP_VFS $DEP_PERSP $DEP_MEMORYVIEW)
@@ -429,7 +424,7 @@ src/Makefile
   src/persp/Makefile
   src/persp/dbgperspective/Makefile
   src/persp/dbgperspective/dbgperspective.conf
-    src/persp/dbgperspective/glade/Makefile
+    src/persp/dbgperspective/ui/Makefile
     src/persp/dbgperspective/menus/Makefile
     src/persp/dbgperspective/icons/Makefile
     src/persp/dbgperspective/sqlscripts/Makefile
@@ -443,7 +438,7 @@ data/Makefile
         data/icons/32x32/Makefile
         data/icons/48x48/Makefile
         data/icons/scalable/Makefile
-glade/Makefile
+ui/Makefile
 menus/Makefile
 tests/Makefile
 po/Makefile.in
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 750e04e..ecaec13 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -1,25 +1,25 @@
 [encoding: UTF-8]
-glade/workbench.glade
-glade/locatefiledialog.glade
+ui/workbench.ui
+ui/locatefiledialog.ui
 data/nemiver.desktop.in
 src/main.cc
 src/uicommon/nmv-locate-file-dialog.cc
-src/persp/dbgperspective/glade/bodycontainer.glade
-src/persp/dbgperspective/glade/callfunctiondialog.glade
-src/persp/dbgperspective/glade/findtextdialog.glade
-src/persp/dbgperspective/glade/loadcoredialog.glade
-src/persp/dbgperspective/glade/openfiledialog.glade
-src/persp/dbgperspective/glade/preferencesdialog.glade
-src/persp/dbgperspective/glade/proclistdialog.glade
-src/persp/dbgperspective/glade/runprogramdialog.glade
-src/persp/dbgperspective/glade/savedsessionsdialog.glade
-src/persp/dbgperspective/glade/varinspectordialog.glade
-src/persp/dbgperspective/glade/chooseoverloadsdialog.glade
-src/persp/dbgperspective/glade/remotetargetdialog.glade
-src/persp/dbgperspective/glade/setbreakpointdialog.glade
+src/persp/dbgperspective/ui/bodycontainer.ui
+src/persp/dbgperspective/ui/callfunctiondialog.ui
+src/persp/dbgperspective/ui/findtextdialog.ui
+src/persp/dbgperspective/ui/loadcoredialog.ui
+src/persp/dbgperspective/ui/openfiledialog.ui
+src/persp/dbgperspective/ui/preferencesdialog.ui
+src/persp/dbgperspective/ui/proclistdialog.ui
+src/persp/dbgperspective/ui/runprogramdialog.ui
+src/persp/dbgperspective/ui/savedsessionsdialog.ui
+src/persp/dbgperspective/ui/varinspectordialog.ui
+src/persp/dbgperspective/ui/chooseoverloadsdialog.ui
+src/persp/dbgperspective/ui/remotetargetdialog.ui
+src/persp/dbgperspective/ui/setbreakpointdialog.ui
 src/persp/dbgperspective/nmv-choose-overloads-dialog.cc
-src/persp/dbgperspective/glade/globalvarsinspector.glade
-src/persp/dbgperspective/glade/watchpointdialog.glade
+src/persp/dbgperspective/ui/globalvarsinspector.ui
+src/persp/dbgperspective/ui/watchpointdialog.ui
 src/persp/dbgperspective/nmv-breakpoints-view.cc
 src/persp/dbgperspective/nmv-call-stack.cc
 src/persp/dbgperspective/nmv-dbg-perspective.cc
diff --git a/src/common/nmv-env.cc b/src/common/nmv-env.cc
index 53cc2b9..d635162 100644
--- a/src/common/nmv-env.cc
+++ b/src/common/nmv-env.cc
@@ -103,17 +103,17 @@ get_system_lib_dir ()
 }
 
 const UString&
-get_glade_files_dir ()
+get_gtkbuilder_files_dir ()
 {
-    static UString s_glade_files_dir;
-    if (s_glade_files_dir == "") {
+    static UString s_gtkbuilder_files_dir;
+    if (s_gtkbuilder_files_dir == "") {
         vector<string> path_elems;
         path_elems.push_back (get_data_dir ());
         path_elems.push_back ("nemiver");
-        path_elems.push_back ("glade");
-        s_glade_files_dir = Glib::build_filename (path_elems).c_str ();
+        path_elems.push_back ("ui");
+        s_gtkbuilder_files_dir = Glib::build_filename (path_elems).c_str ();
     }
-    return s_glade_files_dir;
+    return s_gtkbuilder_files_dir;
 }
 
 const UString&
@@ -242,18 +242,18 @@ create_user_db_dir ()
 }
 
 UString
-build_path_to_glade_file (const UString &a_glade_file_name)
+build_path_to_gtkbuilder_file (const UString &a_gtkbuilder_file_name)
 {
-    UString dir (get_glade_files_dir ());
+    UString dir (get_gtkbuilder_files_dir ());
     vector<string> path_elems;
     path_elems.push_back (dir.c_str ());
-    path_elems.push_back (a_glade_file_name);
-    UString path_to_glade = Glib::build_filename (path_elems).c_str ();
-    if (!Glib::file_test (path_to_glade.c_str (),
+    path_elems.push_back (a_gtkbuilder_file_name);
+    UString path_to_gtkbuilder = Glib::build_filename (path_elems).c_str ();
+    if (!Glib::file_test (path_to_gtkbuilder.c_str (),
                          Glib::FILE_TEST_IS_REGULAR)) {
-        THROW ("couldn't find file " + path_to_glade);
+        THROW ("couldn't find file " + path_to_gtkbuilder);
     }
-    return path_to_glade;
+    return path_to_gtkbuilder;
 }
 
 UString
diff --git a/src/common/nmv-env.h b/src/common/nmv-env.h
index 7181433..8b5e1b0 100644
--- a/src/common/nmv-env.h
+++ b/src/common/nmv-env.h
@@ -50,7 +50,7 @@ NEMIVER_API const UString& get_data_dir ();
 
 NEMIVER_API const UString& get_system_lib_dir ();
 
-NEMIVER_API const UString& get_glade_files_dir ();
+NEMIVER_API const UString& get_gtkbuilder_files_dir ();
 
 NEMIVER_API const UString& get_menu_files_dir ();
 
@@ -72,7 +72,7 @@ NEMIVER_API const UString& get_gdb_program ();
 
 NEMIVER_API bool create_user_db_dir ();
 
-NEMIVER_API UString build_path_to_glade_file (const UString &a_glade_file_name);
+NEMIVER_API UString build_path_to_gtkbuilder_file (const UString &a_gtkbuilder_file_name);
 
 NEMIVER_API UString build_path_to_menu_file (const UString &a_ui_file_name);
 
diff --git a/src/main.cc b/src/main.cc
index abb5e4a..bc94428 100644
--- a/src/main.cc
+++ b/src/main.cc
@@ -26,7 +26,6 @@
 #include <unistd.h>
 #include <iostream>
 #include <gtkmm/window.h>
-#include <libglademm.h>
 #include <glib/gi18n.h>
 #include "nmv-exception.h"
 #include "nmv-initializer.h"
diff --git a/src/persp/dbgperspective/Makefile.am b/src/persp/dbgperspective/Makefile.am
index 7bcdc56..b7f6271 100644
--- a/src/persp/dbgperspective/Makefile.am
+++ b/src/persp/dbgperspective/Makefile.am
@@ -1,4 +1,4 @@
-SUBDIRS=glade menus icons sqlscripts schemas
+SUBDIRS=ui menus icons sqlscripts schemas
 
 install-data-local: install-schemas
 
diff --git a/src/persp/dbgperspective/nmv-call-function-dialog.cc b/src/persp/dbgperspective/nmv-call-function-dialog.cc
index 3b4860b..529c4cc 100644
--- a/src/persp/dbgperspective/nmv-call-function-dialog.cc
+++ b/src/persp/dbgperspective/nmv-call-function-dialog.cc
@@ -24,7 +24,6 @@
  */
 #include "nmv-call-function-dialog.h"
 #include <glib/gi18n.h>
-#include <libglademm.h>
 #include "common/nmv-exception.h"
 #include "common/nmv-env.h"
 #include "common/nmv-ustring.h"
@@ -49,21 +48,21 @@ struct CallFunctionDialog::Priv {
     Glib::RefPtr<Gtk::ListStore> m_call_expr_history;
     Gtk::Button *ok_button;
     Priv (Gtk::Dialog &a_dialog,
-          const Glib::RefPtr<Gnome::Glade::Xml> &a_glade) :
+          const Glib::RefPtr<Gtk::Builder> &a_gtkbuilder) :
         call_expr_entry (0),
         ok_button (0)
     {
         a_dialog.set_default_response (Gtk::RESPONSE_OK);
 
         ok_button =
-            ui_utils::get_widget_from_glade<Gtk::Button> (a_glade,
+            ui_utils::get_widget_from_gtkbuilder<Gtk::Button> (a_gtkbuilder,
                                                           "okbutton");
         THROW_IF_FAIL (ok_button);
         ok_button->set_sensitive (false);
 
         call_expr_entry =
-            ui_utils::get_widget_from_glade<Gtk::ComboBoxEntry>
-                                            (a_glade, "callexpressionentry");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::ComboBoxEntry>
+                                            (a_gtkbuilder, "callexpressionentry");
         THROW_IF_FAIL (call_expr_entry);
         m_call_expr_history=
             Gtk::ListStore::create (get_call_expr_history_cols ());
@@ -145,9 +144,9 @@ struct CallFunctionDialog::Priv {
 };//end struct CallFunctionDialog::Priv
 
 CallFunctionDialog::CallFunctionDialog (const UString &a_root_path):
-    Dialog (a_root_path, "callfunctiondialog.glade", "callfunctiondialog")
+    Dialog (a_root_path, "callfunctiondialog.ui", "callfunctiondialog")
 {
-    m_priv.reset (new Priv (widget (), glade ()));
+    m_priv.reset (new Priv (widget (), gtkbuilder ()));
 }
 
 CallFunctionDialog::~CallFunctionDialog ()
diff --git a/src/persp/dbgperspective/nmv-choose-overloads-dialog.cc b/src/persp/dbgperspective/nmv-choose-overloads-dialog.cc
index 06985bc..2c1f820 100644
--- a/src/persp/dbgperspective/nmv-choose-overloads-dialog.cc
+++ b/src/persp/dbgperspective/nmv-choose-overloads-dialog.cc
@@ -56,7 +56,7 @@ columns ()
 struct ChooseOverloadsDialog::Priv {
     friend class ChooseOverloadsDialog;
     Gtk::Dialog &dialog;
-    Glib::RefPtr<Gnome::Glade::Xml> glade;
+    Glib::RefPtr<Gtk::Builder> gtkbuilder;
     Gtk::TreeView *tree_view;
     Glib::RefPtr<Gtk::ListStore> list_store;
     vector<IDebugger::OverloadsChoiceEntry> current_overloads;
@@ -64,15 +64,15 @@ struct ChooseOverloadsDialog::Priv {
     Priv ();
 
     Priv (Gtk::Dialog &a_dialog,
-          const Glib::RefPtr<Gnome::Glade::Xml> &a_glade) :
+          const Glib::RefPtr<Gtk::Builder> &a_gtkbuilder) :
         dialog (a_dialog),
-        glade (a_glade)
+        gtkbuilder (a_gtkbuilder)
     {
         init_members ();
         init_tree_view ();
-        pack_tree_view_into_glade ();
+        pack_tree_view_into_gtkbuilder ();
         Gtk::Widget *button =
-            ui_utils::get_widget_from_glade<Gtk::Widget> (glade, "okbutton");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::Widget> (gtkbuilder, "okbutton");
         button->set_sensitive (false);
         a_dialog.set_default_response (Gtk::RESPONSE_OK);
     }
@@ -82,11 +82,11 @@ struct ChooseOverloadsDialog::Priv {
         tree_view = 0;
     }
 
-    void pack_tree_view_into_glade ()
+    void pack_tree_view_into_gtkbuilder ()
     {
         Gtk::ScrolledWindow *sw =
-            ui_utils::get_widget_from_glade<Gtk::ScrolledWindow>
-                                            (glade, "treeviewscrolledwindow");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::ScrolledWindow>
+                                            (gtkbuilder, "treeviewscrolledwindow");
         sw->add (*tree_view);
     }
 
@@ -149,8 +149,8 @@ struct ChooseOverloadsDialog::Priv {
         }
 
         Gtk::Widget *ok_button =
-            ui_utils::get_widget_from_glade<Gtk::Button>
-                                                    (glade, "okbutton");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::Button>
+                                                    (gtkbuilder, "okbutton");
         if (current_overloads.empty ()) {
             ok_button->set_sensitive (false);
         } else {
@@ -166,10 +166,10 @@ ChooseOverloadsDialog::ChooseOverloadsDialog
                 (const UString &a_root_path,
                  const vector<IDebugger::OverloadsChoiceEntry> &a_entries ) :
     Dialog (a_root_path,
-            "chooseoverloadsdialog.glade",
+            "chooseoverloadsdialog.ui",
             "chooseoverloadsdialog")
 {
-    m_priv.reset (new Priv (widget (), glade ()));
+    m_priv.reset (new Priv (widget (), gtkbuilder ()));
     THROW_IF_FAIL (m_priv);
     set_overloads_choice_entries (a_entries);
 }
diff --git a/src/persp/dbgperspective/nmv-dbg-perspective.cc b/src/persp/dbgperspective/nmv-dbg-perspective.cc
index 1ea45fe..c1428ac 100644
--- a/src/persp/dbgperspective/nmv-dbg-perspective.cc
+++ b/src/persp/dbgperspective/nmv-dbg-perspective.cc
@@ -882,7 +882,7 @@ struct DBGPerspective::Priv {
     list<UString> session_search_paths;
     list<UString> global_search_paths;
     map<UString, bool> paths_to_ignore;
-    Glib::RefPtr<Gnome::Glade::Xml> body_glade;
+    Glib::RefPtr<Gtk::Builder> body_builder;
     SafePtr<Gtk::Window> body_window;
     SafePtr<Gtk::TextView> command_view;
     SafePtr<Gtk::ScrolledWindow> command_view_scrolled_win;
@@ -3741,20 +3741,20 @@ DBGPerspective::init_toolbar ()
 void
 DBGPerspective::init_body ()
 {
-    string relative_path = Glib::build_filename ("glade",
-                                                 "bodycontainer.glade");
+    string relative_path = Glib::build_filename ("ui",
+                                                 "bodycontainer.ui");
     string absolute_path;
     THROW_IF_FAIL (build_absolute_resource_path
                     (Glib::filename_to_utf8 (relative_path), absolute_path));
-    m_priv->body_glade = Gnome::Glade::Xml::create (absolute_path);
+    m_priv->body_builder = Gtk::Builder::create_from_file (absolute_path);
     m_priv->body_window.reset
-        (ui_utils::get_widget_from_glade<Gtk::Window> (m_priv->body_glade,
+        (ui_utils::get_widget_from_gtkbuilder<Gtk::Window> (m_priv->body_builder,
                                                        "bodycontainer"));
     m_priv->top_box =
-        ui_utils::get_widget_from_glade<Gtk::Box> (m_priv->body_glade,
+        ui_utils::get_widget_from_gtkbuilder<Gtk::Box> (m_priv->body_builder,
                                                    "topbox");
     m_priv->body_main_paned.reset
-        (ui_utils::get_widget_from_glade<Gtk::Paned> (m_priv->body_glade,
+        (ui_utils::get_widget_from_gtkbuilder<Gtk::Paned> (m_priv->body_builder,
                                                       "mainbodypaned"));
     // set the position of the status pane to the last saved position
     IConfMgr &conf_mgr = get_conf_mgr ();
@@ -3769,7 +3769,7 @@ DBGPerspective::init_body ()
     }
 
     m_priv->sourceviews_notebook =
-        ui_utils::get_widget_from_glade<Gtk::Notebook> (m_priv->body_glade,
+        ui_utils::get_widget_from_gtkbuilder<Gtk::Notebook> (m_priv->body_builder,
                                                         "sourceviewsnotebook");
     m_priv->sourceviews_notebook->remove_page ();
     m_priv->sourceviews_notebook->set_show_tabs ();
@@ -3780,7 +3780,7 @@ DBGPerspective::init_body ()
 #endif
 
     m_priv->statuses_notebook =
-        ui_utils::get_widget_from_glade<Gtk::Notebook> (m_priv->body_glade,
+        ui_utils::get_widget_from_gtkbuilder<Gtk::Notebook> (m_priv->body_builder,
                                                         "statusesnotebook");
     int width=100, height=70;
 
diff --git a/src/persp/dbgperspective/nmv-find-text-dialog.cc b/src/persp/dbgperspective/nmv-find-text-dialog.cc
index 4fc41c5..eaecd98 100644
--- a/src/persp/dbgperspective/nmv-find-text-dialog.cc
+++ b/src/persp/dbgperspective/nmv-find-text-dialog.cc
@@ -52,7 +52,7 @@ using namespace gtksourceview;
 class FindTextDialog::Priv {
     friend class FindTextDialog;
     Gtk::Dialog &dialog;
-    Glib::RefPtr<Gnome::Glade::Xml> glade;
+    Glib::RefPtr<Gtk::Builder> gtkbuilder;
     Glib::RefPtr<Gtk::ListStore> searchterm_store;
     Gtk::TextIter match_start;
     Gtk::TextIter match_end;
@@ -63,9 +63,9 @@ class FindTextDialog::Priv {
 public:
 
     Priv (Gtk::Dialog &a_dialog,
-          const Glib::RefPtr<Gnome::Glade::Xml> &a_glade) :
+          const Glib::RefPtr<Gtk::Builder> &a_gtkbuilder) :
         dialog (a_dialog),
-        glade (a_glade),
+        gtkbuilder (a_gtkbuilder),
         clear_selection_before_search (false)
     {
         a_dialog.set_default_response (Gtk::RESPONSE_OK);
@@ -100,7 +100,7 @@ public:
     Gtk::Button* get_close_button ()
     {
         Gtk::Button *button =
-            ui_utils::get_widget_from_glade<Gtk::Button> (glade,
+            ui_utils::get_widget_from_gtkbuilder<Gtk::Button> (gtkbuilder,
                                                           "closebutton1");
         return button;
     }
@@ -108,7 +108,7 @@ public:
     Gtk::Button* get_search_button ()
     {
         Gtk::Button *button =
-            ui_utils::get_widget_from_glade<Gtk::Button> (glade,
+            ui_utils::get_widget_from_gtkbuilder<Gtk::Button> (gtkbuilder,
                                                           "searchbutton");
         return button;
     }
@@ -116,40 +116,40 @@ public:
     Gtk::ComboBoxEntry* get_search_text_combo () const
     {
         Gtk::ComboBoxEntry *combo =
-            ui_utils::get_widget_from_glade<Gtk::ComboBoxEntry>
-                                                (glade, "searchtextcombo");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::ComboBoxEntry>
+                                                (gtkbuilder, "searchtextcombo");
         return combo;
     }
 
     Gtk::CheckButton* get_match_case_check_button () const
     {
         Gtk::CheckButton *button =
-            ui_utils::get_widget_from_glade<Gtk::CheckButton>
-                                            (glade, "matchcasecheckbutton");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::CheckButton>
+                                            (gtkbuilder, "matchcasecheckbutton");
         return button;
     }
 
     Gtk::CheckButton* get_match_entire_word_check_button () const
     {
         Gtk::CheckButton *button =
-            ui_utils::get_widget_from_glade<Gtk::CheckButton>
-                                    (glade, "matchentirewordcheckbutton");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::CheckButton>
+                                    (gtkbuilder, "matchentirewordcheckbutton");
         return button;
     }
 
     Gtk::CheckButton* get_wrap_around_check_button () const
     {
         Gtk::CheckButton *button =
-            ui_utils::get_widget_from_glade<Gtk::CheckButton>
-                                        (glade, "wraparoundcheckbutton");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::CheckButton>
+                                        (gtkbuilder, "wraparoundcheckbutton");
         return button;
     }
 
     Gtk::CheckButton* get_search_backwards_check_button () const
     {
         Gtk::CheckButton *button =
-            ui_utils::get_widget_from_glade<Gtk::CheckButton>
-                                    (glade, "searchbackwardscheckbutton");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::CheckButton>
+                                    (gtkbuilder, "searchbackwardscheckbutton");
         return button;
     }
 
@@ -199,9 +199,9 @@ public:
 };//end FindTextDialog
 
 FindTextDialog::FindTextDialog (const UString &a_root_path) :
-    Dialog (a_root_path, "findtextdialog.glade", "findtextdialog")
+    Dialog (a_root_path, "findtextdialog.ui", "findtextdialog")
 {
-    m_priv.reset (new Priv (widget (), glade ()));
+    m_priv.reset (new Priv (widget (), gtkbuilder ()));
     THROW_IF_FAIL (m_priv);
 }
 
diff --git a/src/persp/dbgperspective/nmv-global-vars-inspector-dialog.cc b/src/persp/dbgperspective/nmv-global-vars-inspector-dialog.cc
index 9b7ff29..4556bf7 100644
--- a/src/persp/dbgperspective/nmv-global-vars-inspector-dialog.cc
+++ b/src/persp/dbgperspective/nmv-global-vars-inspector-dialog.cc
@@ -45,7 +45,7 @@ private:
     Priv ();
 public:
     Gtk::Dialog &dialog;
-    Glib::RefPtr<Gnome::Glade::Xml> glade;
+    Glib::RefPtr<Gtk::Builder> gtkbuilder;
     IDebuggerSafePtr debugger;
     IVarListWalkerSafePtr global_variables_walker_list;
 
@@ -57,11 +57,11 @@ public:
     UString previous_function_name;
 
     Priv (Gtk::Dialog &a_dialog,
-          const Glib::RefPtr<Gnome::Glade::Xml> &a_glade,
+          const Glib::RefPtr<Gtk::Builder> &a_gtkbuilder,
           IDebuggerSafePtr &a_debugger,
           IWorkbench &a_workbench) :
         dialog (a_dialog),
-        glade (a_glade),
+        gtkbuilder (a_gtkbuilder),
         workbench (a_workbench)
     {
         LOG_FUNCTION_SCOPE_NORMAL_DD;
@@ -79,7 +79,7 @@ public:
     void build_dialog ()
     {
         Gtk::Box *box =
-            ui_utils::get_widget_from_glade<Gtk::Box> (glade,
+            ui_utils::get_widget_from_gtkbuilder<Gtk::Box> (gtkbuilder,
                                                        "inspectorwidgetbox");
         THROW_IF_FAIL (box);
         Gtk::ScrolledWindow *scr = Gtk::manage (new Gtk::ScrolledWindow);
@@ -315,10 +315,10 @@ GlobalVarsInspectorDialog::GlobalVarsInspectorDialog
                                             (const UString &a_root_path,
         IDebuggerSafePtr &a_debugger, IWorkbench &a_workbench) :
     Dialog (a_root_path,
-            "globalvarsinspector.glade",
+            "globalvarsinspector.ui",
             "globalvarsinspector")
 {
-    m_priv.reset (new Priv (widget (), glade (), a_debugger, a_workbench));
+    m_priv.reset (new Priv (widget (), gtkbuilder (), a_debugger, a_workbench));
 }
 
 GlobalVarsInspectorDialog::~GlobalVarsInspectorDialog ()
diff --git a/src/persp/dbgperspective/nmv-load-core-dialog.cc b/src/persp/dbgperspective/nmv-load-core-dialog.cc
index 45d7b60..d79d3f9 100644
--- a/src/persp/dbgperspective/nmv-load-core-dialog.cc
+++ b/src/persp/dbgperspective/nmv-load-core-dialog.cc
@@ -25,7 +25,6 @@
 
 #include <vector>
 #include <glib/gi18n.h>
-#include <libglademm.h>
 #include <gtkmm/dialog.h>
 #include <gtkmm/filechooserbutton.h>
 #include <gtkmm/stock.h>
@@ -46,27 +45,27 @@ class LoadCoreDialog::Priv {
     Gtk::Button *okbutton;
 
 public:
-    Priv (const Glib::RefPtr<Gnome::Glade::Xml> &a_glade) :
+    Priv (const Glib::RefPtr<Gtk::Builder> &a_gtkbuilder) :
         fcbutton_core_file (0),
         fcbutton_executable (0),
         okbutton (0)
     {
 
         okbutton =
-        ui_utils::get_widget_from_glade<Gtk::Button> (a_glade, "okbutton");
+        ui_utils::get_widget_from_gtkbuilder<Gtk::Button> (a_gtkbuilder, "okbutton");
         THROW_IF_FAIL (okbutton);
         okbutton->set_sensitive (false);
 
         fcbutton_executable =
-            ui_utils::get_widget_from_glade<Gtk::FileChooserButton>
-                (a_glade, "filechooserbutton_executable");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::FileChooserButton>
+                (a_gtkbuilder, "filechooserbutton_executable");
         fcbutton_executable->signal_selection_changed ().connect
             (sigc::mem_fun
                 (*this, &Priv::on_file_selection_changed_signal));
 
         fcbutton_core_file =
-            ui_utils::get_widget_from_glade<Gtk::FileChooserButton>
-                (a_glade, "filechooserbutton_corefile");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::FileChooserButton>
+                (a_gtkbuilder, "filechooserbutton_corefile");
         fcbutton_core_file->signal_selection_changed ().connect
             (sigc::mem_fun
                 (*this, &Priv::on_file_selection_changed_signal));
@@ -95,9 +94,9 @@ public:
 };//end class LoadCoreDialog::Priv
 
 LoadCoreDialog::LoadCoreDialog (const UString &a_root_path) :
-    Dialog (a_root_path, "loadcoredialog.glade", "loadcoredialog")
+    Dialog (a_root_path, "loadcoredialog.ui", "loadcoredialog")
 {
-    m_priv.reset (new Priv (glade ()));
+    m_priv.reset (new Priv (gtkbuilder ()));
 }
 
 LoadCoreDialog::~LoadCoreDialog ()
diff --git a/src/persp/dbgperspective/nmv-memory-view.h b/src/persp/dbgperspective/nmv-memory-view.h
index 0d8d3fd..8143b1e 100644
--- a/src/persp/dbgperspective/nmv-memory-view.h
+++ b/src/persp/dbgperspective/nmv-memory-view.h
@@ -27,7 +27,6 @@
 
 #include <gtkmm/widget.h>
 #include <pangomm/fontdescription.h>
-#include <libglademm.h>
 #include "common/nmv-object.h"
 #include "common/nmv-safe-ptr-utils.h"
 #include "nmv-i-debugger.h"
diff --git a/src/persp/dbgperspective/nmv-open-file-dialog.cc b/src/persp/dbgperspective/nmv-open-file-dialog.cc
index 495752d..b71cc0d 100644
--- a/src/persp/dbgperspective/nmv-open-file-dialog.cc
+++ b/src/persp/dbgperspective/nmv-open-file-dialog.cc
@@ -24,7 +24,6 @@
  */
 
 #include <glib/gi18n.h>
-#include <libglademm.h>
 #include <gtkmm/filechooserwidget.h>
 #include <gtkmm/radiobutton.h>
 #include <gtkmm/button.h>
@@ -50,7 +49,7 @@ class OpenFileDialog::Priv {
 
 public:
 
-    Priv (const Glib::RefPtr<Gnome::Glade::Xml> &a_glade,
+    Priv (const Glib::RefPtr<Gtk::Builder> &a_gtkbuilder,
           IDebuggerSafePtr &a_debugger, const UString &a_working_dir) :
         vbox_file_list (0),
         radio_button_file_list (0),
@@ -63,23 +62,23 @@ public:
 
         file_chooser.set_select_multiple (true);
         okbutton =
-            ui_utils::get_widget_from_glade<Gtk::Button> (a_glade,
+            ui_utils::get_widget_from_gtkbuilder<Gtk::Button> (a_gtkbuilder,
                                                           "okbutton");
         THROW_IF_FAIL (okbutton);
         vbox_file_list =
-            ui_utils::get_widget_from_glade<Gtk::VBox> (a_glade,
+            ui_utils::get_widget_from_gtkbuilder<Gtk::VBox> (a_gtkbuilder,
                                                         "vbox_file_list");
         THROW_IF_FAIL (vbox_file_list);
         radio_button_file_list =
-            ui_utils::get_widget_from_glade<Gtk::RadioButton>
-                                                (a_glade,
+            ui_utils::get_widget_from_gtkbuilder<Gtk::RadioButton>
+                                                (a_gtkbuilder,
                                                  "radiobutton_target");
         THROW_IF_FAIL (radio_button_file_list);
         radio_button_file_list->signal_toggled ().connect (sigc::mem_fun
                     (*this, &Priv::on_radio_button_toggled));
         radio_button_chooser =
-            ui_utils::get_widget_from_glade<Gtk::RadioButton>
-                                                (a_glade,
+            ui_utils::get_widget_from_gtkbuilder<Gtk::RadioButton>
+                                                (a_gtkbuilder,
                                                  "radiobutton_other");
         THROW_IF_FAIL (radio_button_chooser);
         radio_button_chooser->signal_toggled ().connect
@@ -229,9 +228,9 @@ public:
 OpenFileDialog::OpenFileDialog (const UString &a_root_path,
                                 IDebuggerSafePtr &a_debugger,
                                 const UString  &a_working_dir) :
-    Dialog (a_root_path, "openfiledialog.glade", "dialog_open_source_file")
+    Dialog (a_root_path, "openfiledialog.ui", "dialog_open_source_file")
 {
-    m_priv.reset (new Priv (glade (), a_debugger, a_working_dir));
+    m_priv.reset (new Priv (gtkbuilder (), a_debugger, a_working_dir));
 }
 
 OpenFileDialog::~OpenFileDialog ()
diff --git a/src/persp/dbgperspective/nmv-preferences-dialog.cc b/src/persp/dbgperspective/nmv-preferences-dialog.cc
index 0e9e276..c880804 100644
--- a/src/persp/dbgperspective/nmv-preferences-dialog.cc
+++ b/src/persp/dbgperspective/nmv-preferences-dialog.cc
@@ -93,9 +93,9 @@ public:
     Gtk::RadioButton *follow_child_radio_button;
     Gtk::SpinButton  *default_num_asm_instrs_spin_button;
     Gtk::FileChooserButton *gdb_binary_path_chooser_button;
-    Glib::RefPtr<Gnome::Glade::Xml> glade;
+    Glib::RefPtr<Gtk::Builder> gtkbuilder;
 
-    Priv (const Glib::RefPtr<Gnome::Glade::Xml> &a_glade,
+    Priv (const Glib::RefPtr<Gtk::Builder> &a_gtkbuilder,
           IWorkbench &a_workbench) :
         workbench (a_workbench),
         tree_view (0),
@@ -115,7 +115,7 @@ public:
         follow_child_radio_button (0),
         default_num_asm_instrs_spin_button (0),
         gdb_binary_path_chooser_button (0),
-        glade (a_glade)
+        gtkbuilder (a_gtkbuilder)
     {
         init ();
     }
@@ -235,7 +235,7 @@ public:
 
         list_store = Gtk::ListStore::create (source_dirs_cols ());
         tree_view =
-            ui_utils::get_widget_from_glade<Gtk::TreeView> (glade,
+            ui_utils::get_widget_from_gtkbuilder<Gtk::TreeView> (gtkbuilder,
                                                             "dirstreeview");
         tree_view->append_column (_("Source directories"),
                                   source_dirs_cols ().dir);
@@ -251,13 +251,13 @@ public:
          (this, &PreferencesDialog::Priv::on_tree_view_selection_changed));
 
         Gtk::Button *button =
-            ui_utils::get_widget_from_glade<Gtk::Button> (glade,
+            ui_utils::get_widget_from_gtkbuilder<Gtk::Button> (gtkbuilder,
                                                           "adddirbutton");
         button->signal_clicked ().connect (sigc::mem_fun
                 (this, &PreferencesDialog::Priv::on_add_dir_button_clicked));
 
         remove_dir_button =
-        ui_utils::get_widget_from_glade<Gtk::Button> (glade,
+        ui_utils::get_widget_from_gtkbuilder<Gtk::Button> (gtkbuilder,
                                                       "suppressdirbutton");
         remove_dir_button->signal_clicked ().connect
         (sigc::mem_fun
@@ -269,8 +269,8 @@ public:
         // *************************************
 
         show_lines_check_button  =
-            ui_utils::get_widget_from_glade<Gtk::CheckButton>
-                                            (glade, "showlinescheckbutton");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::CheckButton>
+                                            (gtkbuilder, "showlinescheckbutton");
         THROW_IF_FAIL (show_lines_check_button);
         show_lines_check_button->signal_toggled ().connect
         (sigc::mem_fun
@@ -278,8 +278,8 @@ public:
              &PreferencesDialog::Priv::on_show_lines_toggled_signal));
 
         launch_terminal_check_button  =
-            ui_utils::get_widget_from_glade<Gtk::CheckButton>
-                                            (glade, "launchterminalcheckbutton");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::CheckButton>
+                                            (gtkbuilder, "launchterminalcheckbutton");
         THROW_IF_FAIL (launch_terminal_check_button);
         launch_terminal_check_button->signal_toggled ().connect
         (sigc::mem_fun
@@ -287,8 +287,8 @@ public:
              &PreferencesDialog::Priv::on_launch_terminal_toggled_signal));
 
         highlight_source_check_button  =
-            ui_utils::get_widget_from_glade<Gtk::CheckButton>
-                                    (glade, "highlightsourcecheckbutton");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::CheckButton>
+                                    (gtkbuilder, "highlightsourcecheckbutton");
         THROW_IF_FAIL (highlight_source_check_button);
         highlight_source_check_button->signal_toggled ().connect
         (sigc::mem_fun
@@ -296,8 +296,8 @@ public:
              &PreferencesDialog::Priv::on_highlight_source_toggled_signal));
 
         system_font_check_button =
-            ui_utils::get_widget_from_glade<Gtk::CheckButton>
-            (glade, "systemfontcheckbutton");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::CheckButton>
+            (gtkbuilder, "systemfontcheckbutton");
         THROW_IF_FAIL (system_font_check_button);
         system_font_check_button->signal_toggled ().connect
         (sigc::mem_fun
@@ -305,8 +305,8 @@ public:
              &PreferencesDialog::Priv::on_system_font_toggled_signal));
 
         custom_font_button =
-            ui_utils::get_widget_from_glade<Gtk::FontButton>
-            (glade, "customfontfontbutton");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::FontButton>
+            (gtkbuilder, "customfontfontbutton");
         THROW_IF_FAIL (custom_font_button);
         custom_font_button->signal_font_set ().connect
         (sigc::mem_fun
@@ -314,13 +314,13 @@ public:
              &PreferencesDialog::Priv::on_custom_font_set_signal));
 
         custom_font_box =
-            ui_utils::get_widget_from_glade<Gtk::HBox>
-            (glade, "customfonthbox");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::HBox>
+            (gtkbuilder, "customfonthbox");
         THROW_IF_FAIL (custom_font_box);
 
         editor_style_combo =
-            ui_utils::get_widget_from_glade<Gtk::ComboBox>
-                                                        (glade,
+            ui_utils::get_widget_from_gtkbuilder<Gtk::ComboBox>
+                                                        (gtkbuilder,
                                                          "editorstylecombobox");
         THROW_IF_FAIL (editor_style_combo);
         m_editor_style_model = Gtk::ListStore::create (m_style_columns);
@@ -350,8 +350,8 @@ public:
                      &PreferencesDialog::Priv::on_editor_style_changed_signal));
 
         always_reload_radio_button =
-            ui_utils::get_widget_from_glade<Gtk::RadioButton>
-                                                        (glade,
+            ui_utils::get_widget_from_gtkbuilder<Gtk::RadioButton>
+                                                        (gtkbuilder,
                                                          "reloadradiobutton");
         THROW_IF_FAIL (always_reload_radio_button);
         always_reload_radio_button->signal_toggled ().connect (sigc::mem_fun
@@ -359,8 +359,8 @@ public:
                      &PreferencesDialog::Priv::on_reload_files_toggled_signal));
 
         never_reload_radio_button =
-            ui_utils::get_widget_from_glade<Gtk::RadioButton>
-                                                (glade,
+            ui_utils::get_widget_from_gtkbuilder<Gtk::RadioButton>
+                                                (gtkbuilder,
                                                  "neverreloadradiobutton");
         THROW_IF_FAIL (never_reload_radio_button);
         never_reload_radio_button->signal_toggled ().connect (sigc::mem_fun
@@ -368,8 +368,8 @@ public:
              &PreferencesDialog::Priv::on_reload_files_toggled_signal));
 
         confirm_reload_radio_button =
-            ui_utils::get_widget_from_glade<Gtk::RadioButton>
-            (glade, "confirmreloadradiobutton");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::RadioButton>
+            (gtkbuilder, "confirmreloadradiobutton");
         THROW_IF_FAIL (confirm_reload_radio_button);
         confirm_reload_radio_button->signal_toggled ().connect (sigc::mem_fun
             (*this,
@@ -380,8 +380,8 @@ public:
         // *************************************
 
         pure_asm_radio_button =
-            ui_utils::get_widget_from_glade<Gtk::RadioButton>
-                (glade, "pureasmradio");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::RadioButton>
+                (gtkbuilder, "pureasmradio");
         THROW_IF_FAIL (pure_asm_radio_button);
         pure_asm_radio_button->signal_toggled ().connect
             (sigc::mem_fun
@@ -389,8 +389,8 @@ public:
                   &PreferencesDialog::Priv::on_asm_style_toggled_signal));
 
         mixed_asm_radio_button =
-            ui_utils::get_widget_from_glade<Gtk::RadioButton>
-                (glade, "mixedasmradio");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::RadioButton>
+                (gtkbuilder, "mixedasmradio");
         THROW_IF_FAIL (mixed_asm_radio_button);
         mixed_asm_radio_button->signal_toggled ().connect
             (sigc::mem_fun
@@ -398,8 +398,8 @@ public:
                   &PreferencesDialog::Priv::on_asm_style_toggled_signal));
 
         default_num_asm_instrs_spin_button =
-            ui_utils::get_widget_from_glade<Gtk::SpinButton>
-                (glade, "defaultnumasmspin");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::SpinButton>
+                (gtkbuilder, "defaultnumasmspin");
         THROW_IF_FAIL (default_num_asm_instrs_spin_button);
         default_num_asm_instrs_spin_button->signal_value_changed ().connect
             (sigc::mem_fun
@@ -407,8 +407,8 @@ public:
                   &PreferencesDialog::Priv::on_num_asms_value_changed_signal));
 
         gdb_binary_path_chooser_button =
-        ui_utils::get_widget_from_glade<Gtk::FileChooserButton>
-                (glade, "pathtogdbfilechooser");
+        ui_utils::get_widget_from_gtkbuilder<Gtk::FileChooserButton>
+                (gtkbuilder, "pathtogdbfilechooser");
         THROW_IF_FAIL (gdb_binary_path_chooser_button);
         gdb_binary_path_chooser_button->signal_file_set ().connect
             (sigc::mem_fun
@@ -416,7 +416,7 @@ public:
                   &PreferencesDialog::Priv::on_gdb_binary_file_set_signal));
 
         follow_parent_radio_button =
-        ui_utils::get_widget_from_glade<Gtk::RadioButton> (glade,
+        ui_utils::get_widget_from_gtkbuilder<Gtk::RadioButton> (gtkbuilder,
                                                            "followparentradio");
         THROW_IF_FAIL (follow_parent_radio_button);
         follow_parent_radio_button->signal_toggled ().connect
@@ -425,7 +425,7 @@ public:
                   &PreferencesDialog::Priv::on_follow_fork_mode_toggle_signal));
 
         follow_child_radio_button =
-        ui_utils::get_widget_from_glade<Gtk::RadioButton> (glade,
+        ui_utils::get_widget_from_gtkbuilder<Gtk::RadioButton> (gtkbuilder,
                                                            "followchildradio");
         THROW_IF_FAIL (follow_child_radio_button);
         follow_child_radio_button->signal_toggled ().connect
@@ -750,10 +750,10 @@ public:
 PreferencesDialog::PreferencesDialog (IWorkbench &a_workbench,
                                       const UString &a_root_path) :
     Dialog (a_root_path,
-            "preferencesdialog.glade",
+            "preferencesdialog.ui",
             "preferencesdialog")
 {
-    m_priv.reset (new Priv (glade (), a_workbench));
+    m_priv.reset (new Priv (gtkbuilder (), a_workbench));
     m_priv->update_widget_from_conf ();
 }
 
diff --git a/src/persp/dbgperspective/nmv-proc-list-dialog.cc b/src/persp/dbgperspective/nmv-proc-list-dialog.cc
index 4c2f75f..5091cdb 100644
--- a/src/persp/dbgperspective/nmv-proc-list-dialog.cc
+++ b/src/persp/dbgperspective/nmv-proc-list-dialog.cc
@@ -25,7 +25,6 @@
 
 #include <iostream>
 #include <list>
-#include <libglademm.h>
 #include <gtkmm.h>
 #include <glib/gi18n.h>
 #include "common/nmv-env.h"
@@ -84,7 +83,7 @@ public:
     bool process_selected;
 
     Priv (Gtk::Dialog &a_dialog,
-          const Glib::RefPtr<Gnome::Glade::Xml> &a_glade,
+          const Glib::RefPtr<Gtk::Builder> &a_gtkbuilder,
           IProcMgr &a_proc_mgr) :
         proc_mgr (a_proc_mgr),
         okbutton (0),
@@ -96,13 +95,13 @@ public:
         a_dialog.set_default_response (Gtk::RESPONSE_OK);
 
         okbutton =
-            ui_utils::get_widget_from_glade<Gtk::Button> (a_glade,
+            ui_utils::get_widget_from_gtkbuilder<Gtk::Button> (a_gtkbuilder,
                                                           "okbutton");
         THROW_IF_FAIL (okbutton);
         okbutton->set_sensitive (false);
 
         entry_filter =
-            ui_utils::get_widget_from_glade<Gtk::Entry> (a_glade,
+            ui_utils::get_widget_from_gtkbuilder<Gtk::Entry> (a_gtkbuilder,
                                                          "entry_filter");
         THROW_IF_FAIL (entry_filter);
         entry_filter->signal_changed ().connect
@@ -111,7 +110,7 @@ public:
         entry_filter->set_activates_default ();
 
         proclist_view =
-        ui_utils::get_widget_from_glade<Gtk::TreeView> (a_glade,
+        ui_utils::get_widget_from_gtkbuilder<Gtk::TreeView> (a_gtkbuilder,
                                                         "proclisttreeview");
         THROW_IF_FAIL (proclist_view);
         proclist_store = Gtk::ListStore::create (columns ());
@@ -273,9 +272,9 @@ public:
 
 ProcListDialog::ProcListDialog (const UString &a_root_path,
                                 IProcMgr &a_proc_mgr) :
-    Dialog(a_root_path, "proclistdialog.glade", "proclistdialog")
+    Dialog(a_root_path, "proclistdialog.ui", "proclistdialog")
 {
-    m_priv.reset (new Priv (widget (), glade (), a_proc_mgr));
+    m_priv.reset (new Priv (widget (), gtkbuilder (), a_proc_mgr));
     widget ().hide ();
 }
 
diff --git a/src/persp/dbgperspective/nmv-remote-target-dialog.cc b/src/persp/dbgperspective/nmv-remote-target-dialog.cc
index 7431dfd..0ae7ab6 100644
--- a/src/persp/dbgperspective/nmv-remote-target-dialog.cc
+++ b/src/persp/dbgperspective/nmv-remote-target-dialog.cc
@@ -35,7 +35,7 @@ using namespace ui_utils;
 struct RemoteTargetDialog::Priv {
     friend class RemoteTargetDialog;
     Gtk::Dialog &dialog;
-    Glib::RefPtr<Gnome::Glade::Xml> glade;
+    Glib::RefPtr<Gtk::Builder> gtkbuilder;
     mutable UString executable_path;
     mutable UString solib_prefix_path;
     mutable UString server_address;
@@ -45,12 +45,12 @@ struct RemoteTargetDialog::Priv {
     Priv ();
 
     Priv (Gtk::Dialog &a_dialog,
-          const Glib::RefPtr<Gnome::Glade::Xml> &a_glade) :
+          const Glib::RefPtr<Gtk::Builder> &a_gtkbuilder) :
         dialog (a_dialog),
-        glade (a_glade)
+        gtkbuilder (a_gtkbuilder)
     {
         init_members ();
-        init_from_glade ();
+        init_from_gtkbuilder ();
     }
 
     //*******************
@@ -61,12 +61,12 @@ struct RemoteTargetDialog::Priv {
         NEMIVER_TRY
 
         Gtk::RadioButton *radio =
-            get_widget_from_glade<Gtk::RadioButton> (glade, "tcpradiobutton");
+            get_widget_from_gtkbuilder<Gtk::RadioButton> (gtkbuilder, "tcpradiobutton");
         Gtk::Widget *tcp_connection_container =
-            get_widget_from_glade<Gtk::Widget> (glade,
+            get_widget_from_gtkbuilder<Gtk::Widget> (gtkbuilder,
                                                 "tcpconnectioncontainer");
         Gtk::Widget *serial_connection_container =
-            get_widget_from_glade<Gtk::Widget> (glade,
+            get_widget_from_gtkbuilder<Gtk::Widget> (gtkbuilder,
                                                 "serialconnectioncontainer");
         if (radio->get_active ()) {
             connection_type = RemoteTargetDialog::TCP_CONNECTION_TYPE;
@@ -86,7 +86,7 @@ struct RemoteTargetDialog::Priv {
         NEMIVER_TRY
 
         Gtk::Button *button =
-            get_widget_from_glade<Gtk::Button> (glade, "okbutton");
+            get_widget_from_gtkbuilder<Gtk::Button> (gtkbuilder, "okbutton");
         if (can_enable_ok_button ()) {
             button->set_sensitive (true);
         } else {
@@ -108,24 +108,24 @@ struct RemoteTargetDialog::Priv {
         connection_type = RemoteTargetDialog::TCP_CONNECTION_TYPE;
     }
 
-    void init_from_glade ()
+    void init_from_gtkbuilder ()
     {
         Gtk::RadioButton *radio =
-            get_widget_from_glade<Gtk::RadioButton> (glade, "tcpradiobutton");
+            get_widget_from_gtkbuilder<Gtk::RadioButton> (gtkbuilder, "tcpradiobutton");
         radio->signal_toggled ().connect (sigc::mem_fun
                 (*this, &Priv::on_radio_button_toggled_signal));
         radio->set_active (true);
         on_radio_button_toggled_signal ();//it does not get called otherwise
 
         Gtk::FileChooser *chooser =
-            get_widget_from_glade<Gtk::FileChooser> (glade,
+            get_widget_from_gtkbuilder<Gtk::FileChooser> (gtkbuilder,
                                                      "execfilechooserbutton");
         chooser->set_show_hidden (true);
         chooser->signal_selection_changed ().connect (sigc::mem_fun
                 (*this, &Priv::on_selection_changed_signal));
 
         chooser =
-        get_widget_from_glade<Gtk::FileChooser> (glade,
+        get_widget_from_gtkbuilder<Gtk::FileChooser> (gtkbuilder,
                                                  "solibprefixchooserbutton");
         chooser->set_show_hidden (true);
         chooser->set_action (Gtk::FILE_CHOOSER_ACTION_SELECT_FOLDER);
@@ -133,39 +133,39 @@ struct RemoteTargetDialog::Priv {
         set_solib_prefix_path (common::env::get_system_lib_dir ());
 
         Gtk::Entry* entry =
-                get_widget_from_glade<Gtk::Entry> (glade, "addressentry");
+                get_widget_from_gtkbuilder<Gtk::Entry> (gtkbuilder, "addressentry");
         entry->signal_changed ().connect
                 (sigc::mem_fun (*this, &Priv::on_selection_changed_signal));
 
-        entry = get_widget_from_glade<Gtk::Entry> (glade, "portentry");
+        entry = get_widget_from_gtkbuilder<Gtk::Entry> (gtkbuilder, "portentry");
         entry->signal_changed ().connect
                 (sigc::mem_fun (*this, &Priv::on_selection_changed_signal));
 
-        chooser = get_widget_from_glade<Gtk::FileChooserButton> (glade,
+        chooser = get_widget_from_gtkbuilder<Gtk::FileChooserButton> (gtkbuilder,
                                                      "serialchooserbutton");
         chooser->signal_selection_changed ().connect (sigc::mem_fun
                             (*this, &Priv::on_selection_changed_signal));
 
         Gtk::Button *button =
-            get_widget_from_glade<Gtk::Button> (glade, "okbutton");
+            get_widget_from_gtkbuilder<Gtk::Button> (gtkbuilder, "okbutton");
         button->set_sensitive (false);
     }
 
     bool can_enable_ok_button () const
     {
         Gtk::FileChooserButton *chooser =
-            get_widget_from_glade<Gtk::FileChooserButton>
-                                            (glade, "execfilechooserbutton");
+            get_widget_from_gtkbuilder<Gtk::FileChooserButton>
+                                            (gtkbuilder, "execfilechooserbutton");
         Gtk::Entry *entry = 0;
         if (chooser->get_filename ().empty ())
             return false;
         if (connection_type == RemoteTargetDialog::TCP_CONNECTION_TYPE) {
-            entry = get_widget_from_glade<Gtk::Entry> (glade, "portentry");
+            entry = get_widget_from_gtkbuilder<Gtk::Entry> (gtkbuilder, "portentry");
             if (entry->get_text ().empty ())
                 return false;
         } else if (connection_type ==
                     RemoteTargetDialog::SERIAL_CONNECTION_TYPE) {
-            chooser = get_widget_from_glade<Gtk::FileChooserButton> (glade,
+            chooser = get_widget_from_gtkbuilder<Gtk::FileChooserButton> (gtkbuilder,
                                                      "serialchooserbutton");
             if (chooser->get_filename ().empty ())
                 return false;
@@ -179,8 +179,8 @@ struct RemoteTargetDialog::Priv {
     const UString& get_executable_path () const
     {
         Gtk::FileChooserButton *chooser =
-            get_widget_from_glade<Gtk::FileChooserButton>
-                                            (glade, "execfilechooserbutton");
+            get_widget_from_gtkbuilder<Gtk::FileChooserButton>
+                                            (gtkbuilder, "execfilechooserbutton");
         executable_path = chooser->get_filename ();
         return executable_path;
     }
@@ -188,8 +188,8 @@ struct RemoteTargetDialog::Priv {
     void set_executable_path (const UString &a_path)
     {
         Gtk::FileChooserButton *chooser =
-            get_widget_from_glade<Gtk::FileChooserButton>
-                                            (glade, "execfilechooserbutton");
+            get_widget_from_gtkbuilder<Gtk::FileChooserButton>
+                                            (gtkbuilder, "execfilechooserbutton");
         chooser->set_filename (a_path);
         executable_path = a_path;
     }
@@ -197,8 +197,8 @@ struct RemoteTargetDialog::Priv {
     const UString& get_solib_prefix_path () const
     {
         Gtk::FileChooserButton *chooser =
-            get_widget_from_glade<Gtk::FileChooserButton>
-                                        (glade, "solibprefixchooserbutton");
+            get_widget_from_gtkbuilder<Gtk::FileChooserButton>
+                                        (gtkbuilder, "solibprefixchooserbutton");
         solib_prefix_path = chooser->get_filename ();
         return solib_prefix_path;
     }
@@ -206,8 +206,8 @@ struct RemoteTargetDialog::Priv {
     void set_solib_prefix_path (const UString &a_path)
     {
         Gtk::FileChooserButton *chooser =
-            get_widget_from_glade<Gtk::FileChooserButton>
-                                        (glade, "solibprefixchooserbutton");
+            get_widget_from_gtkbuilder<Gtk::FileChooserButton>
+                                        (gtkbuilder, "solibprefixchooserbutton");
         chooser->set_filename (a_path);
         solib_prefix_path = a_path;
     }
@@ -215,7 +215,7 @@ struct RemoteTargetDialog::Priv {
     void set_connection_type (RemoteTargetDialog::ConnectionType &a_type)
     {
         Gtk::RadioButton *radio =
-            get_widget_from_glade<Gtk::RadioButton> (glade, "tcpradiobutton");
+            get_widget_from_gtkbuilder<Gtk::RadioButton> (gtkbuilder, "tcpradiobutton");
         if (a_type == RemoteTargetDialog::TCP_CONNECTION_TYPE) {
             radio->set_active (true);
         } else {
@@ -225,7 +225,7 @@ struct RemoteTargetDialog::Priv {
 
     const UString& get_server_address () const
     {
-        Gtk::Entry *entry = get_widget_from_glade<Gtk::Entry>(glade,
+        Gtk::Entry *entry = get_widget_from_gtkbuilder<Gtk::Entry>(gtkbuilder,
                                                               "addressentry");
         server_address = entry->get_text ();
         return server_address;
@@ -233,21 +233,21 @@ struct RemoteTargetDialog::Priv {
 
     void set_server_address (const UString &a_address)
     {
-        Gtk::Entry *entry = get_widget_from_glade<Gtk::Entry>(glade,
+        Gtk::Entry *entry = get_widget_from_gtkbuilder<Gtk::Entry>(gtkbuilder,
                                                               "addressentry");
         entry->set_text (a_address);
     }
 
     int get_server_port () const
     {
-        Gtk::Entry *entry = get_widget_from_glade<Gtk::Entry> (glade,
+        Gtk::Entry *entry = get_widget_from_gtkbuilder<Gtk::Entry> (gtkbuilder,
                                                                "portentry");
         return atoi (entry->get_text ().c_str ());
     }
 
     void set_server_port (int a_port)
     {
-        Gtk::Entry *entry = get_widget_from_glade<Gtk::Entry> (glade,
+        Gtk::Entry *entry = get_widget_from_gtkbuilder<Gtk::Entry> (gtkbuilder,
                                                                "portentry");
         entry->set_text (UString::from_int (a_port));
     }
@@ -255,7 +255,7 @@ struct RemoteTargetDialog::Priv {
     const UString& get_serial_port_name () const
     {
         Gtk::FileChooserButton *chooser =
-            get_widget_from_glade<Gtk::FileChooserButton> (glade, "serialchooserbutton");
+            get_widget_from_gtkbuilder<Gtk::FileChooserButton> (gtkbuilder, "serialchooserbutton");
         serial_port_name = chooser->get_filename ();
         return serial_port_name;
     }
@@ -263,7 +263,7 @@ struct RemoteTargetDialog::Priv {
     void set_serial_port_name (const UString &a_name)
     {
         Gtk::FileChooserButton *chooser =
-            get_widget_from_glade<Gtk::FileChooserButton> (glade, "serialchooserbutton");
+            get_widget_from_gtkbuilder<Gtk::FileChooserButton> (gtkbuilder, "serialchooserbutton");
         chooser->select_filename (a_name);
     }
 
@@ -271,10 +271,10 @@ struct RemoteTargetDialog::Priv {
 
 RemoteTargetDialog::RemoteTargetDialog (const UString &a_root_path) :
     Dialog (a_root_path,
-            "remotetargetdialog.glade",
+            "remotetargetdialog.ui",
             "remotetargetdialog")
 {
-    m_priv.reset (new Priv (widget (), glade ()));
+    m_priv.reset (new Priv (widget (), gtkbuilder ()));
     THROW_IF_FAIL (m_priv);
 }
 
diff --git a/src/persp/dbgperspective/nmv-run-program-dialog.cc b/src/persp/dbgperspective/nmv-run-program-dialog.cc
index afb4c14..a10c44c 100644
--- a/src/persp/dbgperspective/nmv-run-program-dialog.cc
+++ b/src/persp/dbgperspective/nmv-run-program-dialog.cc
@@ -26,7 +26,6 @@
 #include <vector>
 #include <iostream>
 #include <glib/gi18n.h>
-#include <libglademm.h>
 #include <gtkmm/dialog.h>
 #include <gtkmm/entry.h>
 #include <gtkmm/filechooserbutton.h>
@@ -65,11 +64,11 @@ public:
     EnvVarModelColumns env_columns;
     Glib::RefPtr<Gtk::ListStore> model;
     Gtk::Dialog &dialog;
-    Glib::RefPtr<Gnome::Glade::Xml> glade;
+    Glib::RefPtr<Gtk::Builder> gtkbuilder;
 
 
     Priv (Gtk::Dialog &a_dialog,
-          const Glib::RefPtr<Gnome::Glade::Xml> &a_glade) :
+        const Glib::RefPtr<Gtk::Builder> &a_gtkbuilder) :
         fcbutton (0),
         okbutton (0),
         treeview_environment (0),
@@ -77,7 +76,7 @@ public:
         add_button (0),
         model (Gtk::ListStore::create (env_columns)),
         dialog (a_dialog),
-        glade (a_glade)
+        gtkbuilder (a_gtkbuilder)
     {
         init ();
     }
@@ -85,14 +84,14 @@ public:
     void init ()
     {
         okbutton =
-            ui_utils::get_widget_from_glade<Gtk::Button>
-                (glade, "executebutton");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::Button>
+                (gtkbuilder, "executebutton");
         THROW_IF_FAIL (okbutton);
         okbutton->set_sensitive (false);
 
         treeview_environment =
-            ui_utils::get_widget_from_glade<Gtk::TreeView>
-                                            (glade, "treeview_environment");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::TreeView>
+                                            (gtkbuilder, "treeview_environment");
 
         treeview_environment->set_model (model);
 
@@ -103,15 +102,15 @@ public:
                                             (_("Value"), env_columns.value);
 
         add_button =
-            ui_utils::get_widget_from_glade<Gtk::Button>
-                                                    (glade, "button_add_var");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::Button>
+                                                    (gtkbuilder, "button_add_var");
         THROW_IF_FAIL (add_button);
 
         add_button->signal_clicked().connect(sigc::mem_fun(*this,
                     &RunProgramDialog::Priv::on_add_new_variable));
 
-        remove_button = ui_utils::get_widget_from_glade<Gtk::Button>
-                                                (glade, "button_remove_var");
+        remove_button = ui_utils::get_widget_from_gtkbuilder<Gtk::Button>
+                                                (gtkbuilder, "button_remove_var");
         THROW_IF_FAIL (remove_button);
         remove_button->signal_clicked().connect(sigc::mem_fun(*this,
                     &RunProgramDialog::Priv::on_remove_variable));
@@ -125,8 +124,8 @@ public:
                   &RunProgramDialog::Priv::on_variable_selection_changed));
 
         fcbutton =
-            ui_utils::get_widget_from_glade<Gtk::FileChooserButton>
-                                                (glade, "filechooserbutton");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::FileChooserButton>
+                                                (gtkbuilder, "filechooserbutton");
         THROW_IF_FAIL (fcbutton);
         fcbutton->set_show_hidden (true);
         fcbutton->signal_selection_changed ().connect (sigc::mem_fun
@@ -134,8 +133,8 @@ public:
 
         // activate the default action (execute) when pressing enter in the
         // arguments text box
-        ui_utils::get_widget_from_glade<Gtk::Entry>
-                        (glade, "argumentsentry")->set_activates_default ();
+        ui_utils::get_widget_from_gtkbuilder<Gtk::Entry>
+                        (gtkbuilder, "argumentsentry")->set_activates_default ();
     }
 
     void on_add_new_variable ()
@@ -190,9 +189,9 @@ public:
 };//end struct RunProgramDialog::Priv
 
 RunProgramDialog::RunProgramDialog (const UString &a_root_path) :
-    Dialog (a_root_path, "runprogramdialog.glade", "runprogramdialog")
+    Dialog (a_root_path, "runprogramdialog.ui", "runprogramdialog")
 {
-    m_priv.reset (new Priv (widget (), glade ()));
+    m_priv.reset (new Priv (widget (), gtkbuilder ()));
     THROW_IF_FAIL (m_priv);
 
     working_directory (Glib::filename_to_utf8 (Glib::get_current_dir ()));
@@ -207,8 +206,8 @@ UString
 RunProgramDialog::program_name () const
 {
     Gtk::FileChooserButton *chooser =
-        ui_utils::get_widget_from_glade<Gtk::FileChooserButton>
-                                        (glade (), "filechooserbutton");
+        ui_utils::get_widget_from_gtkbuilder<Gtk::FileChooserButton>
+                                        (gtkbuilder (), "filechooserbutton");
     return chooser->get_filename ();
 }
 
@@ -218,8 +217,8 @@ RunProgramDialog::program_name (const UString &a_name)
     THROW_IF_FAIL (m_priv);
 
     Gtk::FileChooserButton *chooser =
-        ui_utils::get_widget_from_glade<Gtk::FileChooserButton>
-                                    (glade (), "filechooserbutton");
+        ui_utils::get_widget_from_gtkbuilder<Gtk::FileChooserButton>
+                                    (gtkbuilder (), "filechooserbutton");
     THROW_IF_FAIL (chooser);
     chooser->set_filename (a_name);
 }
@@ -228,7 +227,7 @@ UString
 RunProgramDialog::arguments () const
 {
     Gtk::Entry *entry =
-        ui_utils::get_widget_from_glade<Gtk::Entry> (glade (),
+        ui_utils::get_widget_from_gtkbuilder<Gtk::Entry> (gtkbuilder (),
                                                      "argumentsentry");
     THROW_IF_FAIL (entry);
     return entry->get_text ();
@@ -238,7 +237,7 @@ void
 RunProgramDialog::arguments (const UString &a_args)
 {
     Gtk::Entry *entry =
-        ui_utils::get_widget_from_glade<Gtk::Entry> (glade (),
+        ui_utils::get_widget_from_gtkbuilder<Gtk::Entry> (gtkbuilder (),
                                                      "argumentsentry");
     THROW_IF_FAIL (entry);
     entry->set_text (a_args);
@@ -248,8 +247,8 @@ UString
 RunProgramDialog::working_directory () const
 {
     Gtk::FileChooserButton *chooser =
-        ui_utils::get_widget_from_glade<Gtk::FileChooserButton>
-                                (glade (), "filechooserbutton_workingdir");
+        ui_utils::get_widget_from_gtkbuilder<Gtk::FileChooserButton>
+                                (gtkbuilder (), "filechooserbutton_workingdir");
     return chooser->get_filename ();
 }
 
@@ -257,8 +256,8 @@ void
 RunProgramDialog::working_directory (const UString &a_dir)
 {
     Gtk::FileChooserButton *chooser =
-        ui_utils::get_widget_from_glade<Gtk::FileChooserButton>
-            (glade (), "filechooserbutton_workingdir");
+        ui_utils::get_widget_from_gtkbuilder<Gtk::FileChooserButton>
+            (gtkbuilder (), "filechooserbutton_workingdir");
     if (a_dir == "" || a_dir == ".") {
         chooser->set_filename
                     (Glib::locale_to_utf8 (Glib::get_current_dir ()));
diff --git a/src/persp/dbgperspective/nmv-saved-sessions-dialog.cc b/src/persp/dbgperspective/nmv-saved-sessions-dialog.cc
index 359edd9..1c99391 100644
--- a/src/persp/dbgperspective/nmv-saved-sessions-dialog.cc
+++ b/src/persp/dbgperspective/nmv-saved-sessions-dialog.cc
@@ -25,7 +25,6 @@
 
 #include <vector>
 #include <glib/gi18n.h>
-#include <libglademm.h>
 #include <gtkmm/dialog.h>
 #include <gtkmm/filechooserbutton.h>
 #include <gtkmm/stock.h>
@@ -56,28 +55,28 @@ public:
     SessionModelColumns session_columns;
     Glib::RefPtr<Gtk::ListStore> model;
     Gtk::Dialog &dialog;
-    Glib::RefPtr<Gnome::Glade::Xml> glade;
+    Glib::RefPtr<Gtk::Builder> gtkbuilder;
 
 private:
     Priv ();
 
 public:
     Priv (Gtk::Dialog &a_dialog,
-          const Glib::RefPtr<Gnome::Glade::Xml> &a_glade) :
+        const Glib::RefPtr<Gtk::Builder> &a_gtkbuilder) :
         okbutton (0),
         model(Gtk::ListStore::create (session_columns)),
         dialog (a_dialog),
-        glade (a_glade)
+        gtkbuilder (a_gtkbuilder)
     {
     }
 
     void init (ISessMgr *a_session_manager)
     {
         okbutton =
-            ui_utils::get_widget_from_glade<Gtk::Button> (glade, "okbutton1");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::Button> (gtkbuilder, "okbutton1");
         treeview_sessions.reset
-            (ui_utils::get_widget_from_glade<Gtk::TreeView>
-                                            (glade, "treeview_sessions"));
+            (ui_utils::get_widget_from_gtkbuilder<Gtk::TreeView>
+                                            (gtkbuilder, "treeview_sessions"));
         okbutton->set_sensitive (false);
         THROW_IF_FAIL (a_session_manager);
         list<ISessMgr::Session> sessions = a_session_manager->sessions ();
@@ -124,9 +123,9 @@ public:
 
 SavedSessionsDialog::SavedSessionsDialog (const UString &a_root_path,
                                           ISessMgr *a_session_manager) :
-    Dialog(a_root_path, "savedsessionsdialog.glade", "savedsessionsdialog")
+    Dialog(a_root_path, "savedsessionsdialog.ui", "savedsessionsdialog")
 {
-    m_priv.reset (new Priv (widget (), glade ()));
+    m_priv.reset (new Priv (widget (), gtkbuilder ()));
     THROW_IF_FAIL (m_priv);
     m_priv->init (a_session_manager);
 }
diff --git a/src/persp/dbgperspective/nmv-set-breakpoint-dialog.cc b/src/persp/dbgperspective/nmv-set-breakpoint-dialog.cc
index e6d9d56..9a8a2f8 100644
--- a/src/persp/dbgperspective/nmv-set-breakpoint-dialog.cc
+++ b/src/persp/dbgperspective/nmv-set-breakpoint-dialog.cc
@@ -27,7 +27,6 @@
 
 #include <vector>
 #include <glib/gi18n.h>
-#include <libglademm.h>
 #include <gtkmm/dialog.h>
 #include "common/nmv-exception.h"
 #include "common/nmv-env.h"
@@ -71,7 +70,7 @@ public:
 
 public:
     Priv (Gtk::Dialog &a_dialog,
-          const Glib::RefPtr<Gnome::Glade::Xml> &a_glade) :
+          const Glib::RefPtr<Gtk::Builder> &a_gtkbuilder) :
         combo_event (0),
         entry_filename (0),
         entry_line (0),
@@ -86,14 +85,14 @@ public:
         a_dialog.set_default_response (Gtk::RESPONSE_OK);
 
         okbutton =
-            ui_utils::get_widget_from_glade<Gtk::Button> (a_glade,
+            ui_utils::get_widget_from_gtkbuilder<Gtk::Button> (a_gtkbuilder,
                                                           "okbutton");
         THROW_IF_FAIL (okbutton);
         okbutton->set_sensitive (false);
 
         combo_event =
-            ui_utils::get_widget_from_glade<Gtk::ComboBox>
-            (a_glade, "combo_event");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::ComboBox>
+            (a_gtkbuilder, "combo_event");
         combo_event_model = Gtk::TreeStore::create(combo_event_col_model);
         combo_event->set_model(combo_event_model);
         Gtk::TreeModel::Row row;
@@ -121,66 +120,66 @@ public:
         combo_event->set_active (0);
 
         entry_filename =
-            ui_utils::get_widget_from_glade<Gtk::Entry>
-                (a_glade, "filenameentry");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::Entry>
+                (a_gtkbuilder, "filenameentry");
         entry_filename->signal_changed ().connect (sigc::mem_fun
                 (*this, &Priv::on_text_changed_signal));
 
         entry_line =
-            ui_utils::get_widget_from_glade<Gtk::Entry>
-                (a_glade, "lineentry");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::Entry>
+                (a_gtkbuilder, "lineentry");
         entry_line->signal_changed ().connect (sigc::mem_fun
                 (*this, &Priv::on_text_changed_signal));
         entry_line->set_activates_default ();
 
         entry_function =
-            ui_utils::get_widget_from_glade<Gtk::Entry>
-                (a_glade, "functionentry");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::Entry>
+                (a_gtkbuilder, "functionentry");
         entry_function->signal_changed ().connect (sigc::mem_fun
                 (*this, &Priv::on_text_changed_signal));
         entry_function->set_activates_default ();
 
         entry_address =
-            ui_utils::get_widget_from_glade<Gtk::Entry>
-                (a_glade, "addressentry");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::Entry>
+                (a_gtkbuilder, "addressentry");
         entry_address->signal_changed ().connect (sigc::mem_fun
               (*this, &Priv::on_text_changed_signal));
         entry_address->set_activates_default ();
 
-        entry_condition = ui_utils::get_widget_from_glade<Gtk::Entry>
-                (a_glade, "conditionentry");
+        entry_condition = ui_utils::get_widget_from_gtkbuilder<Gtk::Entry>
+                (a_gtkbuilder, "conditionentry");
         entry_condition->signal_changed ().connect (sigc::mem_fun
                 (*this, &Priv::on_text_changed_signal));
         entry_condition->set_activates_default ();
 
         radio_source_location =
-            ui_utils::get_widget_from_glade<Gtk::RadioButton>
-                (a_glade, "sourcelocationradio");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::RadioButton>
+                (a_gtkbuilder, "sourcelocationradio");
         radio_source_location->signal_clicked ().connect (sigc::mem_fun
                 (*this, &Priv::on_radiobutton_changed));
 
         radio_function_name =
-            ui_utils::get_widget_from_glade<Gtk::RadioButton>
-                (a_glade, "functionnameradio");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::RadioButton>
+                (a_gtkbuilder, "functionnameradio");
         radio_function_name->signal_clicked ().connect (sigc::mem_fun
                 (*this, &Priv::on_radiobutton_changed));
 
         radio_binary_location =
-            ui_utils::get_widget_from_glade<Gtk::RadioButton>
-                (a_glade, "binarylocationradio");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::RadioButton>
+                (a_gtkbuilder, "binarylocationradio");
         radio_binary_location->signal_clicked ().connect (sigc::mem_fun
               (*this, &Priv::on_radiobutton_changed));
 
         radio_event =
-            ui_utils::get_widget_from_glade<Gtk::RadioButton>
-            (a_glade, "eventradio");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::RadioButton>
+            (a_gtkbuilder, "eventradio");
         radio_event->signal_clicked ().connect (sigc::mem_fun
                 (*this, &Priv::on_radiobutton_changed));
 
         // set the 'function name' mode active by default
         mode (MODE_FUNCTION_NAME);
         // hack to ensure that the correct text entry fields
-        // get insensitive at startup since if the glade file
+        // get insensitive at startup since if the gtkbuilder file
         // initializes MODE_FUNCTION_NAME to
         // active, the 'changed' signal won't be emitted here
         // (is there a better way to do this?)
@@ -325,9 +324,9 @@ public:
 };//end class SetBreakpointDialog::Priv
 
 SetBreakpointDialog::SetBreakpointDialog (const UString &a_root_path) :
-    Dialog (a_root_path, "setbreakpointdialog.glade", "setbreakpointdialog")
+    Dialog (a_root_path, "setbreakpointdialog.ui", "setbreakpointdialog")
 {
-    m_priv.reset (new Priv (widget (), glade ()));
+    m_priv.reset (new Priv (widget (), gtkbuilder ()));
 }
 
 SetBreakpointDialog::~SetBreakpointDialog ()
diff --git a/src/persp/dbgperspective/nmv-var-inspector-dialog.cc b/src/persp/dbgperspective/nmv-var-inspector-dialog.cc
index 447f6cf..5c53dd5 100644
--- a/src/persp/dbgperspective/nmv-var-inspector-dialog.cc
+++ b/src/persp/dbgperspective/nmv-var-inspector-dialog.cc
@@ -53,7 +53,7 @@ class VarInspectorDialog::Priv {
     Gtk::Button *inspect_button;
     SafePtr<VarInspector> var_inspector;
     Gtk::Dialog &dialog;
-    Glib::RefPtr<Gnome::Glade::Xml> glade;
+    Glib::RefPtr<Gtk::Builder> gtkbuilder;
     IDebuggerSafePtr debugger;
     IPerspective &perspective;
 
@@ -61,13 +61,13 @@ class VarInspectorDialog::Priv {
 public:
 
     Priv (Gtk::Dialog &a_dialog,
-          const Glib::RefPtr<Gnome::Glade::Xml> &a_glade,
+          const Glib::RefPtr<Gtk::Builder> &a_gtkbuilder,
           IDebuggerSafePtr a_debugger,
           IPerspective &a_perspective) :
         var_name_entry (0),
         inspect_button (0),
         dialog (a_dialog),
-        glade (a_glade),
+        gtkbuilder (a_gtkbuilder),
         debugger (a_debugger),
         perspective (a_perspective)
     {
@@ -81,20 +81,20 @@ public:
         LOG_FUNCTION_SCOPE_NORMAL_DD;
 
         var_name_entry =
-            ui_utils::get_widget_from_glade<Gtk::ComboBoxEntry>
-                (glade, "variablenameentry");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::ComboBoxEntry>
+                (gtkbuilder, "variablenameentry");
         m_variable_history =
             Gtk::ListStore::create (get_cols ());
         var_name_entry->set_model (m_variable_history);
         var_name_entry->set_text_column (get_cols ().varname);
 
         inspect_button =
-            ui_utils::get_widget_from_glade<Gtk::Button> (glade,
+            ui_utils::get_widget_from_gtkbuilder<Gtk::Button> (gtkbuilder,
                                                           "inspectbutton");
         inspect_button->set_sensitive (false);
 
         Gtk::Box *box =
-            ui_utils::get_widget_from_glade<Gtk::Box> (glade,
+            ui_utils::get_widget_from_gtkbuilder<Gtk::Box> (gtkbuilder,
                                                        "inspectorwidgetbox");
         var_inspector.reset (new VarInspector (debugger, perspective));
         var_inspector->enable_contextual_menu (true);
@@ -227,13 +227,13 @@ VarInspectorDialog::VarInspectorDialog (const UString &a_root_path,
                                         IDebuggerSafePtr &a_debugger,
                                         IPerspective &a_perspective) :
     Dialog (a_root_path,
-            "varinspectordialog.glade",
+            "varinspectordialog.ui",
             "varinspectordialog")
 {
     LOG_FUNCTION_SCOPE_NORMAL_DD;
     m_priv.reset
         (new VarInspectorDialog::Priv (widget (),
-                                       glade (), a_debugger,
+                                       gtkbuilder (), a_debugger,
                                        a_perspective));
     THROW_IF_FAIL (m_priv);
 }
diff --git a/src/persp/dbgperspective/nmv-watchpoint-dialog.cc b/src/persp/dbgperspective/nmv-watchpoint-dialog.cc
index 2f44f03..166cca1 100644
--- a/src/persp/dbgperspective/nmv-watchpoint-dialog.cc
+++ b/src/persp/dbgperspective/nmv-watchpoint-dialog.cc
@@ -23,7 +23,6 @@
  */
 #include <glib/gi18n.h>
 #include "nmv-watchpoint-dialog.h"
-#include <libglademm.h>
 #include <gtkmm/dialog.h>
 #include "common/nmv-exception.h"
 #include "common/nmv-env.h"
@@ -36,7 +35,7 @@ NEMIVER_BEGIN_NAMESPACE (nemiver)
 struct WatchpointDialog::Priv {
 
     Gtk::Dialog &dialog;
-    Glib::RefPtr<Gnome::Glade::Xml> glade;
+    Glib::RefPtr<Gtk::Builder> gtkbuilder;
     Gtk::Entry *expression_entry;
     Gtk::Button *inspect_button;
     Gtk::CheckButton *read_check_button;
@@ -48,11 +47,11 @@ struct WatchpointDialog::Priv {
     IPerspective &perspective;
 
     Priv (Gtk::Dialog &a_dialog,
-          const Glib::RefPtr<Gnome::Glade::Xml> &a_glade,
+          const Glib::RefPtr<Gtk::Builder> &a_gtkbuilder,
           IDebuggerSafePtr a_debugger,
           IPerspective &a_perspective) :
         dialog (a_dialog),
-        glade (a_glade),
+        gtkbuilder (a_gtkbuilder),
         expression_entry (0),
         inspect_button (0),
         read_check_button (0),
@@ -75,40 +74,40 @@ struct WatchpointDialog::Priv {
         dialog.set_default_response (Gtk::RESPONSE_OK);
 
         expression_entry =
-            ui_utils::get_widget_from_glade<Gtk::Entry>
-                                            (glade, "expressionentry");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::Entry>
+                                            (gtkbuilder, "expressionentry");
         THROW_IF_FAIL (expression_entry);
         expression_entry->set_activates_default ();
 
         inspect_button =
-           ui_utils::get_widget_from_glade<Gtk::Button> (glade, "inspectbutton");
+           ui_utils::get_widget_from_gtkbuilder<Gtk::Button> (gtkbuilder, "inspectbutton");
         THROW_IF_FAIL (inspect_button);
         inspect_button->set_sensitive (false);
 
         read_check_button =
-            ui_utils::get_widget_from_glade<Gtk::CheckButton>
-                                            (glade, "readcheckbutton");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::CheckButton>
+                                            (gtkbuilder, "readcheckbutton");
         THROW_IF_FAIL (read_check_button);
 
         write_check_button =
-            ui_utils::get_widget_from_glade<Gtk::CheckButton>
-                                            (glade, "writecheckbutton");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::CheckButton>
+                                            (gtkbuilder, "writecheckbutton");
         THROW_IF_FAIL (write_check_button);
 
         ok_button =
-            ui_utils::get_widget_from_glade<Gtk::Button>
-                                            (glade, "okbutton");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::Button>
+                                            (gtkbuilder, "okbutton");
         THROW_IF_FAIL (ok_button);
         ok_button->set_sensitive (false);
 
         cancel_button =
-            ui_utils::get_widget_from_glade<Gtk::Button>
-                                            (glade, "cancelbutton");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::Button>
+                                            (gtkbuilder, "cancelbutton");
         THROW_IF_FAIL (cancel_button);
         cancel_button->set_sensitive (true);
 
         Gtk::Box *box =
-            ui_utils::get_widget_from_glade<Gtk::Box> (glade,
+            ui_utils::get_widget_from_gtkbuilder<Gtk::Box> (gtkbuilder,
                                                        "varinspectorbox");
         THROW_IF_FAIL (box);
 
@@ -201,12 +200,12 @@ WatchpointDialog::WatchpointDialog (const UString &a_root_path,
                                     IDebuggerSafePtr a_debugger,
                                     IPerspective &a_perspective) :
     Dialog (a_root_path,
-            "watchpointdialog.glade",
+            "watchpointdialog.ui",
             "watchpointdialog")
 {
     LOG_FUNCTION_SCOPE_NORMAL_DD;
     m_priv.reset (new WatchpointDialog::Priv (widget (),
-                                              glade (),
+                                              gtkbuilder (),
                                               a_debugger,
                                               a_perspective));
 }
diff --git a/src/persp/dbgperspective/ui/Makefile.am b/src/persp/dbgperspective/ui/Makefile.am
new file mode 100644
index 0000000..496ce3a
--- /dev/null
+++ b/src/persp/dbgperspective/ui/Makefile.am
@@ -0,0 +1,22 @@
+PLUGIN_NAME=dbgperspective
+uifiles = bodycontainer.ui \
+runprogramdialog.ui \
+proclistdialog.ui \
+loadcoredialog.ui \
+savedsessionsdialog.ui \
+preferencesdialog.ui \
+varinspectordialog.ui \
+findtextdialog.ui \
+openfiledialog.ui \
+setbreakpointdialog.ui \
+chooseoverloadsdialog.ui \
+remotetargetdialog.ui \
+globalvarsinspector.ui \
+callfunctiondialog.ui \
+watchpointdialog.ui
+
+uidir = @NEMIVER_PLUGINS_DIR@/$(PLUGIN_NAME)/ui
+ui_DATA = $(uifiles)
+
+EXTRA_DIST = $(uifiles)
+
diff --git a/src/persp/dbgperspective/ui/bodycontainer.ui b/src/persp/dbgperspective/ui/bodycontainer.ui
new file mode 100644
index 0000000..11984d9
--- /dev/null
+++ b/src/persp/dbgperspective/ui/bodycontainer.ui
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<interface>
+  <!-- interface-requires gtk+ 2.6 -->
+  <!-- interface-naming-policy toplevel-contextual -->
+  <object class="GtkWindow" id="bodycontainer">
+    <property name="title" translatable="yes">bodycontainer</property>
+    <property name="default_width">800</property>
+    <property name="default_height">600</property>
+    <child>
+      <object class="GtkHBox" id="topbox">
+        <property name="visible">True</property>
+        <child>
+          <object class="GtkVPaned" id="mainbodypaned">
+            <property name="visible">True</property>
+            <property name="can_focus">True</property>
+            <property name="position">350</property>
+            <child>
+              <object class="GtkNotebook" id="sourceviewsnotebook">
+                <property name="visible">True</property>
+                <property name="show_tabs">False</property>
+              </object>
+              <packing>
+                <property name="resize">True</property>
+                <property name="shrink">True</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkNotebook" id="statusesnotebook">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="tab_pos">bottom</property>
+              </object>
+              <packing>
+                <property name="resize">False</property>
+                <property name="shrink">False</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="position">0</property>
+          </packing>
+        </child>
+      </object>
+    </child>
+  </object>
+</interface>
diff --git a/src/persp/dbgperspective/glade/callfunctiondialog.glade b/src/persp/dbgperspective/ui/callfunctiondialog.ui
similarity index 56%
rename from src/persp/dbgperspective/glade/callfunctiondialog.glade
rename to src/persp/dbgperspective/ui/callfunctiondialog.ui
index 555be3c..d482d1f 100644
--- a/src/persp/dbgperspective/glade/callfunctiondialog.glade
+++ b/src/persp/dbgperspective/ui/callfunctiondialog.ui
@@ -1,51 +1,48 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
-<!--*- mode: xml -*-->
-<glade-interface>
-  <widget class="GtkDialog" id="callfunctiondialog">
+<?xml version="1.0"?>
+<interface>
+  <!-- interface-requires gtk+ 2.6 -->
+  <!-- interface-naming-policy toplevel-contextual -->
+  <object class="GtkDialog" id="callfunctiondialog">
     <property name="border_width">5</property>
     <property name="title" translatable="yes">Call Function</property>
     <property name="modal">True</property>
-    <property name="window_position">GTK_WIN_POS_CENTER_ON_PARENT</property>
+    <property name="window_position">center-on-parent</property>
     <property name="default_width">300</property>
-    <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
+    <property name="type_hint">dialog</property>
     <property name="has_separator">False</property>
     <child internal-child="vbox">
-      <widget class="GtkVBox" id="dialog-vbox1">
+      <object class="GtkVBox" id="dialog-vbox1">
         <property name="visible">True</property>
+        <property name="orientation">vertical</property>
         <property name="spacing">2</property>
         <child>
-          <widget class="GtkVBox" id="vbox1">
+          <object class="GtkVBox" id="vbox1">
             <property name="visible">True</property>
             <property name="border_width">6</property>
+            <property name="orientation">vertical</property>
             <property name="spacing">6</property>
             <child>
-              <widget class="GtkLabel" id="label1">
+              <object class="GtkLabel" id="label1">
                 <property name="visible">True</property>
                 <property name="xalign">0</property>
                 <property name="label" translatable="yes">&lt;b&gt;Call a function:&lt;/b&gt;</property>
                 <property name="use_markup">True</property>
-              </widget>
+              </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">False</property>
+                <property name="position">0</property>
               </packing>
             </child>
             <child>
-              <widget class="GtkComboBoxEntry" id="callexpressionentry">
+              <object class="GtkComboBoxEntry" id="callexpressionentry">
                 <property name="visible">True</property>
-                <child internal-child="entry">
-                  <widget class="GtkEntry" id="comboboxentry-entry1">
-                    <property name="visible">True</property>
-                    <property name="can_focus">True</property>
-                  </widget>
-                </child>
-              </widget>
+              </object>
               <packing>
                 <property name="position">1</property>
               </packing>
             </child>
-          </widget>
+          </object>
           <packing>
             <property name="expand">False</property>
             <property name="fill">False</property>
@@ -53,38 +50,51 @@
           </packing>
         </child>
         <child internal-child="action_area">
-          <widget class="GtkHButtonBox" id="dialog-action_area1">
+          <object class="GtkHButtonBox" id="dialog-action_area1">
             <property name="visible">True</property>
-            <property name="layout_style">GTK_BUTTONBOX_END</property>
+            <property name="layout_style">end</property>
             <child>
-              <widget class="GtkButton" id="cancelbutton">
+              <object class="GtkButton" id="cancelbutton">
+                <property name="label">gtk-cancel</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
-                <property name="label">gtk-cancel</property>
+                <property name="receives_default">False</property>
                 <property name="use_stock">True</property>
-                <property name="response_id">-6</property>
-              </widget>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
+              </packing>
             </child>
             <child>
-              <widget class="GtkButton" id="okbutton">
+              <object class="GtkButton" id="okbutton">
+                <property name="label">gtk-ok</property>
                 <property name="visible">True</property>
+                <property name="can_focus">False</property>
                 <property name="can_default">True</property>
                 <property name="has_default">True</property>
-                <property name="label">gtk-ok</property>
+                <property name="receives_default">False</property>
                 <property name="use_stock">True</property>
-                <property name="response_id">-5</property>
-              </widget>
+              </object>
               <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
                 <property name="position">1</property>
               </packing>
             </child>
-          </widget>
+          </object>
           <packing>
             <property name="expand">False</property>
-            <property name="pack_type">GTK_PACK_END</property>
+            <property name="pack_type">end</property>
+            <property name="position">0</property>
           </packing>
         </child>
-      </widget>
+      </object>
     </child>
-  </widget>
-</glade-interface>
+    <action-widgets>
+      <action-widget response="-6">cancelbutton</action-widget>
+      <action-widget response="-5">okbutton</action-widget>
+    </action-widgets>
+  </object>
+</interface>
diff --git a/src/persp/dbgperspective/glade/chooseoverloadsdialog.glade b/src/persp/dbgperspective/ui/chooseoverloadsdialog.ui
similarity index 61%
rename from src/persp/dbgperspective/glade/chooseoverloadsdialog.glade
rename to src/persp/dbgperspective/ui/chooseoverloadsdialog.ui
index d506692..20f1137 100644
--- a/src/persp/dbgperspective/glade/chooseoverloadsdialog.glade
+++ b/src/persp/dbgperspective/ui/chooseoverloadsdialog.ui
@@ -1,44 +1,47 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
-<!--*- mode: xml -*-->
-<glade-interface>
-  <widget class="GtkDialog" id="chooseoverloadsdialog">
+<?xml version="1.0"?>
+<interface>
+  <!-- interface-requires gtk+ 2.6 -->
+  <!-- interface-naming-policy toplevel-contextual -->
+  <object class="GtkDialog" id="chooseoverloadsdialog">
     <property name="visible">True</property>
     <property name="title" translatable="yes">Set Breakpoint</property>
     <property name="modal">True</property>
     <property name="default_width">400</property>
     <property name="default_height">300</property>
-    <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
+    <property name="type_hint">dialog</property>
     <property name="skip_taskbar_hint">True</property>
     <property name="skip_pager_hint">True</property>
     <property name="has_separator">False</property>
     <child internal-child="vbox">
-      <widget class="GtkVBox" id="dialog-vbox1">
+      <object class="GtkVBox" id="dialog-vbox1">
         <property name="visible">True</property>
+        <property name="orientation">vertical</property>
         <child>
-          <widget class="GtkVBox" id="treeviewcontainer">
+          <object class="GtkVBox" id="treeviewcontainer">
             <property name="visible">True</property>
             <property name="border_width">6</property>
+            <property name="orientation">vertical</property>
             <property name="spacing">6</property>
             <child>
-              <widget class="GtkLabel" id="label1">
+              <object class="GtkLabel" id="label1">
                 <property name="visible">True</property>
                 <property name="xalign">0</property>
                 <property name="label" translatable="yes">&lt;b&gt;Choose Overloaded Function&lt;/b&gt;</property>
                 <property name="use_markup">True</property>
-              </widget>
+              </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">False</property>
+                <property name="position">0</property>
               </packing>
             </child>
             <child>
-              <widget class="GtkLabel" id="label2">
+              <object class="GtkLabel" id="label2">
                 <property name="visible">True</property>
                 <property name="xalign">0</property>
                 <property name="label" translatable="yes">Multiple functions match the specified name. Please choose one from the list below.</property>
                 <property name="wrap">True</property>
-              </widget>
+              </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">False</property>
@@ -46,61 +49,73 @@
               </packing>
             </child>
             <child>
-              <widget class="GtkScrolledWindow" id="treeviewscrolledwindow">
+              <object class="GtkScrolledWindow" id="treeviewscrolledwindow">
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
-                <property name="hscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
-                <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
-                <property name="shadow_type">GTK_SHADOW_IN</property>
+                <property name="hscrollbar_policy">automatic</property>
+                <property name="vscrollbar_policy">automatic</property>
+                <property name="shadow_type">in</property>
                 <child>
                   <placeholder/>
                 </child>
-              </widget>
+              </object>
               <packing>
                 <property name="position">2</property>
               </packing>
             </child>
-          </widget>
+          </object>
           <packing>
             <property name="position">1</property>
           </packing>
         </child>
         <child internal-child="action_area">
-          <widget class="GtkHButtonBox" id="dialog-action_area1">
+          <object class="GtkHButtonBox" id="dialog-action_area1">
             <property name="visible">True</property>
-            <property name="layout_style">GTK_BUTTONBOX_END</property>
+            <property name="layout_style">end</property>
             <child>
-              <widget class="GtkButton" id="cancelbutton">
+              <object class="GtkButton" id="cancelbutton">
+                <property name="label">gtk-cancel</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <property name="can_default">True</property>
                 <property name="has_default">True</property>
-                <property name="label">gtk-cancel</property>
+                <property name="receives_default">False</property>
                 <property name="use_stock">True</property>
-                <property name="response_id">-6</property>
-              </widget>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
+              </packing>
             </child>
             <child>
-              <widget class="GtkButton" id="okbutton">
+              <object class="GtkButton" id="okbutton">
+                <property name="label">gtk-ok</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <property name="can_default">True</property>
                 <property name="has_default">True</property>
-                <property name="label">gtk-ok</property>
+                <property name="receives_default">False</property>
                 <property name="use_stock">True</property>
-                <property name="response_id">-5</property>
-              </widget>
+              </object>
               <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
                 <property name="position">1</property>
               </packing>
             </child>
-          </widget>
+          </object>
           <packing>
             <property name="expand">False</property>
-            <property name="pack_type">GTK_PACK_END</property>
+            <property name="pack_type">end</property>
+            <property name="position">0</property>
           </packing>
         </child>
-      </widget>
+      </object>
     </child>
-  </widget>
-</glade-interface>
+    <action-widgets>
+      <action-widget response="-6">cancelbutton</action-widget>
+      <action-widget response="-5">okbutton</action-widget>
+    </action-widgets>
+  </object>
+</interface>
diff --git a/src/persp/dbgperspective/ui/findtextdialog.ui b/src/persp/dbgperspective/ui/findtextdialog.ui
new file mode 100644
index 0000000..67a11ed
--- /dev/null
+++ b/src/persp/dbgperspective/ui/findtextdialog.ui
@@ -0,0 +1,248 @@
+<?xml version="1.0"?>
+<interface>
+  <!-- interface-requires gtk+ 2.6 -->
+  <!-- interface-naming-policy toplevel-contextual -->
+  <object class="GtkDialog" id="findtextdialog">
+    <property name="visible">True</property>
+    <property name="title" translatable="yes">Find text</property>
+    <property name="default_width">150</property>
+    <property name="default_height">100</property>
+    <property name="type_hint">dialog</property>
+    <property name="has_separator">False</property>
+    <child internal-child="vbox">
+      <object class="GtkVBox" id="dialog-vbox1">
+        <property name="visible">True</property>
+        <property name="orientation">vertical</property>
+        <property name="spacing">6</property>
+        <child>
+          <object class="GtkVBox" id="vbox1">
+            <property name="visible">True</property>
+            <property name="border_width">6</property>
+            <property name="orientation">vertical</property>
+            <property name="spacing">12</property>
+            <child>
+              <object class="GtkTable" id="table1">
+                <property name="visible">True</property>
+                <property name="n_columns">2</property>
+                <property name="column_spacing">6</property>
+                <property name="row_spacing">6</property>
+                <child>
+                  <object class="GtkLabel" id="searchlabel">
+                    <property name="visible">True</property>
+                    <property name="xalign">0</property>
+                    <property name="label" translatable="yes">_Search:</property>
+                    <property name="use_underline">True</property>
+                    <property name="mnemonic_widget">searchtextcombo</property>
+                  </object>
+                  <packing>
+                    <property name="x_options">GTK_FILL</property>
+                    <property name="y_options"></property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkComboBoxEntry" id="searchtextcombo">
+                    <property name="visible">True</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">1</property>
+                    <property name="right_attach">2</property>
+                    <property name="y_options">GTK_FILL</property>
+                  </packing>
+                </child>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkHBox" id="hbox1">
+                <property name="visible">True</property>
+                <child>
+                  <object class="GtkTable" id="table2">
+                    <property name="visible">True</property>
+                    <property name="n_rows">2</property>
+                    <property name="row_spacing">6</property>
+                    <child>
+                      <object class="GtkLabel" id="label2">
+                        <property name="visible">True</property>
+                        <property name="xalign">0</property>
+                        <property name="label" translatable="yes">&lt;b&gt;Match Options:&lt;/b&gt;</property>
+                        <property name="use_markup">True</property>
+                      </object>
+                      <packing>
+                        <property name="x_options">GTK_FILL</property>
+                        <property name="y_options"></property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkVBox" id="vbox2">
+                        <property name="visible">True</property>
+                        <property name="orientation">vertical</property>
+                        <child>
+                          <object class="GtkCheckButton" id="matchcasecheckbutton">
+                            <property name="label" translatable="yes">Match c_ase</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="use_underline">True</property>
+                            <property name="draw_indicator">True</property>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">0</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkCheckButton" id="matchentirewordcheckbutton">
+                            <property name="label" translatable="yes">Match _entire word only</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="use_underline">True</property>
+                            <property name="draw_indicator">True</property>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">1</property>
+                          </packing>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="top_attach">1</property>
+                        <property name="bottom_attach">2</property>
+                        <property name="y_options">GTK_FILL</property>
+                        <property name="x_padding">6</property>
+                      </packing>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="position">0</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkTable" id="table3">
+                    <property name="visible">True</property>
+                    <property name="n_rows">2</property>
+                    <property name="row_spacing">6</property>
+                    <child>
+                      <object class="GtkLabel" id="label3">
+                        <property name="visible">True</property>
+                        <property name="xalign">0</property>
+                        <property name="label" translatable="yes">&lt;b&gt;Cycling Options:&lt;/b&gt;</property>
+                        <property name="use_markup">True</property>
+                      </object>
+                      <packing>
+                        <property name="x_options">GTK_FILL</property>
+                        <property name="y_options"></property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkVBox" id="vbox3">
+                        <property name="visible">True</property>
+                        <property name="orientation">vertical</property>
+                        <child>
+                          <object class="GtkCheckButton" id="wraparoundcheckbutton">
+                            <property name="label" translatable="yes">_Wrap around</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="use_underline">True</property>
+                            <property name="draw_indicator">True</property>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">0</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkCheckButton" id="searchbackwardscheckbutton">
+                            <property name="label" translatable="yes">Search _backwards</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="use_underline">True</property>
+                            <property name="draw_indicator">True</property>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">1</property>
+                          </packing>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="top_attach">1</property>
+                        <property name="bottom_attach">2</property>
+                        <property name="y_options">GTK_FILL</property>
+                        <property name="x_padding">6</property>
+                      </packing>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="position">1</property>
+                  </packing>
+                </child>
+              </object>
+              <packing>
+                <property name="position">1</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="position">1</property>
+          </packing>
+        </child>
+        <child internal-child="action_area">
+          <object class="GtkHButtonBox" id="dialog-action_area1">
+            <property name="visible">True</property>
+            <property name="layout_style">end</property>
+            <child>
+              <object class="GtkButton" id="closebutton1">
+                <property name="label">gtk-close</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="can_default">True</property>
+                <property name="receives_default">False</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkButton" id="searchbutton">
+                <property name="label">gtk-find</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="can_default">True</property>
+                <property name="receives_default">False</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="pack_type">end</property>
+            <property name="position">0</property>
+          </packing>
+        </child>
+      </object>
+    </child>
+    <action-widgets>
+      <action-widget response="-6">closebutton1</action-widget>
+      <action-widget response="-5">searchbutton</action-widget>
+    </action-widgets>
+  </object>
+</interface>
diff --git a/src/persp/dbgperspective/ui/globalvarsinspector.ui b/src/persp/dbgperspective/ui/globalvarsinspector.ui
new file mode 100644
index 0000000..518afa7
--- /dev/null
+++ b/src/persp/dbgperspective/ui/globalvarsinspector.ui
@@ -0,0 +1,61 @@
+<?xml version="1.0"?>
+<interface>
+  <!-- interface-requires gtk+ 2.6 -->
+  <!-- interface-naming-policy toplevel-contextual -->
+  <object class="GtkDialog" id="globalvarsinspector">
+    <property name="visible">True</property>
+    <property name="title" translatable="yes">Global Variables</property>
+    <property name="default_width">600</property>
+    <property name="default_height">500</property>
+    <property name="type_hint">dialog</property>
+    <property name="has_separator">False</property>
+    <child internal-child="vbox">
+      <object class="GtkVBox" id="dialog-vbox1">
+        <property name="visible">True</property>
+        <property name="orientation">vertical</property>
+        <child>
+          <object class="GtkVBox" id="inspectorwidgetbox">
+            <property name="visible">True</property>
+            <property name="border_width">6</property>
+            <property name="orientation">vertical</property>
+            <child>
+              <placeholder/>
+            </child>
+          </object>
+          <packing>
+            <property name="position">1</property>
+          </packing>
+        </child>
+        <child internal-child="action_area">
+          <object class="GtkHButtonBox" id="dialog-action_area1">
+            <property name="visible">True</property>
+            <property name="layout_style">end</property>
+            <child>
+              <object class="GtkButton" id="closebutton">
+                <property name="label">gtk-close</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="can_default">True</property>
+                <property name="receives_default">False</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="pack_type">end</property>
+            <property name="position">0</property>
+          </packing>
+        </child>
+      </object>
+    </child>
+    <action-widgets>
+      <action-widget response="-7">closebutton</action-widget>
+    </action-widgets>
+  </object>
+</interface>
diff --git a/src/persp/dbgperspective/ui/loadcoredialog.ui b/src/persp/dbgperspective/ui/loadcoredialog.ui
new file mode 100644
index 0000000..5c0378d
--- /dev/null
+++ b/src/persp/dbgperspective/ui/loadcoredialog.ui
@@ -0,0 +1,133 @@
+<?xml version="1.0"?>
+<interface>
+  <!-- interface-requires gtk+ 2.6 -->
+  <!-- interface-naming-policy toplevel-contextual -->
+  <object class="GtkDialog" id="loadcoredialog">
+    <property name="width_request">300</property>
+    <property name="title" translatable="yes">Choose a Core File to Debug</property>
+    <property name="resizable">False</property>
+    <property name="default_width">350</property>
+    <property name="default_height">200</property>
+    <property name="type_hint">dialog</property>
+    <property name="has_separator">False</property>
+    <child internal-child="vbox">
+      <object class="GtkVBox" id="dialog-vbox1">
+        <property name="visible">True</property>
+        <property name="orientation">vertical</property>
+        <child>
+          <object class="GtkVBox" id="vbox1">
+            <property name="visible">True</property>
+            <property name="border_width">6</property>
+            <property name="orientation">vertical</property>
+            <property name="spacing">6</property>
+            <child>
+              <object class="GtkFrame" id="frame_corefile">
+                <property name="visible">True</property>
+                <property name="label_xalign">0</property>
+                <property name="shadow_type">none</property>
+                <child>
+                  <object class="GtkAlignment" id="alignment2">
+                    <property name="visible">True</property>
+                    <property name="left_padding">12</property>
+                    <child>
+                      <object class="GtkFileChooserButton" id="filechooserbutton_corefile">
+                        <property name="visible">True</property>
+                        <property name="title" translatable="yes">Select A Core File</property>
+                      </object>
+                    </child>
+                  </object>
+                </child>
+                <child type="label">
+                  <object class="GtkLabel" id="label_corefile">
+                    <property name="visible">True</property>
+                    <property name="label" translatable="yes">&lt;b&gt;Core File:&lt;/b&gt;</property>
+                    <property name="use_markup">True</property>
+                  </object>
+                </child>
+              </object>
+              <packing>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkFrame" id="frame_executable">
+                <property name="visible">True</property>
+                <property name="label_xalign">0</property>
+                <property name="shadow_type">none</property>
+                <child>
+                  <object class="GtkAlignment" id="alignment3">
+                    <property name="visible">True</property>
+                    <property name="left_padding">12</property>
+                    <child>
+                      <object class="GtkFileChooserButton" id="filechooserbutton_executable">
+                        <property name="visible">True</property>
+                        <property name="title" translatable="yes">Select the executable that created the core file</property>
+                      </object>
+                    </child>
+                  </object>
+                </child>
+                <child type="label">
+                  <object class="GtkLabel" id="label_executable">
+                    <property name="visible">True</property>
+                    <property name="label" translatable="yes">&lt;b&gt;Executable:&lt;/b&gt;</property>
+                    <property name="use_markup">True</property>
+                  </object>
+                </child>
+              </object>
+              <packing>
+                <property name="position">1</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="position">1</property>
+          </packing>
+        </child>
+        <child internal-child="action_area">
+          <object class="GtkHButtonBox" id="dialog-action_area1">
+            <property name="visible">True</property>
+            <property name="layout_style">end</property>
+            <child>
+              <object class="GtkButton" id="cancelbutton">
+                <property name="label">gtk-cancel</property>
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="receives_default">False</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkButton" id="okbutton">
+                <property name="label">gtk-ok</property>
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="receives_default">False</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="pack_type">end</property>
+            <property name="position">0</property>
+          </packing>
+        </child>
+      </object>
+    </child>
+    <action-widgets>
+      <action-widget response="-6">cancelbutton</action-widget>
+      <action-widget response="-5">okbutton</action-widget>
+    </action-widgets>
+  </object>
+</interface>
diff --git a/src/persp/dbgperspective/ui/openfiledialog.ui b/src/persp/dbgperspective/ui/openfiledialog.ui
new file mode 100644
index 0000000..6de73e2
--- /dev/null
+++ b/src/persp/dbgperspective/ui/openfiledialog.ui
@@ -0,0 +1,150 @@
+<?xml version="1.0"?>
+<interface>
+  <!-- interface-requires gtk+ 2.6 -->
+  <!-- interface-naming-policy toplevel-contextual -->
+  <object class="GtkDialog" id="dialog_open_source_file">
+    <property name="visible">True</property>
+    <property name="title" translatable="yes">Open Source Files</property>
+    <property name="default_width">500</property>
+    <property name="default_height">400</property>
+    <property name="type_hint">dialog</property>
+    <property name="has_separator">False</property>
+    <child internal-child="vbox">
+      <object class="GtkVBox" id="dialog-vbox1">
+        <property name="visible">True</property>
+        <property name="orientation">vertical</property>
+        <child>
+          <object class="GtkVBox" id="vbox1">
+            <property name="visible">True</property>
+            <property name="border_width">6</property>
+            <property name="orientation">vertical</property>
+            <property name="spacing">6</property>
+            <child>
+              <object class="GtkFrame" id="frame1">
+                <property name="visible">True</property>
+                <property name="label_xalign">0</property>
+                <property name="shadow_type">none</property>
+                <child>
+                  <object class="GtkAlignment" id="alignment1">
+                    <property name="visible">True</property>
+                    <property name="top_padding">6</property>
+                    <property name="left_padding">12</property>
+                    <child>
+                      <object class="GtkVBox" id="vbox2">
+                        <property name="visible">True</property>
+                        <property name="orientation">vertical</property>
+                        <child>
+                          <object class="GtkRadioButton" id="radiobutton_target">
+                            <property name="label" translatable="yes">Select from _Target Executable</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="use_underline">True</property>
+                            <property name="draw_indicator">True</property>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">0</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkRadioButton" id="radiobutton_other">
+                            <property name="label" translatable="yes">Select from _Filesystem</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="use_underline">True</property>
+                            <property name="draw_indicator">True</property>
+                            <property name="group">radiobutton_target</property>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">1</property>
+                          </packing>
+                        </child>
+                      </object>
+                    </child>
+                  </object>
+                </child>
+                <child type="label">
+                  <object class="GtkLabel" id="label2">
+                    <property name="visible">True</property>
+                    <property name="label" translatable="yes">&lt;b&gt;Choose Source Files to Open&lt;/b&gt;</property>
+                    <property name="use_markup">True</property>
+                  </object>
+                </child>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkVBox" id="vbox_file_list">
+                <property name="visible">True</property>
+                <property name="orientation">vertical</property>
+                <child>
+                  <placeholder/>
+                </child>
+              </object>
+              <packing>
+                <property name="position">1</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="position">1</property>
+          </packing>
+        </child>
+        <child internal-child="action_area">
+          <object class="GtkHButtonBox" id="dialog-action_area1">
+            <property name="visible">True</property>
+            <property name="layout_style">end</property>
+            <child>
+              <object class="GtkButton" id="cancelbutton">
+                <property name="label">gtk-cancel</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="can_default">True</property>
+                <property name="receives_default">False</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkButton" id="okbutton">
+                <property name="label">gtk-ok</property>
+                <property name="visible">True</property>
+                <property name="sensitive">False</property>
+                <property name="can_focus">True</property>
+                <property name="can_default">True</property>
+                <property name="receives_default">False</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="pack_type">end</property>
+            <property name="position">0</property>
+          </packing>
+        </child>
+      </object>
+    </child>
+    <action-widgets>
+      <action-widget response="-6">cancelbutton</action-widget>
+      <action-widget response="-5">okbutton</action-widget>
+    </action-widgets>
+  </object>
+</interface>
diff --git a/src/persp/dbgperspective/ui/preferencesdialog.ui b/src/persp/dbgperspective/ui/preferencesdialog.ui
new file mode 100644
index 0000000..01c6661
--- /dev/null
+++ b/src/persp/dbgperspective/ui/preferencesdialog.ui
@@ -0,0 +1,748 @@
+<?xml version="1.0"?>
+<interface>
+  <!-- interface-requires gtk+ 2.6 -->
+  <!-- interface-naming-policy toplevel-contextual -->
+  <object class="GtkDialog" id="preferencesdialog">
+    <property name="visible">True</property>
+    <property name="title" translatable="yes">Preferences</property>
+    <property name="default_width">400</property>
+    <property name="default_height">300</property>
+    <property name="type_hint">dialog</property>
+    <property name="skip_taskbar_hint">True</property>
+    <property name="has_separator">False</property>
+    <child internal-child="vbox">
+      <object class="GtkVBox" id="dialog-vbox1">
+        <property name="visible">True</property>
+        <property name="orientation">vertical</property>
+        <child>
+          <object class="GtkNotebook" id="rootnotebook">
+            <property name="visible">True</property>
+            <property name="can_focus">True</property>
+            <property name="border_width">6</property>
+            <child>
+              <object class="GtkVBox" id="vbox3">
+                <property name="visible">True</property>
+                <property name="border_width">6</property>
+                <property name="orientation">vertical</property>
+                <property name="spacing">12</property>
+                <child>
+                  <object class="GtkFrame" id="frame3">
+                    <property name="visible">True</property>
+                    <property name="label_xalign">0</property>
+                    <property name="shadow_type">none</property>
+                    <child>
+                      <object class="GtkAlignment" id="alignment3">
+                        <property name="visible">True</property>
+                        <property name="top_padding">6</property>
+                        <property name="left_padding">12</property>
+                        <child>
+                          <object class="GtkVBox" id="vbox4">
+                            <property name="visible">True</property>
+                            <property name="orientation">vertical</property>
+                            <property name="spacing">6</property>
+                            <child>
+                              <object class="GtkCheckButton" id="systemfontcheckbutton">
+                                <property name="label" translatable="yes">Use system monospace font</property>
+                                <property name="visible">True</property>
+                                <property name="can_focus">True</property>
+                                <property name="receives_default">False</property>
+                                <property name="use_underline">True</property>
+                                <property name="active">True</property>
+                                <property name="draw_indicator">True</property>
+                              </object>
+                              <packing>
+                                <property name="expand">False</property>
+                                <property name="fill">False</property>
+                                <property name="position">0</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkHBox" id="customfonthbox">
+                                <property name="visible">True</property>
+                                <property name="sensitive">False</property>
+                                <property name="spacing">6</property>
+                                <child>
+                                  <object class="GtkLabel" id="label7">
+                                    <property name="visible">True</property>
+                                    <property name="label" translatable="yes">Custom Font:</property>
+                                  </object>
+                                  <packing>
+                                    <property name="expand">False</property>
+                                    <property name="fill">False</property>
+                                    <property name="position">0</property>
+                                  </packing>
+                                </child>
+                                <child>
+                                  <object class="GtkFontButton" id="customfontfontbutton">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">True</property>
+                                    <property name="receives_default">False</property>
+                                  </object>
+                                  <packing>
+                                    <property name="position">1</property>
+                                  </packing>
+                                </child>
+                              </object>
+                              <packing>
+                                <property name="expand">False</property>
+                                <property name="fill">False</property>
+                                <property name="position">1</property>
+                              </packing>
+                            </child>
+                          </object>
+                        </child>
+                      </object>
+                    </child>
+                    <child type="label">
+                      <object class="GtkLabel" id="label6">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">&lt;b&gt;Editor Font&lt;/b&gt;</property>
+                        <property name="use_markup">True</property>
+                      </object>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="fill">False</property>
+                    <property name="position">0</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkFrame" id="frame5">
+                    <property name="visible">True</property>
+                    <property name="label_xalign">0</property>
+                    <property name="shadow_type">none</property>
+                    <child>
+                      <object class="GtkAlignment" id="alignment6">
+                        <property name="visible">True</property>
+                        <property name="top_padding">6</property>
+                        <property name="left_padding">12</property>
+                        <child>
+                          <object class="GtkComboBox" id="editorstylecombobox">
+                            <property name="visible">True</property>
+                          </object>
+                        </child>
+                      </object>
+                    </child>
+                    <child type="label">
+                      <object class="GtkLabel" id="label2">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">&lt;b&gt;Visual Style&lt;/b&gt;</property>
+                        <property name="use_markup">True</property>
+                      </object>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="position">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkFrame" id="frame1">
+                    <property name="visible">True</property>
+                    <property name="label_xalign">0</property>
+                    <property name="shadow_type">none</property>
+                    <child>
+                      <object class="GtkAlignment" id="alignment1">
+                        <property name="visible">True</property>
+                        <property name="top_padding">6</property>
+                        <property name="left_padding">12</property>
+                        <child>
+                          <object class="GtkCheckButton" id="showlinescheckbutton">
+                            <property name="label" translatable="yes">Display line numbers</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="use_underline">True</property>
+                            <property name="active">True</property>
+                            <property name="draw_indicator">True</property>
+                          </object>
+                        </child>
+                      </object>
+                    </child>
+                    <child type="label">
+                      <object class="GtkLabel" id="label4">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">&lt;b&gt;Line Numbers&lt;/b&gt;</property>
+                        <property name="use_markup">True</property>
+                      </object>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="fill">False</property>
+                    <property name="position">2</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkFrame" id="frame6">
+                    <property name="visible">True</property>
+                    <property name="label_xalign">0</property>
+                    <property name="shadow_type">none</property>
+                    <child>
+                      <object class="GtkAlignment" id="alignment7">
+                        <property name="visible">True</property>
+                        <property name="top_padding">6</property>
+                        <property name="left_padding">12</property>
+                        <child>
+                          <object class="GtkCheckButton" id="launchterminalcheckbutton">
+                            <property name="label" translatable="yes">Use launch terminal</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="use_underline">True</property>
+                            <property name="draw_indicator">True</property>
+                          </object>
+                        </child>
+                      </object>
+                    </child>
+                    <child type="label">
+                      <object class="GtkLabel" id="label10">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">&lt;b&gt;Terminal&lt;/b&gt;</property>
+                        <property name="use_markup">True</property>
+                      </object>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="fill">False</property>
+                    <property name="position">3</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkFrame" id="frame4">
+                    <property name="visible">True</property>
+                    <property name="label_xalign">0</property>
+                    <property name="shadow_type">none</property>
+                    <child>
+                      <object class="GtkAlignment" id="alignment4">
+                        <property name="visible">True</property>
+                        <property name="top_padding">6</property>
+                        <property name="left_padding">12</property>
+                        <child>
+                          <object class="GtkVBox" id="vbox5">
+                            <property name="visible">True</property>
+                            <property name="orientation">vertical</property>
+                            <child>
+                              <object class="GtkLabel" id="label9">
+                                <property name="visible">True</property>
+                                <property name="xalign">0</property>
+                                <property name="label" translatable="yes">When a source file is changed:</property>
+                              </object>
+                              <packing>
+                                <property name="expand">False</property>
+                                <property name="fill">False</property>
+                                <property name="position">0</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkAlignment" id="alignment5">
+                                <property name="visible">True</property>
+                                <property name="top_padding">6</property>
+                                <property name="left_padding">6</property>
+                                <child>
+                                  <object class="GtkVBox" id="vbox6">
+                                    <property name="visible">True</property>
+                                    <property name="orientation">vertical</property>
+                                    <child>
+                                      <object class="GtkRadioButton" id="reloadradiobutton">
+                                        <property name="label" translatable="yes">Reload the file</property>
+                                        <property name="visible">True</property>
+                                        <property name="can_focus">True</property>
+                                        <property name="receives_default">False</property>
+                                        <property name="use_underline">True</property>
+                                        <property name="draw_indicator">True</property>
+                                      </object>
+                                      <packing>
+                                        <property name="expand">False</property>
+                                        <property name="fill">False</property>
+                                        <property name="position">0</property>
+                                      </packing>
+                                    </child>
+                                    <child>
+                                      <object class="GtkRadioButton" id="neverreloadradiobutton">
+                                        <property name="label" translatable="yes">Do not reload the file</property>
+                                        <property name="visible">True</property>
+                                        <property name="can_focus">True</property>
+                                        <property name="receives_default">False</property>
+                                        <property name="use_underline">True</property>
+                                        <property name="draw_indicator">True</property>
+                                        <property name="group">reloadradiobutton</property>
+                                      </object>
+                                      <packing>
+                                        <property name="expand">False</property>
+                                        <property name="fill">False</property>
+                                        <property name="position">1</property>
+                                      </packing>
+                                    </child>
+                                    <child>
+                                      <object class="GtkRadioButton" id="confirmreloadradiobutton">
+                                        <property name="label" translatable="yes">Ask each time</property>
+                                        <property name="visible">True</property>
+                                        <property name="can_focus">True</property>
+                                        <property name="receives_default">False</property>
+                                        <property name="use_underline">True</property>
+                                        <property name="draw_indicator">True</property>
+                                        <property name="group">reloadradiobutton</property>
+                                      </object>
+                                      <packing>
+                                        <property name="expand">False</property>
+                                        <property name="fill">False</property>
+                                        <property name="position">2</property>
+                                      </packing>
+                                    </child>
+                                  </object>
+                                </child>
+                              </object>
+                              <packing>
+                                <property name="expand">False</property>
+                                <property name="fill">False</property>
+                                <property name="position">1</property>
+                              </packing>
+                            </child>
+                          </object>
+                        </child>
+                      </object>
+                    </child>
+                    <child type="label">
+                      <object class="GtkLabel" id="label8">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">&lt;b&gt;File Monitoring&lt;/b&gt;</property>
+                        <property name="use_markup">True</property>
+                      </object>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="position">4</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkFrame" id="frame2">
+                    <property name="visible">True</property>
+                    <property name="label_xalign">0</property>
+                    <property name="shadow_type">none</property>
+                    <child>
+                      <object class="GtkAlignment" id="alignment2">
+                        <property name="visible">True</property>
+                        <property name="top_padding">6</property>
+                        <property name="left_padding">12</property>
+                        <child>
+                          <object class="GtkCheckButton" id="highlightsourcecheckbutton">
+                            <property name="label" translatable="yes">Enable syntax highlighting</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="use_underline">True</property>
+                            <property name="active">True</property>
+                            <property name="draw_indicator">True</property>
+                          </object>
+                        </child>
+                      </object>
+                    </child>
+                    <child type="label">
+                      <object class="GtkLabel" id="label5">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">&lt;b&gt;Syntax Highlighting&lt;/b&gt;</property>
+                        <property name="use_markup">True</property>
+                      </object>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="fill">False</property>
+                    <property name="position">5</property>
+                  </packing>
+                </child>
+              </object>
+            </child>
+            <child type="tab">
+              <object class="GtkLabel" id="label3">
+                <property name="visible">True</property>
+                <property name="label" translatable="yes">Editor</property>
+              </object>
+              <packing>
+                <property name="tab_fill">False</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkVBox" id="vbox1">
+                <property name="visible">True</property>
+                <property name="border_width">6</property>
+                <property name="orientation">vertical</property>
+                <child>
+                  <object class="GtkHBox" id="hbox1">
+                    <property name="visible">True</property>
+                    <property name="spacing">6</property>
+                    <child>
+                      <object class="GtkScrolledWindow" id="scrolledwindow1">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="hscrollbar_policy">automatic</property>
+                        <property name="vscrollbar_policy">automatic</property>
+                        <property name="shadow_type">in</property>
+                        <child>
+                          <object class="GtkTreeView" id="dirstreeview">
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                          </object>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="position">0</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkVBox" id="vbox2">
+                        <property name="visible">True</property>
+                        <property name="orientation">vertical</property>
+                        <property name="spacing">6</property>
+                        <child>
+                          <object class="GtkButton" id="adddirbutton">
+                            <property name="label">gtk-add</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="use_stock">True</property>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">0</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkButton" id="suppressdirbutton">
+                            <property name="label">gtk-remove</property>
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="receives_default">False</property>
+                            <property name="use_stock">True</property>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">1</property>
+                          </packing>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="expand">False</property>
+                        <property name="fill">False</property>
+                        <property name="position">1</property>
+                      </packing>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="position">0</property>
+                  </packing>
+                </child>
+              </object>
+              <packing>
+                <property name="position">1</property>
+              </packing>
+            </child>
+            <child type="tab">
+              <object class="GtkLabel" id="label1">
+                <property name="visible">True</property>
+                <property name="label" translatable="yes">Source Directories</property>
+              </object>
+              <packing>
+                <property name="position">1</property>
+                <property name="tab_fill">False</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkVBox" id="vbox7">
+                <property name="visible">True</property>
+                <property name="border_width">6</property>
+                <property name="orientation">vertical</property>
+                <property name="spacing">12</property>
+                <child>
+                  <object class="GtkFrame" id="frame7">
+                    <property name="visible">True</property>
+                    <property name="label_xalign">0</property>
+                    <property name="shadow_type">none</property>
+                    <child>
+                      <object class="GtkAlignment" id="alignment8">
+                        <property name="visible">True</property>
+                        <property name="top_padding">6</property>
+                        <property name="left_padding">12</property>
+                        <child>
+                          <object class="GtkVBox" id="vbox8">
+                            <property name="visible">True</property>
+                            <property name="orientation">vertical</property>
+                            <child>
+                              <object class="GtkRadioButton" id="pureasmradio">
+                                <property name="label" translatable="yes">Pure assembly</property>
+                                <property name="visible">True</property>
+                                <property name="can_focus">True</property>
+                                <property name="receives_default">False</property>
+                                <property name="use_underline">True</property>
+                                <property name="draw_indicator">True</property>
+                              </object>
+                              <packing>
+                                <property name="expand">False</property>
+                                <property name="fill">False</property>
+                                <property name="position">0</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkRadioButton" id="mixedasmradio">
+                                <property name="label" translatable="yes">Mixed source and assembly</property>
+                                <property name="visible">True</property>
+                                <property name="can_focus">True</property>
+                                <property name="receives_default">False</property>
+                                <property name="use_underline">True</property>
+                                <property name="draw_indicator">True</property>
+                                <property name="group">pureasmradio</property>
+                              </object>
+                              <packing>
+                                <property name="expand">False</property>
+                                <property name="fill">False</property>
+                                <property name="position">1</property>
+                              </packing>
+                            </child>
+                          </object>
+                        </child>
+                      </object>
+                    </child>
+                    <child type="label">
+                      <object class="GtkLabel" id="label12">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">&lt;b&gt;Assembly style&lt;/b&gt;</property>
+                        <property name="use_markup">True</property>
+                      </object>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="fill">False</property>
+                    <property name="position">0</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkFrame" id="frame8">
+                    <property name="visible">True</property>
+                    <property name="label_xalign">0</property>
+                    <property name="shadow_type">none</property>
+                    <child>
+                      <object class="GtkAlignment" id="alignment9">
+                        <property name="visible">True</property>
+                        <property name="top_padding">6</property>
+                        <property name="left_padding">12</property>
+                        <child>
+                          <object class="GtkTable" id="table1">
+                            <property name="visible">True</property>
+                            <property name="n_columns">2</property>
+                            <property name="column_spacing">6</property>
+                            <property name="row_spacing">6</property>
+                            <child>
+                              <object class="GtkSpinButton" id="defaultnumasmspin">
+                                <property name="visible">True</property>
+                                <property name="can_focus">True</property>
+                                <property name="climb_rate">1</property>
+                                <property name="numeric">True</property>
+                              </object>
+                              <packing>
+                                <property name="left_attach">1</property>
+                                <property name="right_attach">2</property>
+                                <property name="y_options"></property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkLabel" id="label14">
+                                <property name="visible">True</property>
+                                <property name="xalign">0</property>
+                                <property name="label" translatable="yes">Number of instructions to disassemble by default</property>
+                              </object>
+                              <packing>
+                                <property name="x_options">GTK_FILL</property>
+                                <property name="y_options"></property>
+                              </packing>
+                            </child>
+                          </object>
+                        </child>
+                      </object>
+                    </child>
+                    <child type="label">
+                      <object class="GtkLabel" id="label13">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">&lt;b&gt;Instructions&lt;/b&gt;</property>
+                        <property name="use_markup">True</property>
+                      </object>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="fill">False</property>
+                    <property name="position">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkFrame" id="frame9">
+                    <property name="visible">True</property>
+                    <property name="label_xalign">0</property>
+                    <property name="shadow_type">none</property>
+                    <child>
+                      <object class="GtkAlignment" id="alignment10">
+                        <property name="visible">True</property>
+                        <property name="top_padding">6</property>
+                        <property name="left_padding">12</property>
+                        <child>
+                          <object class="GtkTable" id="table2">
+                            <property name="visible">True</property>
+                            <property name="n_columns">2</property>
+                            <property name="column_spacing">6</property>
+                            <property name="row_spacing">6</property>
+                            <child>
+                              <object class="GtkFileChooserButton" id="pathtogdbfilechooser">
+                                <property name="visible">True</property>
+                                <property name="title" translatable="yes">Choose a file</property>
+                              </object>
+                              <packing>
+                                <property name="left_attach">1</property>
+                                <property name="right_attach">2</property>
+                                <property name="y_options">GTK_FILL</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkLabel" id="label16">
+                                <property name="visible">True</property>
+                                <property name="xalign">0</property>
+                                <property name="label" translatable="yes">Path to the GDB binary used</property>
+                              </object>
+                              <packing>
+                                <property name="x_options">GTK_FILL</property>
+                                <property name="y_options"></property>
+                              </packing>
+                            </child>
+                          </object>
+                        </child>
+                      </object>
+                    </child>
+                    <child type="label">
+                      <object class="GtkLabel" id="label15">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">&lt;b&gt;GDB binary&lt;/b&gt;</property>
+                        <property name="use_markup">True</property>
+                      </object>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="position">2</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkFrame" id="frame10">
+                    <property name="visible">True</property>
+                    <property name="label_xalign">0</property>
+                    <property name="shadow_type">none</property>
+                    <child>
+                      <object class="GtkAlignment" id="alignment11">
+                        <property name="visible">True</property>
+                        <property name="top_padding">6</property>
+                        <property name="left_padding">12</property>
+                        <child>
+                          <object class="GtkVBox" id="vbox9">
+                            <property name="visible">True</property>
+                            <property name="orientation">vertical</property>
+                            <child>
+                              <object class="GtkRadioButton" id="followparentradio">
+                                <property name="label" translatable="yes">Follow parent</property>
+                                <property name="visible">True</property>
+                                <property name="can_focus">True</property>
+                                <property name="receives_default">False</property>
+                                <property name="use_underline">True</property>
+                                <property name="draw_indicator">True</property>
+                              </object>
+                              <packing>
+                                <property name="expand">False</property>
+                                <property name="fill">False</property>
+                                <property name="position">0</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkRadioButton" id="followchildradio">
+                                <property name="label" translatable="yes">Follow child</property>
+                                <property name="visible">True</property>
+                                <property name="can_focus">True</property>
+                                <property name="receives_default">False</property>
+                                <property name="use_underline">True</property>
+                                <property name="draw_indicator">True</property>
+                                <property name="group">followparentradio</property>
+                              </object>
+                              <packing>
+                                <property name="expand">False</property>
+                                <property name="fill">False</property>
+                                <property name="position">1</property>
+                              </packing>
+                            </child>
+                          </object>
+                        </child>
+                      </object>
+                    </child>
+                    <child type="label">
+                      <object class="GtkLabel" id="label17">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">&lt;b&gt;GDB follow fork mode&lt;/b&gt;</property>
+                        <property name="use_markup">True</property>
+                      </object>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="position">3</property>
+                  </packing>
+                </child>
+              </object>
+              <packing>
+                <property name="position">2</property>
+              </packing>
+            </child>
+            <child type="tab">
+              <object class="GtkLabel" id="label11">
+                <property name="visible">True</property>
+                <property name="label" translatable="yes">Debugger</property>
+              </object>
+              <packing>
+                <property name="position">2</property>
+                <property name="tab_fill">False</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="position">1</property>
+          </packing>
+        </child>
+        <child internal-child="action_area">
+          <object class="GtkHButtonBox" id="dialog-action_area1">
+            <property name="visible">True</property>
+            <property name="layout_style">end</property>
+            <child>
+              <object class="GtkButton" id="okbutton1">
+                <property name="label">gtk-close</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="can_default">True</property>
+                <property name="receives_default">False</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="pack_type">end</property>
+            <property name="position">0</property>
+          </packing>
+        </child>
+      </object>
+    </child>
+    <action-widgets>
+      <action-widget response="-7">okbutton1</action-widget>
+    </action-widgets>
+  </object>
+</interface>
diff --git a/src/persp/dbgperspective/ui/proclistdialog.ui b/src/persp/dbgperspective/ui/proclistdialog.ui
new file mode 100644
index 0000000..ad4c403
--- /dev/null
+++ b/src/persp/dbgperspective/ui/proclistdialog.ui
@@ -0,0 +1,139 @@
+<?xml version="1.0"?>
+<interface>
+  <!-- interface-requires gtk+ 2.6 -->
+  <!-- interface-naming-policy toplevel-contextual -->
+  <object class="GtkDialog" id="proclistdialog">
+    <property name="visible">True</property>
+    <property name="border_width">6</property>
+    <property name="title" translatable="yes">Attach to a Running Program</property>
+    <property name="default_width">500</property>
+    <property name="default_height">500</property>
+    <property name="type_hint">dialog</property>
+    <property name="has_separator">False</property>
+    <child internal-child="vbox">
+      <object class="GtkVBox" id="dialog-vbox1">
+        <property name="visible">True</property>
+        <property name="orientation">vertical</property>
+        <child>
+          <object class="GtkVBox" id="vbox1">
+            <property name="visible">True</property>
+            <property name="border_width">6</property>
+            <property name="orientation">vertical</property>
+            <property name="spacing">6</property>
+            <child>
+              <object class="GtkLabel" id="label1">
+                <property name="visible">True</property>
+                <property name="xalign">0</property>
+                <property name="label" translatable="yes">&lt;b&gt;Choose a Process to Debug&lt;/b&gt;</property>
+                <property name="use_markup">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkScrolledWindow" id="scrolledwindow1">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="shadow_type">in</property>
+                <child>
+                  <object class="GtkTreeView" id="proclisttreeview">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="reorderable">True</property>
+                  </object>
+                </child>
+              </object>
+              <packing>
+                <property name="position">1</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkHBox" id="hbox1">
+                <property name="visible">True</property>
+                <property name="spacing">6</property>
+                <child>
+                  <object class="GtkLabel" id="label2">
+                    <property name="visible">True</property>
+                    <property name="label" translatable="yes">_Filter list:</property>
+                    <property name="use_underline">True</property>
+                    <property name="mnemonic_widget">entry_filter</property>
+                  </object>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="fill">False</property>
+                    <property name="position">0</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkEntry" id="entry_filter">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="has_focus">True</property>
+                    <property name="invisible_char">&#x25CF;</property>
+                  </object>
+                  <packing>
+                    <property name="position">1</property>
+                  </packing>
+                </child>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="position">2</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="position">1</property>
+          </packing>
+        </child>
+        <child internal-child="action_area">
+          <object class="GtkHButtonBox" id="dialog-action_area1">
+            <property name="visible">True</property>
+            <property name="layout_style">end</property>
+            <child>
+              <object class="GtkButton" id="cancelbutton1">
+                <property name="label">gtk-cancel</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="can_default">True</property>
+                <property name="receives_default">False</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkButton" id="okbutton">
+                <property name="label">gtk-ok</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="can_default">True</property>
+                <property name="receives_default">False</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="pack_type">end</property>
+            <property name="position">0</property>
+          </packing>
+        </child>
+      </object>
+    </child>
+    <action-widgets>
+      <action-widget response="-6">cancelbutton1</action-widget>
+      <action-widget response="-5">okbutton</action-widget>
+    </action-widgets>
+  </object>
+</interface>
diff --git a/src/persp/dbgperspective/glade/remotetargetdialog.glade b/src/persp/dbgperspective/ui/remotetargetdialog.ui
similarity index 73%
rename from src/persp/dbgperspective/glade/remotetargetdialog.glade
rename to src/persp/dbgperspective/ui/remotetargetdialog.ui
index b0f6902..9c8e74c 100644
--- a/src/persp/dbgperspective/glade/remotetargetdialog.glade
+++ b/src/persp/dbgperspective/ui/remotetargetdialog.ui
@@ -1,62 +1,65 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
-<!--*- mode: xml -*-->
-<glade-interface>
-  <widget class="GtkDialog" id="remotetargetdialog">
+<?xml version="1.0"?>
+<interface>
+  <!-- interface-requires gtk+ 2.6 -->
+  <!-- interface-naming-policy toplevel-contextual -->
+  <object class="GtkDialog" id="remotetargetdialog">
     <property name="visible">True</property>
     <property name="title" translatable="yes">Connect to Remote Target</property>
     <property name="resizable">False</property>
     <property name="modal">True</property>
     <property name="default_width">300</property>
     <property name="default_height">300</property>
-    <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
+    <property name="type_hint">dialog</property>
     <property name="has_separator">False</property>
     <child internal-child="vbox">
-      <widget class="GtkVBox" id="dialog-vbox1">
+      <object class="GtkVBox" id="dialog-vbox1">
         <property name="visible">True</property>
+        <property name="orientation">vertical</property>
         <property name="spacing">6</property>
         <child>
-          <widget class="GtkVBox" id="vbox1">
+          <object class="GtkVBox" id="vbox1">
             <property name="visible">True</property>
             <property name="border_width">6</property>
+            <property name="orientation">vertical</property>
             <property name="spacing">6</property>
             <child>
-              <widget class="GtkLabel" id="label1">
+              <object class="GtkLabel" id="label1">
                 <property name="visible">True</property>
                 <property name="xalign">0</property>
                 <property name="label" translatable="yes">&lt;b&gt;Executable to Load&lt;/b&gt;</property>
                 <property name="use_markup">True</property>
                 <property name="single_line_mode">True</property>
-              </widget>
+              </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">False</property>
+                <property name="position">0</property>
               </packing>
             </child>
             <child>
-              <widget class="GtkAlignment" id="alignment2">
+              <object class="GtkAlignment" id="alignment2">
                 <property name="visible">True</property>
                 <property name="border_width">6</property>
                 <child>
-                  <widget class="GtkFileChooserButton" id="execfilechooserbutton">
+                  <object class="GtkFileChooserButton" id="execfilechooserbutton">
                     <property name="visible">True</property>
                     <property name="title" translatable="yes">Choose a File</property>
-                  </widget>
+                  </object>
                 </child>
-              </widget>
+              </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="position">1</property>
               </packing>
             </child>
             <child>
-              <widget class="GtkLabel" id="solibprefixlabesolibprefixlabel">
+              <object class="GtkLabel" id="solibprefixlabesolibprefixlabel">
                 <property name="visible">True</property>
                 <property name="xalign">0</property>
                 <property name="label" translatable="yes">&lt;b&gt;Shared Libraries Location&lt;/b&gt;</property>
                 <property name="use_markup">True</property>
                 <property name="single_line_mode">True</property>
-              </widget>
+              </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">False</property>
@@ -64,28 +67,28 @@
               </packing>
             </child>
             <child>
-              <widget class="GtkAlignment" id="alignmentfoo">
+              <object class="GtkAlignment" id="alignmentfoo">
                 <property name="visible">True</property>
                 <property name="border_width">6</property>
                 <child>
-                  <widget class="GtkFileChooserButton" id="solibprefixchooserbutton">
+                  <object class="GtkFileChooserButton" id="solibprefixchooserbutton">
                     <property name="visible">True</property>
                     <property name="title" translatable="yes">Choose a File</property>
-                  </widget>
+                  </object>
                 </child>
-              </widget>
+              </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="position">3</property>
               </packing>
             </child>
             <child>
-              <widget class="GtkLabel" id="label2">
+              <object class="GtkLabel" id="label2">
                 <property name="visible">True</property>
                 <property name="xalign">0</property>
                 <property name="label" translatable="yes">&lt;b&gt;Remote Debugging Server&lt;/b&gt;</property>
                 <property name="use_markup">True</property>
-              </widget>
+              </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">False</property>
@@ -93,41 +96,43 @@
               </packing>
             </child>
             <child>
-              <widget class="GtkAlignment" id="alignment3">
+              <object class="GtkAlignment" id="alignment3">
                 <property name="visible">True</property>
                 <property name="border_width">6</property>
                 <child>
-                  <widget class="GtkVBox" id="vbox2">
+                  <object class="GtkVBox" id="vbox2">
                     <property name="visible">True</property>
+                    <property name="orientation">vertical</property>
                     <child>
-                      <widget class="GtkRadioButton" id="tcpradiobutton">
+                      <object class="GtkRadioButton" id="tcpradiobutton">
+                        <property name="label" translatable="yes">TCP/IP Connection</property>
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
-                        <property name="label" translatable="yes">TCP/IP Connection</property>
+                        <property name="receives_default">False</property>
                         <property name="use_underline">True</property>
-                        <property name="response_id">0</property>
                         <property name="draw_indicator">True</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
+                        <property name="position">0</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkAlignment" id="tcpconnectioncontainer">
+                      <object class="GtkAlignment" id="tcpconnectioncontainer">
                         <property name="visible">True</property>
                         <property name="border_width">6</property>
                         <child>
-                          <widget class="GtkTable" id="table2">
+                          <object class="GtkTable" id="table2">
                             <property name="visible">True</property>
                             <property name="n_columns">4</property>
                             <property name="column_spacing">6</property>
                             <property name="row_spacing">6</property>
                             <child>
-                              <widget class="GtkEntry" id="portentry">
+                              <object class="GtkEntry" id="portentry">
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="left_attach">3</property>
                                 <property name="right_attach">4</property>
@@ -136,11 +141,11 @@
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkLabel" id="label6">
+                              <object class="GtkLabel" id="label6">
                                 <property name="visible">True</property>
                                 <property name="xalign">0</property>
                                 <property name="label" translatable="yes">Port :</property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="left_attach">2</property>
                                 <property name="right_attach">3</property>
@@ -149,44 +154,44 @@
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkLabel" id="label5">
+                              <object class="GtkLabel" id="label5">
                                 <property name="visible">True</property>
                                 <property name="xalign">0</property>
                                 <property name="label" translatable="yes">Address :</property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="x_options"></property>
                                 <property name="y_options"></property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkEntry" id="addressentry">
+                              <object class="GtkEntry" id="addressentry">
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="left_attach">1</property>
                                 <property name="right_attach">2</property>
                                 <property name="y_options"></property>
                               </packing>
                             </child>
-                          </widget>
+                          </object>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="position">1</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkRadioButton" id="serialradiobutton">
+                      <object class="GtkRadioButton" id="serialradiobutton">
+                        <property name="label" translatable="yes">Serial Line Connection</property>
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
-                        <property name="label" translatable="yes">Serial Line Connection</property>
+                        <property name="receives_default">False</property>
                         <property name="use_underline">True</property>
-                        <property name="response_id">0</property>
                         <property name="draw_indicator">True</property>
                         <property name="group">tcpradiobutton</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
@@ -194,65 +199,77 @@
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkAlignment" id="serialconnectioncontainer">
+                      <object class="GtkAlignment" id="serialconnectioncontainer">
                         <property name="visible">True</property>
                         <property name="border_width">6</property>
                         <child>
-                          <widget class="GtkFileChooserButton" id="serialchooserbutton">
+                          <object class="GtkFileChooserButton" id="serialchooserbutton">
                             <property name="visible">True</property>
-                          </widget>
+                          </object>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="position">3</property>
                       </packing>
                     </child>
-                  </widget>
+                  </object>
                 </child>
-              </widget>
+              </object>
               <packing>
                 <property name="position">5</property>
               </packing>
             </child>
-          </widget>
+          </object>
           <packing>
             <property name="position">1</property>
           </packing>
         </child>
         <child internal-child="action_area">
-          <widget class="GtkHButtonBox" id="dialog-action_area1">
+          <object class="GtkHButtonBox" id="dialog-action_area1">
             <property name="visible">True</property>
-            <property name="layout_style">GTK_BUTTONBOX_END</property>
+            <property name="layout_style">end</property>
             <child>
-              <widget class="GtkButton" id="cancelbutton">
+              <object class="GtkButton" id="cancelbutton">
+                <property name="label">gtk-cancel</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <property name="can_default">True</property>
-                <property name="label">gtk-cancel</property>
+                <property name="receives_default">False</property>
                 <property name="use_stock">True</property>
-                <property name="response_id">-6</property>
-              </widget>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
+              </packing>
             </child>
             <child>
-              <widget class="GtkButton" id="okbutton">
+              <object class="GtkButton" id="okbutton">
+                <property name="label">gtk-ok</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <property name="can_default">True</property>
-                <property name="label">gtk-ok</property>
+                <property name="receives_default">False</property>
                 <property name="use_stock">True</property>
-                <property name="response_id">-5</property>
-              </widget>
+              </object>
               <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
                 <property name="position">1</property>
               </packing>
             </child>
-          </widget>
+          </object>
           <packing>
             <property name="expand">False</property>
-            <property name="pack_type">GTK_PACK_END</property>
+            <property name="pack_type">end</property>
+            <property name="position">0</property>
           </packing>
         </child>
-      </widget>
+      </object>
     </child>
-  </widget>
-</glade-interface>
+    <action-widgets>
+      <action-widget response="-6">cancelbutton</action-widget>
+      <action-widget response="-5">okbutton</action-widget>
+    </action-widgets>
+  </object>
+</interface>
diff --git a/src/persp/dbgperspective/ui/runprogramdialog.ui b/src/persp/dbgperspective/ui/runprogramdialog.ui
new file mode 100644
index 0000000..f95d0e2
--- /dev/null
+++ b/src/persp/dbgperspective/ui/runprogramdialog.ui
@@ -0,0 +1,322 @@
+<?xml version="1.0"?>
+<interface>
+  <!-- interface-requires gtk+ 2.6 -->
+  <!-- interface-naming-policy toplevel-contextual -->
+  <object class="GtkDialog" id="runprogramdialog">
+    <property name="width_request">300</property>
+    <property name="title" translatable="yes">Choose a Program to Execute</property>
+    <property name="default_width">350</property>
+    <property name="default_height">400</property>
+    <property name="type_hint">dialog</property>
+    <property name="has_separator">False</property>
+    <child internal-child="vbox">
+      <object class="GtkVBox" id="dialog-vbox1">
+        <property name="visible">True</property>
+        <property name="orientation">vertical</property>
+        <child>
+          <object class="GtkVBox" id="vbox1">
+            <property name="visible">True</property>
+            <property name="border_width">6</property>
+            <property name="orientation">vertical</property>
+            <property name="spacing">6</property>
+            <child>
+              <object class="GtkFrame" id="frame_program">
+                <property name="visible">True</property>
+                <property name="label_xalign">0</property>
+                <property name="shadow_type">none</property>
+                <child>
+                  <object class="GtkAlignment" id="alignment2">
+                    <property name="visible">True</property>
+                    <property name="left_padding">12</property>
+                    <child>
+                      <object class="GtkFileChooserButton" id="filechooserbutton">
+                        <property name="visible">True</property>
+                        <property name="title" translatable="yes">Choose an executable</property>
+                      </object>
+                    </child>
+                  </object>
+                </child>
+                <child type="label">
+                  <object class="GtkLabel" id="label_program">
+                    <property name="visible">True</property>
+                    <property name="label" translatable="yes">&lt;b&gt;Program:&lt;/b&gt;</property>
+                    <property name="use_markup">True</property>
+                  </object>
+                </child>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkFrame" id="frame_arguments">
+                <property name="visible">True</property>
+                <property name="label_xalign">0</property>
+                <property name="shadow_type">none</property>
+                <child>
+                  <object class="GtkAlignment" id="alignment1">
+                    <property name="visible">True</property>
+                    <property name="left_padding">12</property>
+                    <child>
+                      <object class="GtkEntry" id="argumentsentry">
+                        <property name="visible">True</property>
+                      </object>
+                    </child>
+                  </object>
+                </child>
+                <child type="label">
+                  <object class="GtkLabel" id="label_arguments">
+                    <property name="visible">True</property>
+                    <property name="label" translatable="yes">&lt;b&gt;Arguments:&lt;/b&gt;</property>
+                    <property name="use_markup">True</property>
+                  </object>
+                </child>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkFrame" id="frame_workingdir">
+                <property name="visible">True</property>
+                <property name="label_xalign">0</property>
+                <property name="shadow_type">none</property>
+                <child>
+                  <object class="GtkAlignment" id="alignment3">
+                    <property name="visible">True</property>
+                    <property name="left_padding">12</property>
+                    <child>
+                      <object class="GtkFileChooserButton" id="filechooserbutton_workingdir">
+                        <property name="visible">True</property>
+                        <property name="action">select-folder</property>
+                        <property name="title" translatable="yes">Choose a working directory</property>
+                      </object>
+                    </child>
+                  </object>
+                </child>
+                <child type="label">
+                  <object class="GtkLabel" id="label_workingdir">
+                    <property name="visible">True</property>
+                    <property name="label" translatable="yes">&lt;b&gt;Working Directory:&lt;/b&gt;</property>
+                    <property name="use_markup">True</property>
+                  </object>
+                </child>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="position">2</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkFrame" id="frame_environment">
+                <property name="visible">True</property>
+                <property name="label_xalign">0</property>
+                <property name="shadow_type">none</property>
+                <child>
+                  <object class="GtkAlignment" id="alignment4">
+                    <property name="visible">True</property>
+                    <property name="left_padding">12</property>
+                    <child>
+                      <object class="GtkHBox" id="hbox2">
+                        <property name="visible">True</property>
+                        <property name="spacing">6</property>
+                        <child>
+                          <object class="GtkScrolledWindow" id="scrolledwindow1">
+                            <property name="visible">True</property>
+                            <property name="can_focus">False</property>
+                            <property name="hscrollbar_policy">automatic</property>
+                            <property name="vscrollbar_policy">automatic</property>
+                            <property name="shadow_type">out</property>
+                            <child>
+                              <object class="GtkTreeView" id="treeview_environment">
+                                <property name="visible">True</property>
+                              </object>
+                            </child>
+                          </object>
+                          <packing>
+                            <property name="position">0</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkVButtonBox" id="vbuttonbox1">
+                            <property name="visible">True</property>
+                            <property name="spacing">6</property>
+                            <property name="layout_style">start</property>
+                            <child>
+                              <object class="GtkButton" id="button_add_var">
+                                <property name="visible">True</property>
+                                <property name="can_focus">True</property>
+                                <property name="can_default">True</property>
+                                <property name="receives_default">False</property>
+                                <child>
+                                  <object class="GtkAlignment" id="alignment6">
+                                    <property name="visible">True</property>
+                                    <property name="xscale">0</property>
+                                    <property name="yscale">0</property>
+                                    <child>
+                                      <object class="GtkHBox" id="hbox3">
+                                        <property name="visible">True</property>
+                                        <property name="spacing">2</property>
+                                        <child>
+                                          <object class="GtkImage" id="image4">
+                                            <property name="visible">True</property>
+                                            <property name="stock">gtk-add</property>
+                                          </object>
+                                          <packing>
+                                            <property name="expand">False</property>
+                                            <property name="fill">False</property>
+                                            <property name="position">0</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkLabel" id="label2">
+                                            <property name="visible">True</property>
+                                            <property name="label" translatable="yes">_Add</property>
+                                            <property name="use_underline">True</property>
+                                          </object>
+                                          <packing>
+                                            <property name="expand">False</property>
+                                            <property name="fill">False</property>
+                                            <property name="position">1</property>
+                                          </packing>
+                                        </child>
+                                      </object>
+                                    </child>
+                                  </object>
+                                </child>
+                              </object>
+                              <packing>
+                                <property name="expand">False</property>
+                                <property name="fill">False</property>
+                                <property name="position">0</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkButton" id="button_remove_var">
+                                <property name="visible">True</property>
+                                <property name="sensitive">False</property>
+                                <property name="can_focus">True</property>
+                                <property name="can_default">True</property>
+                                <property name="receives_default">False</property>
+                                <child>
+                                  <object class="GtkAlignment" id="alignment7">
+                                    <property name="visible">True</property>
+                                    <property name="xscale">0</property>
+                                    <property name="yscale">0</property>
+                                    <child>
+                                      <object class="GtkHBox" id="hbox4">
+                                        <property name="visible">True</property>
+                                        <property name="spacing">2</property>
+                                        <child>
+                                          <object class="GtkImage" id="image5">
+                                            <property name="visible">True</property>
+                                            <property name="stock">gtk-remove</property>
+                                          </object>
+                                          <packing>
+                                            <property name="expand">False</property>
+                                            <property name="fill">False</property>
+                                            <property name="position">0</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkLabel" id="label3">
+                                            <property name="visible">True</property>
+                                            <property name="label" translatable="yes">_Remove</property>
+                                            <property name="use_underline">True</property>
+                                          </object>
+                                          <packing>
+                                            <property name="expand">False</property>
+                                            <property name="fill">False</property>
+                                            <property name="position">1</property>
+                                          </packing>
+                                        </child>
+                                      </object>
+                                    </child>
+                                  </object>
+                                </child>
+                              </object>
+                              <packing>
+                                <property name="expand">False</property>
+                                <property name="fill">False</property>
+                                <property name="position">1</property>
+                              </packing>
+                            </child>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">1</property>
+                          </packing>
+                        </child>
+                      </object>
+                    </child>
+                  </object>
+                </child>
+                <child type="label">
+                  <object class="GtkLabel" id="label_environment">
+                    <property name="visible">True</property>
+                    <property name="label" translatable="yes">&lt;b&gt;Environment Variables:&lt;/b&gt;</property>
+                    <property name="use_markup">True</property>
+                  </object>
+                </child>
+              </object>
+              <packing>
+                <property name="position">3</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="position">1</property>
+          </packing>
+        </child>
+        <child internal-child="action_area">
+          <object class="GtkHButtonBox" id="dialog-action_area1">
+            <property name="visible">True</property>
+            <property name="layout_style">end</property>
+            <child>
+              <object class="GtkButton" id="button2">
+                <property name="label">gtk-cancel</property>
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="receives_default">False</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkButton" id="executebutton">
+                <property name="label">gtk-execute</property>
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="can_default">True</property>
+                <property name="has_default">True</property>
+                <property name="receives_default">False</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="pack_type">end</property>
+            <property name="position">0</property>
+          </packing>
+        </child>
+      </object>
+    </child>
+    <action-widgets>
+      <action-widget response="-6">button2</action-widget>
+      <action-widget response="-5">executebutton</action-widget>
+    </action-widgets>
+  </object>
+</interface>
diff --git a/src/persp/dbgperspective/ui/savedsessionsdialog.ui b/src/persp/dbgperspective/ui/savedsessionsdialog.ui
new file mode 100644
index 0000000..ed87626
--- /dev/null
+++ b/src/persp/dbgperspective/ui/savedsessionsdialog.ui
@@ -0,0 +1,134 @@
+<?xml version="1.0"?>
+<interface>
+  <!-- interface-requires gtk+ 2.6 -->
+  <!-- interface-naming-policy toplevel-contextual -->
+  <object class="GtkDialog" id="savedsessionsdialog">
+    <property name="width_request">300</property>
+    <property name="height_request">300</property>
+    <property name="visible">True</property>
+    <property name="border_width">6</property>
+    <property name="title" translatable="yes">Saved Sessions</property>
+    <property name="default_width">330</property>
+    <property name="default_height">350</property>
+    <property name="type_hint">dialog</property>
+    <property name="has_separator">False</property>
+    <child internal-child="vbox">
+      <object class="GtkVBox" id="vbox1">
+        <property name="visible">True</property>
+        <property name="orientation">vertical</property>
+        <property name="spacing">6</property>
+        <child>
+          <object class="GtkLabel" id="label1">
+            <property name="visible">True</property>
+            <property name="xalign">0</property>
+            <property name="label" translatable="yes">&lt;b&gt;Choose a Session to Debug&lt;/b&gt;</property>
+            <property name="use_markup">True</property>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="fill">False</property>
+            <property name="position">1</property>
+          </packing>
+        </child>
+        <child>
+          <object class="GtkScrolledWindow" id="scrolledwindow2">
+            <property name="visible">True</property>
+            <property name="can_focus">True</property>
+            <property name="hscrollbar_policy">automatic</property>
+            <property name="vscrollbar_policy">automatic</property>
+            <property name="shadow_type">in</property>
+            <child>
+              <object class="GtkTreeView" id="treeview_sessions">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+              </object>
+            </child>
+          </object>
+          <packing>
+            <property name="position">2</property>
+          </packing>
+        </child>
+        <child internal-child="action_area">
+          <object class="GtkHButtonBox" id="dialog-action_area1">
+            <property name="visible">True</property>
+            <property name="layout_style">end</property>
+            <child>
+              <object class="GtkButton" id="cancelbutton1">
+                <property name="label">gtk-cancel</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="can_default">True</property>
+                <property name="receives_default">False</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkButton" id="okbutton1">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="can_default">True</property>
+                <property name="has_default">True</property>
+                <property name="receives_default">False</property>
+                <child>
+                  <object class="GtkAlignment" id="alignment2">
+                    <property name="visible">True</property>
+                    <property name="xscale">0</property>
+                    <property name="yscale">0</property>
+                    <child>
+                      <object class="GtkHBox" id="hbox2">
+                        <property name="visible">True</property>
+                        <property name="spacing">2</property>
+                        <child>
+                          <object class="GtkImage" id="image2">
+                            <property name="visible">True</property>
+                            <property name="stock">gtk-execute</property>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">0</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkLabel" id="label3">
+                            <property name="visible">True</property>
+                            <property name="label">_Execute</property>
+                            <property name="use_underline">True</property>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">1</property>
+                          </packing>
+                        </child>
+                      </object>
+                    </child>
+                  </object>
+                </child>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="pack_type">end</property>
+            <property name="position">0</property>
+          </packing>
+        </child>
+      </object>
+    </child>
+    <action-widgets>
+      <action-widget response="-6">cancelbutton1</action-widget>
+      <action-widget response="-5">okbutton1</action-widget>
+    </action-widgets>
+  </object>
+</interface>
diff --git a/src/persp/dbgperspective/ui/setbreakpointdialog.ui b/src/persp/dbgperspective/ui/setbreakpointdialog.ui
new file mode 100644
index 0000000..9065f7c
--- /dev/null
+++ b/src/persp/dbgperspective/ui/setbreakpointdialog.ui
@@ -0,0 +1,344 @@
+<?xml version="1.0"?>
+<interface>
+  <!-- interface-requires gtk+ 2.6 -->
+  <!-- interface-naming-policy toplevel-contextual -->
+  <object class="GtkDialog" id="setbreakpointdialog">
+    <property name="visible">True</property>
+    <property name="title" translatable="yes">Set Breakpoint</property>
+    <property name="modal">True</property>
+    <property name="default_width">300</property>
+    <property name="type_hint">dialog</property>
+    <property name="has_separator">False</property>
+    <child internal-child="vbox">
+      <object class="GtkVBox" id="dialog-vbox">
+        <property name="visible">True</property>
+        <property name="orientation">vertical</property>
+        <property name="spacing">6</property>
+        <child>
+          <object class="GtkVBox" id="vbox3">
+            <property name="visible">True</property>
+            <property name="border_width">6</property>
+            <property name="orientation">vertical</property>
+            <property name="spacing">6</property>
+            <child>
+              <object class="GtkLabel" id="label7">
+                <property name="visible">True</property>
+                <property name="xalign">0</property>
+                <property name="label" translatable="yes">&lt;b&gt;Set a Breakpoint:&lt;/b&gt;</property>
+                <property name="use_markup">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkAlignment" id="alignment2">
+                <property name="visible">True</property>
+                <child>
+                  <object class="GtkTable" id="table4">
+                    <property name="visible">True</property>
+                    <property name="n_rows">10</property>
+                    <property name="n_columns">2</property>
+                    <property name="column_spacing">6</property>
+                    <property name="row_spacing">6</property>
+                    <child>
+                      <object class="GtkEntry" id="lineentry">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="invisible_char">&#x25CF;</property>
+                        <property name="activates_default">True</property>
+                      </object>
+                      <packing>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
+                        <property name="top_attach">4</property>
+                        <property name="bottom_attach">5</property>
+                        <property name="y_options"></property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkEntry" id="filenameentry">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="invisible_char">&#x25CF;</property>
+                        <property name="activates_default">True</property>
+                      </object>
+                      <packing>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
+                        <property name="top_attach">3</property>
+                        <property name="bottom_attach">4</property>
+                        <property name="y_options"></property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkEntry" id="functionentry">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="invisible_char">&#x25CF;</property>
+                        <property name="activates_default">True</property>
+                      </object>
+                      <packing>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
+                        <property name="top_attach">1</property>
+                        <property name="bottom_attach">2</property>
+                        <property name="y_options"></property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkLabel" id="label8">
+                        <property name="visible">True</property>
+                        <property name="xalign">1</property>
+                        <property name="label" translatable="yes">Condition:</property>
+                        <property name="mnemonic_widget">conditionentry</property>
+                      </object>
+                      <packing>
+                        <property name="top_attach">9</property>
+                        <property name="bottom_attach">10</property>
+                        <property name="x_options">GTK_FILL</property>
+                        <property name="y_options"></property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkEntry" id="conditionentry">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="invisible_char">&#x25CF;</property>
+                      </object>
+                      <packing>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
+                        <property name="top_attach">9</property>
+                        <property name="bottom_attach">10</property>
+                        <property name="y_options"></property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkComboBox" id="combo_event">
+                        <property name="visible">True</property>
+                      </object>
+                      <packing>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
+                        <property name="top_attach">8</property>
+                        <property name="bottom_attach">9</property>
+                        <property name="x_options">GTK_FILL</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkRadioButton" id="eventradio">
+                        <property name="label" translatable="yes">_Event:</property>
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="receives_default">False</property>
+                        <property name="use_underline">True</property>
+                        <property name="draw_indicator">True</property>
+                      </object>
+                      <packing>
+                        <property name="top_attach">7</property>
+                        <property name="bottom_attach">8</property>
+                        <property name="x_options">GTK_FILL</property>
+                        <property name="y_options"></property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkEntry" id="addressentry">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="invisible_char">&#x25CF;</property>
+                      </object>
+                      <packing>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
+                        <property name="top_attach">6</property>
+                        <property name="bottom_attach">7</property>
+                        <property name="y_options"></property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkRadioButton" id="binarylocationradio">
+                        <property name="label" translatable="yes">_Binary Location:</property>
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="receives_default">False</property>
+                        <property name="use_underline">True</property>
+                        <property name="draw_indicator">True</property>
+                        <property name="group">eventradio</property>
+                      </object>
+                      <packing>
+                        <property name="top_attach">5</property>
+                        <property name="bottom_attach">6</property>
+                        <property name="x_options">GTK_FILL</property>
+                        <property name="y_options"></property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkRadioButton" id="sourcelocationradio">
+                        <property name="label" translatable="yes">_Source Location:</property>
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="receives_default">False</property>
+                        <property name="use_underline">True</property>
+                        <property name="draw_indicator">True</property>
+                        <property name="group">eventradio</property>
+                      </object>
+                      <packing>
+                        <property name="top_attach">2</property>
+                        <property name="bottom_attach">3</property>
+                        <property name="x_options">GTK_FILL</property>
+                        <property name="y_options"></property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkRadioButton" id="functionnameradio">
+                        <property name="label" translatable="yes">F_unction Name:</property>
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="receives_default">False</property>
+                        <property name="use_underline">True</property>
+                        <property name="draw_indicator">True</property>
+                        <property name="group">eventradio</property>
+                      </object>
+                      <packing>
+                        <property name="x_options">GTK_FILL</property>
+                        <property name="y_options"></property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkLabel" id="label9">
+                        <property name="visible">True</property>
+                        <property name="xalign">1</property>
+                        <property name="label" translatable="yes">Address:</property>
+                        <property name="mnemonic_widget">addressentry</property>
+                      </object>
+                      <packing>
+                        <property name="top_attach">6</property>
+                        <property name="bottom_attach">7</property>
+                        <property name="x_options">GTK_FILL</property>
+                        <property name="y_options"></property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkLabel" id="label_filename">
+                        <property name="visible">True</property>
+                        <property name="xalign">1</property>
+                        <property name="label" translatable="yes">Filename:</property>
+                        <property name="mnemonic_widget">filenameentry</property>
+                      </object>
+                      <packing>
+                        <property name="top_attach">3</property>
+                        <property name="bottom_attach">4</property>
+                        <property name="x_options">GTK_FILL</property>
+                        <property name="y_options"></property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkLabel" id="label_function">
+                        <property name="visible">True</property>
+                        <property name="xalign">1</property>
+                        <property name="label" translatable="yes">Function:</property>
+                        <property name="mnemonic_widget">functionentry</property>
+                      </object>
+                      <packing>
+                        <property name="top_attach">1</property>
+                        <property name="bottom_attach">2</property>
+                        <property name="x_options">GTK_FILL</property>
+                        <property name="y_options"></property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkLabel" id="label_line">
+                        <property name="visible">True</property>
+                        <property name="xalign">1</property>
+                        <property name="label" translatable="yes">Line:</property>
+                        <property name="mnemonic_widget">lineentry</property>
+                      </object>
+                      <packing>
+                        <property name="top_attach">4</property>
+                        <property name="bottom_attach">5</property>
+                        <property name="x_options">GTK_FILL</property>
+                        <property name="y_options"></property>
+                      </packing>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <placeholder/>
+                    </child>
+                  </object>
+                </child>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="position">1</property>
+          </packing>
+        </child>
+        <child internal-child="action_area">
+          <object class="GtkHButtonBox" id="dialog-action_area">
+            <property name="visible">True</property>
+            <property name="layout_style">end</property>
+            <child>
+              <object class="GtkButton" id="cancelbutton">
+                <property name="label">gtk-cancel</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="can_default">True</property>
+                <property name="receives_default">False</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkButton" id="okbutton">
+                <property name="label">gtk-ok</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="can_default">True</property>
+                <property name="has_default">True</property>
+                <property name="receives_default">False</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="pack_type">end</property>
+            <property name="position">0</property>
+          </packing>
+        </child>
+      </object>
+    </child>
+    <action-widgets>
+      <action-widget response="-6">cancelbutton</action-widget>
+      <action-widget response="-5">okbutton</action-widget>
+    </action-widgets>
+  </object>
+</interface>
diff --git a/src/persp/dbgperspective/glade/varinspectordialog.glade b/src/persp/dbgperspective/ui/varinspectordialog.ui
similarity index 65%
rename from src/persp/dbgperspective/glade/varinspectordialog.glade
rename to src/persp/dbgperspective/ui/varinspectordialog.ui
index d9aeb4d..7ba51ae 100644
--- a/src/persp/dbgperspective/glade/varinspectordialog.glade
+++ b/src/persp/dbgperspective/ui/varinspectordialog.ui
@@ -1,64 +1,60 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
-<!--*- mode: xml -*-->
-<glade-interface>
-  <widget class="GtkDialog" id="varinspectordialog">
+<?xml version="1.0"?>
+<interface>
+  <!-- interface-requires gtk+ 2.6 -->
+  <!-- interface-naming-policy toplevel-contextual -->
+  <object class="GtkDialog" id="varinspectordialog">
     <property name="visible">True</property>
     <property name="title" translatable="yes">Inspect a Variable</property>
     <property name="default_width">300</property>
     <property name="default_height">400</property>
-    <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
+    <property name="type_hint">dialog</property>
     <property name="has_separator">False</property>
     <child internal-child="vbox">
-      <widget class="GtkVBox" id="dialog-vbox1">
+      <object class="GtkVBox" id="dialog-vbox1">
         <property name="visible">True</property>
+        <property name="orientation">vertical</property>
         <child>
-          <widget class="GtkVBox" id="vbox1">
+          <object class="GtkVBox" id="vbox1">
             <property name="visible">True</property>
             <property name="border_width">6</property>
+            <property name="orientation">vertical</property>
             <property name="spacing">6</property>
             <child>
-              <widget class="GtkTable" id="table1">
+              <object class="GtkTable" id="table1">
                 <property name="visible">True</property>
                 <property name="n_columns">3</property>
                 <property name="column_spacing">6</property>
                 <property name="row_spacing">6</property>
                 <child>
-                  <widget class="GtkComboBoxEntry" id="variablenameentry">
+                  <object class="GtkComboBoxEntry" id="variablenameentry">
                     <property name="visible">True</property>
-                    <child internal-child="entry">
-                      <widget class="GtkEntry" id="comboboxentry-entry1">
-                        <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                      </widget>
-                    </child>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="left_attach">1</property>
                     <property name="right_attach">2</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkLabel" id="label1">
+                  <object class="GtkLabel" id="label1">
                     <property name="visible">True</property>
                     <property name="xalign">0</property>
                     <property name="label" translatable="yes">_Variable Name:</property>
                     <property name="use_underline">True</property>
                     <property name="mnemonic_widget">variablenameentry</property>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="x_options">GTK_FILL</property>
                     <property name="y_options"></property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkButton" id="inspectbutton">
+                  <object class="GtkButton" id="inspectbutton">
+                    <property name="label" translatable="yes">_Inspect</property>
                     <property name="visible">True</property>
                     <property name="can_focus">True</property>
-                    <property name="label" translatable="yes">_Inspect</property>
+                    <property name="receives_default">False</property>
                     <property name="use_underline">True</property>
-                    <property name="response_id">0</property>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="left_attach">2</property>
                     <property name="right_attach">3</property>
@@ -66,48 +62,59 @@
                     <property name="y_options"></property>
                   </packing>
                 </child>
-              </widget>
+              </object>
               <packing>
                 <property name="expand">False</property>
+                <property name="position">0</property>
               </packing>
             </child>
             <child>
-              <widget class="GtkVBox" id="inspectorwidgetbox">
+              <object class="GtkVBox" id="inspectorwidgetbox">
                 <property name="visible">True</property>
+                <property name="orientation">vertical</property>
                 <child>
                   <placeholder/>
                 </child>
-              </widget>
+              </object>
               <packing>
                 <property name="position">1</property>
               </packing>
             </child>
-          </widget>
+          </object>
           <packing>
             <property name="position">1</property>
           </packing>
         </child>
         <child internal-child="action_area">
-          <widget class="GtkHButtonBox" id="dialog-action_area1">
+          <object class="GtkHButtonBox" id="dialog-action_area1">
             <property name="visible">True</property>
-            <property name="layout_style">GTK_BUTTONBOX_END</property>
+            <property name="layout_style">end</property>
             <child>
-              <widget class="GtkButton" id="okbutton">
+              <object class="GtkButton" id="okbutton">
+                <property name="label">gtk-close</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <property name="can_default">True</property>
-                <property name="label">gtk-close</property>
+                <property name="receives_default">False</property>
                 <property name="use_stock">True</property>
-                <property name="response_id">-7</property>
-              </widget>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
+              </packing>
             </child>
-          </widget>
+          </object>
           <packing>
             <property name="expand">False</property>
-            <property name="pack_type">GTK_PACK_END</property>
+            <property name="pack_type">end</property>
+            <property name="position">0</property>
           </packing>
         </child>
-      </widget>
+      </object>
     </child>
-  </widget>
-</glade-interface>
+    <action-widgets>
+      <action-widget response="-7">okbutton</action-widget>
+    </action-widgets>
+  </object>
+</interface>
diff --git a/src/persp/dbgperspective/glade/watchpointdialog.glade b/src/persp/dbgperspective/ui/watchpointdialog.ui
similarity index 65%
rename from src/persp/dbgperspective/glade/watchpointdialog.glade
rename to src/persp/dbgperspective/ui/watchpointdialog.ui
index 0cab88d..abdbefc 100644
--- a/src/persp/dbgperspective/glade/watchpointdialog.glade
+++ b/src/persp/dbgperspective/ui/watchpointdialog.ui
@@ -1,116 +1,128 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
-<!--Generated with glade3 3.4.5 on Sun May 17 10:55:43 2009 -->
-<glade-interface>
-  <widget class="GtkDialog" id="watchpointdialog">
+<?xml version="1.0"?>
+<interface>
+  <!-- interface-requires gtk+ 2.6 -->
+  <!-- interface-naming-policy toplevel-contextual -->
+  <object class="GtkDialog" id="watchpointdialog">
     <property name="can_focus">True</property>
     <property name="can_default">True</property>
     <property name="border_width">5</property>
-    <property name="window_position">GTK_WIN_POS_CENTER_ON_PARENT</property>
+    <property name="window_position">center-on-parent</property>
     <property name="default_width">300</property>
-    <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
+    <property name="type_hint">dialog</property>
     <property name="has_separator">False</property>
     <child internal-child="vbox">
-      <widget class="GtkVBox" id="dialog-vbox1">
+      <object class="GtkVBox" id="dialog-vbox1">
         <property name="visible">True</property>
+        <property name="orientation">vertical</property>
         <property name="spacing">2</property>
         <child>
-          <widget class="GtkVBox" id="vbox1">
+          <object class="GtkVBox" id="vbox1">
             <property name="visible">True</property>
+            <property name="orientation">vertical</property>
             <property name="spacing">6</property>
             <child>
-              <widget class="GtkLabel" id="label1">
+              <object class="GtkLabel" id="label1">
                 <property name="visible">True</property>
                 <property name="xalign">0</property>
                 <property name="label" translatable="yes">&lt;b&gt;Set a watchpoint:&lt;/b&gt;</property>
                 <property name="use_markup">True</property>
-              </widget>
+              </object>
+              <packing>
+                <property name="position">0</property>
+              </packing>
             </child>
             <child>
-              <widget class="GtkAlignment" id="alignment1">
+              <object class="GtkAlignment" id="alignment1">
                 <property name="visible">True</property>
                 <property name="xalign">1</property>
                 <child>
-                  <widget class="GtkVBox" id="vbox2">
+                  <object class="GtkVBox" id="vbox2">
                     <property name="visible">True</property>
+                    <property name="orientation">vertical</property>
                     <property name="spacing">6</property>
                     <child>
-                      <widget class="GtkHBox" id="hbox1">
+                      <object class="GtkHBox" id="hbox1">
                         <property name="visible">True</property>
                         <property name="spacing">6</property>
                         <child>
-                          <widget class="GtkLabel" id="label2">
+                          <object class="GtkLabel" id="label2">
                             <property name="visible">True</property>
                             <property name="xalign">0</property>
                             <property name="label" translatable="yes">expression:</property>
-                          </widget>
+                          </object>
+                          <packing>
+                            <property name="position">0</property>
+                          </packing>
                         </child>
                         <child>
-                          <widget class="GtkEntry" id="expressionentry">
+                          <object class="GtkEntry" id="expressionentry">
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
                             <property name="can_default">True</property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="position">1</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkButton" id="inspectbutton">
+                          <object class="GtkButton" id="inspectbutton">
+                            <property name="label" translatable="yes">Inspect</property>
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
                             <property name="can_default">True</property>
                             <property name="receives_default">True</property>
-                            <property name="label" translatable="yes">Inspect</property>
-                            <property name="response_id">0</property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="position">2</property>
                           </packing>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
+                        <property name="position">0</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkHBox" id="hbox2">
+                      <object class="GtkHBox" id="hbox2">
                         <property name="visible">True</property>
                         <property name="spacing">6</property>
                         <child>
-                          <widget class="GtkLabel" id="label3">
+                          <object class="GtkLabel" id="label3">
                             <property name="visible">True</property>
                             <property name="xalign">0</property>
                             <property name="label" translatable="yes">triggers on:</property>
-                          </widget>
+                          </object>
+                          <packing>
+                            <property name="position">0</property>
+                          </packing>
                         </child>
                         <child>
-                          <widget class="GtkCheckButton" id="readcheckbutton">
+                          <object class="GtkCheckButton" id="readcheckbutton">
+                            <property name="label" translatable="yes">read</property>
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
-                            <property name="label" translatable="yes">read</property>
-                            <property name="response_id">0</property>
+                            <property name="receives_default">False</property>
                             <property name="draw_indicator">True</property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="position">1</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkCheckButton" id="writecheckbutton">
+                          <object class="GtkCheckButton" id="writecheckbutton">
+                            <property name="label" translatable="yes">write</property>
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
-                            <property name="label" translatable="yes">write</property>
-                            <property name="response_id">0</property>
+                            <property name="receives_default">False</property>
                             <property name="active">True</property>
                             <property name="draw_indicator">True</property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="position">2</property>
                           </packing>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
@@ -118,26 +130,27 @@
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkVBox" id="varinspectorbox">
+                      <object class="GtkVBox" id="varinspectorbox">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
+                        <property name="orientation">vertical</property>
                         <property name="spacing">6</property>
                         <child>
                           <placeholder/>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="position">2</property>
                       </packing>
                     </child>
-                  </widget>
+                  </object>
                 </child>
-              </widget>
+              </object>
               <packing>
                 <property name="position">1</property>
               </packing>
             </child>
-          </widget>
+          </object>
           <packing>
             <property name="expand">False</property>
             <property name="fill">False</property>
@@ -145,41 +158,51 @@
           </packing>
         </child>
         <child internal-child="action_area">
-          <widget class="GtkHButtonBox" id="dialog-action_area1">
+          <object class="GtkHButtonBox" id="dialog-action_area1">
             <property name="visible">True</property>
-            <property name="layout_style">GTK_BUTTONBOX_END</property>
+            <property name="layout_style">end</property>
             <child>
-              <widget class="GtkButton" id="cancelbutton">
+              <object class="GtkButton" id="cancelbutton">
+                <property name="label">gtk-cancel</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <property name="receives_default">True</property>
-                <property name="label" translatable="yes">gtk-cancel</property>
                 <property name="use_stock">True</property>
-                <property name="response_id">-6</property>
-              </widget>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
+              </packing>
             </child>
             <child>
-              <widget class="GtkButton" id="okbutton">
+              <object class="GtkButton" id="okbutton">
+                <property name="label">gtk-ok</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <property name="can_default">True</property>
                 <property name="has_default">True</property>
                 <property name="receives_default">True</property>
-                <property name="label" translatable="yes">gtk-ok</property>
                 <property name="use_stock">True</property>
-                <property name="response_id">-5</property>
-              </widget>
+              </object>
               <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
                 <property name="position">1</property>
               </packing>
             </child>
-          </widget>
+          </object>
           <packing>
             <property name="expand">False</property>
-            <property name="pack_type">GTK_PACK_END</property>
+            <property name="pack_type">end</property>
+            <property name="position">0</property>
           </packing>
         </child>
-      </widget>
+      </object>
     </child>
-  </widget>
-</glade-interface>
+    <action-widgets>
+      <action-widget response="-6">cancelbutton</action-widget>
+      <action-widget response="-5">okbutton</action-widget>
+    </action-widgets>
+  </object>
+</interface>
diff --git a/src/uicommon/nmv-dialog.cc b/src/uicommon/nmv-dialog.cc
index 2f60efb..8c29f26 100644
--- a/src/uicommon/nmv-dialog.cc
+++ b/src/uicommon/nmv-dialog.cc
@@ -24,7 +24,6 @@
  */
 
 #include <vector>
-#include <libglademm.h>
 #include <gtkmm/dialog.h>
 #include "common/nmv-exception.h"
 #include "common/nmv-env.h"
@@ -41,35 +40,36 @@ class Dialog::Priv {
 public:
 
     SafePtr<Gtk::Dialog> dialog;
-    Glib::RefPtr<Gnome::Glade::Xml> glade;
+    Glib::RefPtr<Gtk::Builder> gtkbuilder;
 
     Priv (const UString &a_resource_root_path,
-          const UString &a_glade_filename,
+          const UString &a_gtkbuilder_filename,
           const UString &a_widget_name)
     {
-        string glade_path;
+        string gtkbuilder_path;
         if (!a_resource_root_path.empty ()) {
             // So the glade file is shipped within a plugin. Build the
             // path to it accordingly.
             vector<string> path_elems;
             path_elems.push_back (Glib::locale_from_utf8 (a_resource_root_path));
-            path_elems.push_back ("glade");
-            path_elems.push_back (a_glade_filename);
-            glade_path = Glib::build_filename (path_elems);
+            path_elems.push_back ("ui");
+            path_elems.push_back (a_gtkbuilder_filename);
+            gtkbuilder_path = Glib::build_filename (path_elems);
         } else {
             // THe glade file is shipped into the global nemiver glade
             // directories.
-            glade_path = env::build_path_to_glade_file (a_glade_filename);
+            gtkbuilder_path = 
+	      env::build_path_to_gtkbuilder_file (a_gtkbuilder_filename);
         }
 
-        if (!Glib::file_test (glade_path, Glib::FILE_TEST_IS_REGULAR)) {
-            THROW (UString ("could not find file ") + glade_path);
+        if (!Glib::file_test (gtkbuilder_path, Glib::FILE_TEST_IS_REGULAR)) {
+            THROW (UString ("could not find file ") + gtkbuilder_path);
         }
 
-        glade = Gnome::Glade::Xml::create (glade_path);
-        THROW_IF_FAIL (glade);
+        gtkbuilder = Gtk::Builder::create_from_file (gtkbuilder_path);
+        THROW_IF_FAIL (gtkbuilder);
         dialog.reset
-            (ui_utils::get_widget_from_glade<Gtk::Dialog> (glade,
+            (ui_utils::get_widget_from_gtkbuilder<Gtk::Dialog> (gtkbuilder,
                                                            a_widget_name));
         THROW_IF_FAIL (dialog);
         dialog->hide ();
@@ -77,11 +77,11 @@ public:
 };//end struct Dialog::Priv
 
 Dialog::Dialog (const UString &a_resource_root_path,
-                const UString &a_glade_filename,
+                const UString &a_gtkbuilder_filename,
                 const UString &a_widget_name)
 {
     m_priv.reset (new Priv (a_resource_root_path,
-                            a_glade_filename,
+                            a_gtkbuilder_filename,
                             a_widget_name));
 }
 
@@ -93,12 +93,12 @@ Dialog::widget () const
     return *m_priv->dialog;
 }
 
-const Glib::RefPtr<Gnome::Glade::Xml>
-Dialog::glade () const
+const Glib::RefPtr<Gtk::Builder>
+Dialog::gtkbuilder () const
 {
     THROW_IF_FAIL (m_priv);
-    THROW_IF_FAIL (m_priv->glade);
-    return m_priv->glade;
+    THROW_IF_FAIL (m_priv->gtkbuilder);
+    return m_priv->gtkbuilder;
 }
 
 Dialog::~Dialog ()
diff --git a/src/uicommon/nmv-dialog.h b/src/uicommon/nmv-dialog.h
index 6aae7a9..9cea926 100644
--- a/src/uicommon/nmv-dialog.h
+++ b/src/uicommon/nmv-dialog.h
@@ -25,7 +25,7 @@
 #ifndef __NEMIVER_DIALOG_H__
 #define __NEMIVER_DIALOG_H__
 
-#include <libglademm/xml.h>
+#include <gtkmm/builder.h>
 #include "common/nmv-object.h"
 
 namespace Gtk {
@@ -61,13 +61,13 @@ protected:
     //the actual underlying Gtk::Dialog widget
     Gtk::Dialog& widget () const;
 
-    //the actual glade object loaded by this dialog.
-    const Glib::RefPtr<Gnome::Glade::Xml> glade ()  const;
+    //the actual gtkbuilder object loaded by this dialog.
+    const Glib::RefPtr<Gtk::Builder> gtkbuilder ()  const;
 
 public:
 
     Dialog (const UString &a_resource_root_path,
-            const UString &a_glade_filename,
+            const UString &a_gtkbuilder_filename,
             const UString &a_widget_name);
 
     virtual ~Dialog ();
diff --git a/src/uicommon/nmv-locate-file-dialog.cc b/src/uicommon/nmv-locate-file-dialog.cc
index e6c0965..8ea9894 100644
--- a/src/uicommon/nmv-locate-file-dialog.cc
+++ b/src/uicommon/nmv-locate-file-dialog.cc
@@ -25,7 +25,6 @@
 
 #include <vector>
 #include <glib/gi18n.h>
-#include <libglademm.h>
 #include <gtkmm/dialog.h>
 #include <gtkmm/filechooserbutton.h>
 #include <gtkmm/stock.h>
@@ -44,21 +43,21 @@ public:
     Gtk::FileChooserButton *fcbutton_location;
     Gtk::Label *label_filename;
     Gtk::Button *okbutton;
-    Priv (const Glib::RefPtr<Gnome::Glade::Xml> &a_glade, const UString& a_filename) :
+    Priv (const Glib::RefPtr<Gtk::Builder> &a_gtkbuilder, const UString& a_filename) :
         fcbutton_location (0),
         label_filename(0),
         okbutton (0)
     {
 
         okbutton =
-            ui_utils::get_widget_from_glade<Gtk::Button> (a_glade,
+            ui_utils::get_widget_from_gtkbuilder<Gtk::Button> (a_gtkbuilder,
                                                           "okbutton");
         THROW_IF_FAIL (okbutton);
         okbutton->set_sensitive (false);
 
         fcbutton_location =
-            ui_utils::get_widget_from_glade<Gtk::FileChooserButton>
-                (a_glade, "filechooserbutton_location");
+            ui_utils::get_widget_from_gtkbuilder<Gtk::FileChooserButton>
+                (a_gtkbuilder, "filechooserbutton_location");
         fcbutton_location->signal_selection_changed ().connect (sigc::mem_fun
                 (*this, &Priv::on_file_selection_changed_signal));
         UString chooser_title;
@@ -67,7 +66,7 @@ public:
         fcbutton_location->set_title (chooser_title);
 
         label_filename =
-            ui_utils::get_widget_from_glade<Gtk::Label> (a_glade,
+            ui_utils::get_widget_from_gtkbuilder<Gtk::Label> (a_gtkbuilder,
                                                          "label_filename");
         THROW_IF_FAIL (label_filename);
         UString instructions;
@@ -97,9 +96,9 @@ public:
 
 LocateFileDialog::LocateFileDialog (const UString &a_root_path,
                                     const UString &a_file) :
-    Dialog (a_root_path, "locatefiledialog.glade", "locatefiledialog")
+    Dialog (a_root_path, "locatefiledialog.ui", "locatefiledialog")
 {
-    m_priv.reset (new Priv (glade (), a_file));
+    m_priv.reset (new Priv (gtkbuilder (), a_file));
 }
 
 LocateFileDialog::~LocateFileDialog ()
diff --git a/src/uicommon/nmv-ui-utils.h b/src/uicommon/nmv-ui-utils.h
index a627cd6..4489207 100644
--- a/src/uicommon/nmv-ui-utils.h
+++ b/src/uicommon/nmv-ui-utils.h
@@ -30,7 +30,6 @@
 
 #include "config.h"
 #include <gtkmm.h>
-#include <libglademm.h>
 #include "common/nmv-env.h"
 #include "common/nmv-ustring.h"
 #include "common/nmv-safe-ptr-utils.h"
@@ -172,39 +171,18 @@ bool find_file_and_read_line (const UString &a_file_path,
 
 template <class T>
 T*
-get_widget_from_glade (const Glib::RefPtr<Gnome::Glade::Xml> &a_glade,
-                       const UString &a_widget_name)
+get_widget_from_gtkbuilder (const Glib::RefPtr<Gtk::Builder> &a_gtkbuilder,
+                            const UString &a_widget_name)
 {
-    Gtk::Widget *widget = a_glade->get_widget (a_widget_name);
+    T *widget;
+    a_gtkbuilder->get_widget (a_widget_name, widget);
     if (!widget) {
         THROW ("couldn't find widget '"
-               + a_widget_name
-               + "' in glade file: " + a_glade->get_filename ().c_str ());
+               + a_widget_name);
     }
-    T *result = dynamic_cast<T*> (widget);
-    if (!result) {
-        //TODO: we may leak widget here if it is a toplevel widget
-        //like Gtk::Window. In this case, we should make sure to delete it
-        //before bailing out.
-        THROW ("widget " + a_widget_name + " is not of the expected type");
-    }
-    return result;
+    return widget;
 }
 
-template <class T>
-T*
-get_widget_from_glade (const UString &a_glade_file_name,
-                       const UString &a_widget_name,
-                       const Glib::RefPtr<Gnome::Glade::Xml> &a_glade)
-{
-    UString path_to_glade_file =
-                common::env::build_path_to_glade_file (a_glade_file_name);
-    a_glade = Gnome::Glade::Xml::create (path_to_glade_file);
-    if (!a_glade) {
-        THROW ("Could not create glade from file " + path_to_glade_file);
-    }
-    return get_widget_from_glade<T> (a_glade, a_widget_name);
-}
 
 struct WidgetRef {
     void operator () (Gtk::Widget *a_widget)
diff --git a/src/workbench/nmv-workbench.cc b/src/workbench/nmv-workbench.cc
index a0a7c5b..e97c6a6 100644
--- a/src/workbench/nmv-workbench.cc
+++ b/src/workbench/nmv-workbench.cc
@@ -110,7 +110,7 @@ private:
     //</slots (signal callbacks)>
     //************************
 
-    void init_glade ();
+    void init_builder ();
     void init_window ();
     void init_actions ();
     void init_menubar ();
@@ -157,7 +157,7 @@ struct Workbench::Priv {
     Gtk::Main *main;
     Glib::RefPtr<Gtk::ActionGroup> default_action_group;
     Glib::RefPtr<Gtk::UIManager> ui_manager;
-    Glib::RefPtr<Gnome::Glade::Xml> glade;
+    Glib::RefPtr<Gtk::Builder> builder;
     SafePtr <Gtk::Window> root_window;
     Gtk::Widget *menubar;
     Gtk::Notebook *toolbar_container;
@@ -383,7 +383,7 @@ Workbench::do_init (Gtk::Main &a_main)
         m_priv->root_window->set_default_icon_list(icon_list);
     }
 
-    init_glade ();
+    init_builder ();
     init_window ();
     init_actions ();
     init_menubar ();
@@ -565,25 +565,25 @@ Workbench::shutting_down_signal ()
 }
 
 void
-Workbench::init_glade ()
+Workbench::init_builder ()
 {
     LOG_FUNCTION_SCOPE_NORMAL_DD;
 
     THROW_IF_FAIL (m_priv);
 
-    UString file_path = env::build_path_to_glade_file ("workbench.glade");
-    m_priv->glade = Gnome::Glade::Xml::create (file_path);
-    THROW_IF_FAIL (m_priv->glade);
+    UString file_path = env::build_path_to_gtkbuilder_file ("workbench.ui");
+    m_priv->builder = Gtk::Builder::create_from_file (file_path);
+    THROW_IF_FAIL (m_priv->builder);
 
     Gtk::Widget *w =
-        ui_utils::get_widget_from_glade<Gtk::Window> (m_priv->glade,
+        ui_utils::get_widget_from_gtkbuilder<Gtk::Window> (m_priv->builder,
                                                       "workbench");
     THROW_IF_FAIL (w);
     m_priv->root_window.reset (dynamic_cast<Gtk::Window*>
                                                 (w->get_toplevel ()));
     THROW_IF_FAIL (m_priv->root_window);
     //get the title of the toplevel window as specified in the
-    //glade file and save
+    //gtkbuilder file and save
     //it so that later we can add state-specific
     //extensions to this base title
     //if needed
@@ -754,7 +754,7 @@ Workbench::init_menubar ()
     THROW_IF_FAIL (m_priv->menubar);
 
     Gtk::Box *menu_container =
-        ui_utils::get_widget_from_glade<Gtk::Box> (m_priv->glade, "menucontainer");
+        ui_utils::get_widget_from_gtkbuilder<Gtk::Box> (m_priv->builder, "menucontainer");
     menu_container->pack_start (*m_priv->menubar);
     menu_container->show_all ();
 }
@@ -765,7 +765,7 @@ Workbench::init_toolbar ()
     LOG_FUNCTION_SCOPE_NORMAL_DD;
 
     m_priv->toolbar_container =
-        ui_utils::get_widget_from_glade<Gtk::Notebook> (m_priv->glade,
+        ui_utils::get_widget_from_gtkbuilder<Gtk::Notebook> (m_priv->builder,
                                                         "toolbarcontainer");
 }
 
@@ -774,7 +774,7 @@ Workbench::init_body ()
 {
     LOG_FUNCTION_SCOPE_NORMAL_DD;
     m_priv->bodies_container =
-        ui_utils::get_widget_from_glade<Gtk::Notebook> (m_priv->glade,
+        ui_utils::get_widget_from_gtkbuilder<Gtk::Notebook> (m_priv->builder,
                                                         "bodynotebook");
 }
 
diff --git a/ui/Makefile.am b/ui/Makefile.am
new file mode 100644
index 0000000..cdb5e9d
--- /dev/null
+++ b/ui/Makefile.am
@@ -0,0 +1,8 @@
+uifiles = workbench.ui locatefiledialog.ui
+
+uidir = $(datadir)/@PACKAGE@/ui
+ui_DATA = $(uifiles)
+
+EXTRA_DIST = $(uifiles)
+
+
diff --git a/ui/locatefiledialog.ui b/ui/locatefiledialog.ui
new file mode 100644
index 0000000..891e0ad
--- /dev/null
+++ b/ui/locatefiledialog.ui
@@ -0,0 +1,108 @@
+<?xml version="1.0"?>
+<interface>
+  <!-- interface-requires gtk+ 2.6 -->
+  <!-- interface-naming-policy toplevel-contextual -->
+  <object class="GtkDialog" id="locatefiledialog">
+    <property name="width_request">300</property>
+    <property name="title" translatable="yes">Select File Location</property>
+    <property name="default_width">350</property>
+    <property name="type_hint">dialog</property>
+    <property name="has_separator">False</property>
+    <child internal-child="vbox">
+      <object class="GtkVBox" id="dialog-vbox1">
+        <property name="visible">True</property>
+        <property name="orientation">vertical</property>
+        <child>
+          <object class="GtkVBox" id="vbox1">
+            <property name="visible">True</property>
+            <property name="border_width">6</property>
+            <property name="orientation">vertical</property>
+            <property name="spacing">6</property>
+            <child>
+              <object class="GtkLabel" id="label1">
+                <property name="visible">True</property>
+                <property name="xalign">0</property>
+                <property name="label" translatable="yes">&lt;b&gt;Locate File&lt;/b&gt;</property>
+                <property name="use_markup">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkLabel" id="label_filename">
+                <property name="visible">True</property>
+                <property name="xalign">0</property>
+                <property name="label">Nemiver cannot locate the following file:</property>
+                <property name="use_markup">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkFileChooserButton" id="filechooserbutton_location">
+                <property name="visible">True</property>
+                <property name="title">Select File Location: </property>
+              </object>
+              <packing>
+                <property name="position">2</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="position">1</property>
+          </packing>
+        </child>
+        <child internal-child="action_area">
+          <object class="GtkHButtonBox" id="dialog-action_area1">
+            <property name="visible">True</property>
+            <property name="layout_style">end</property>
+            <child>
+              <object class="GtkButton" id="cancelbutton">
+                <property name="label">gtk-cancel</property>
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="receives_default">False</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkButton" id="okbutton">
+                <property name="label">gtk-ok</property>
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="receives_default">False</property>
+                <property name="use_stock">True</property>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="pack_type">end</property>
+            <property name="position">0</property>
+          </packing>
+        </child>
+      </object>
+    </child>
+    <action-widgets>
+      <action-widget response="-6">cancelbutton</action-widget>
+      <action-widget response="-5">okbutton</action-widget>
+    </action-widgets>
+  </object>
+</interface>
diff --git a/glade/workbench.glade b/ui/workbench.ui
similarity index 58%
rename from glade/workbench.glade
rename to ui/workbench.ui
index 8aec22b..22d555b 100644
--- a/glade/workbench.glade
+++ b/ui/workbench.ui
@@ -1,95 +1,106 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
-<!--*- mode: xml -*-->
-<glade-interface>
-  <widget class="GtkWindow" id="workbench">
+<?xml version="1.0"?>
+<interface>
+  <!-- interface-requires gtk+ 2.6 -->
+  <!-- interface-naming-policy toplevel-contextual -->
+  <object class="GtkWindow" id="workbench">
     <property name="visible">True</property>
     <property name="title" translatable="yes">Nemiver</property>
     <property name="default_width">800</property>
     <property name="default_height">600</property>
     <property name="destroy_with_parent">True</property>
     <child>
-      <widget class="GtkVBox" id="vbox1">
+      <object class="GtkVBox" id="vbox1">
         <property name="visible">True</property>
+        <property name="orientation">vertical</property>
         <child>
-          <widget class="GtkVBox" id="menucontainer">
+          <object class="GtkVBox" id="menucontainer">
             <property name="visible">True</property>
+            <property name="orientation">vertical</property>
             <child>
               <placeholder/>
             </child>
-          </widget>
+          </object>
           <packing>
             <property name="expand">False</property>
             <property name="fill">False</property>
+            <property name="position">0</property>
           </packing>
         </child>
         <child>
-          <widget class="GtkVBox" id="toolbarvbox">
+          <object class="GtkVBox" id="toolbarvbox">
             <property name="visible">True</property>
+            <property name="orientation">vertical</property>
             <child>
-              <widget class="GtkNotebook" id="toolbarcontainer">
+              <object class="GtkNotebook" id="toolbarcontainer">
                 <property name="visible">True</property>
                 <property name="show_tabs">False</property>
                 <property name="show_border">False</property>
                 <child>
-                  <widget class="GtkVBox" id="emptytoolbar">
+                  <object class="GtkVBox" id="emptytoolbar">
                     <property name="visible">True</property>
+                    <property name="orientation">vertical</property>
                     <child>
                       <placeholder/>
                     </child>
-                  </widget>
+                  </object>
                 </child>
-                <child>
-                  <widget class="GtkLabel" id="label1">
+                <child type="tab">
+                  <object class="GtkLabel" id="label1">
                     <property name="visible">True</property>
                     <property name="label" translatable="yes">label1</property>
-                  </widget>
+                  </object>
                   <packing>
-                    <property name="type">tab</property>
                     <property name="tab_fill">False</property>
                   </packing>
                 </child>
-              </widget>
+              </object>
+              <packing>
+                <property name="position">0</property>
+              </packing>
             </child>
-          </widget>
+          </object>
           <packing>
             <property name="expand">False</property>
             <property name="position">1</property>
           </packing>
         </child>
         <child>
-          <widget class="GtkVBox" id="bodybox">
+          <object class="GtkVBox" id="bodybox">
             <property name="visible">True</property>
+            <property name="orientation">vertical</property>
             <child>
-              <widget class="GtkNotebook" id="bodynotebook">
+              <object class="GtkNotebook" id="bodynotebook">
                 <property name="visible">True</property>
                 <property name="show_tabs">False</property>
                 <child>
-                  <widget class="GtkVBox" id="emptybody">
+                  <object class="GtkVBox" id="emptybody">
                     <property name="visible">True</property>
+                    <property name="orientation">vertical</property>
                     <child>
                       <placeholder/>
                     </child>
-                  </widget>
+                  </object>
                 </child>
-                <child>
-                  <widget class="GtkLabel" id="label2">
+                <child type="tab">
+                  <object class="GtkLabel" id="label2">
                     <property name="visible">True</property>
                     <property name="label" translatable="yes">label2</property>
-                  </widget>
+                  </object>
                   <packing>
-                    <property name="type">tab</property>
                     <property name="tab_fill">False</property>
                   </packing>
                 </child>
-              </widget>
+              </object>
+              <packing>
+                <property name="position">0</property>
+              </packing>
             </child>
-          </widget>
+          </object>
           <packing>
             <property name="position">2</property>
           </packing>
         </child>
-      </widget>
+      </object>
     </child>
-  </widget>
-</glade-interface>
+  </object>
+</interface>



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]