[gdm: 1/7] Use gtkbuilder i.s.o. glade



commit 913b90eaf76ce64e5e0d74a8bfb666caa8b249f1
Author: Jaap A. Haitsma <jaap haitsma org>
Date:   Tue Jan 12 17:05:52 2010 -0500

    Use gtkbuilder i.s.o. glade
    
    Fixes bug #581346

 configure.ac                                      |    8 +-
 gui/simple-greeter/Makefile.am                    |   10 +-
 gui/simple-greeter/gdm-greeter-login-window.c     |  112 ++---
 gui/simple-greeter/gdm-greeter-login-window.glade |  601 ---------------------
 gui/simple-greeter/gdm-greeter-login-window.ui    |  434 +++++++++++++++
 gui/user-switch-applet/applet.c                   |    1 -
 po/POTFILES.in                                    |    3 +-
 7 files changed, 482 insertions(+), 687 deletions(-)
---
diff --git a/configure.ac b/configure.ac
index a19b9f5..896ba3f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -41,9 +41,8 @@ dnl ---------------------------------------------------------------------------
 
 DBUS_GLIB_REQUIRED_VERSION=0.74
 GLIB_REQUIRED_VERSION=2.22.0
-GTK_REQUIRED_VERSION=2.10.0
+GTK_REQUIRED_VERSION=2.12.0
 PANGO_REQUIRED_VERSION=1.3.0
-LIBGLADE_REQUIRED_VERSION=1.99.2
 SCROLLKEEPER_REQUIRED_VERSION=0.1.4
 GCONF_REQUIRED_VERSION=2.6.1
 GNOME_PANEL_REQUIRED_VERSION=2.0.0
@@ -119,7 +118,6 @@ AC_SUBST(DEVKIT_POWER_LIBS)
 PKG_CHECK_MODULES(SIMPLE_GREETER,
         dbus-glib-1 >= $DBUS_GLIB_REQUIRED_VERSION
         gtk+-2.0 >= $GTK_REQUIRED_VERSION
-        libglade-2.0 >= $LIBGLADE_REQUIRED_VERSION
         gconf-2.0 >= $GCONF_REQUIRED_VERSION
 	fontconfig >= $FONTCONFIG_REQUIRED_VERSION
 )
@@ -141,7 +139,6 @@ AC_SUBST(LIBXKLAVIER_LIBS)
 PKG_CHECK_MODULES(SIMPLE_CHOOSER,
         dbus-glib-1 >= $DBUS_GLIB_REQUIRED_VERSION
         gtk+-2.0 >= $GTK_REQUIRED_VERSION
-        libglade-2.0 >= $LIBGLADE_REQUIRED_VERSION
         gconf-2.0 >= $GCONF_REQUIRED_VERSION
 )
 AC_SUBST(SIMPLE_CHOOSER_CFLAGS)
@@ -149,8 +146,7 @@ AC_SUBST(SIMPLE_CHOOSER_LIBS)
 
 PKG_CHECK_MODULES(APPLET,
         gtk+-2.0 >= $GTK_REQUIRED_VERSION
-        libpanelapplet-2.0 >= $GNOME_PANEL_REQUIRED_VERSION
-        libglade-2.0 >= $LIBGLADE_REQUIRED_VERSION)
+        libpanelapplet-2.0 >= $GNOME_PANEL_REQUIRED_VERSION)
 AC_SUBST(APPLET_CFLAGS)
 AC_SUBST(APPLET_LIBS)
 
diff --git a/gui/simple-greeter/Makefile.am b/gui/simple-greeter/Makefile.am
index 1fa87cf..ee06ea0 100644
--- a/gui/simple-greeter/Makefile.am
+++ b/gui/simple-greeter/Makefile.am
@@ -13,7 +13,7 @@ AM_CPPFLAGS = \
 	-DSYSCONFDIR=\""$(sysconfdir)"\"		\
 	-DLIBLOCALEDIR=\""$(prefix)/lib/locale"\"	\
 	-DGNOMELOCALEDIR=\""$(datadir)/locale"\" 	\
-	-DGLADEDIR=\""$(pkgdatadir)"\"			\
+	-DUIDIR=\""$(pkgdatadir)"\"			\
 	-DLIBEXECDIR=\""$(libexecdir)"\" 		\
 	-DSBINDIR=\""$(sbindir)"\"		 	\
 	-DGDM_CACHE_DIR=\""$(localstatedir)/cache/gdm"\"	\
@@ -332,14 +332,14 @@ gdm_simple_greeter_LDADD = 		\
 	$(DEVKIT_POWER_LIBS)		\
 	$(NULL)
 
-gladedir = $(pkgdatadir)
-glade_DATA = 					\
-	gdm-greeter-login-window.glade		\
+uidir = $(pkgdatadir)
+ui_DATA = 					\
+	gdm-greeter-login-window.ui		\
 	$(NULL)
 
 EXTRA_DIST = 			\
 	$(schemas_in_files)	\
-	$(glade_DATA)		\
+	$(ui_DATA)		\
 	$(NULL)
 
 DISTCLEANFILES =                        \
diff --git a/gui/simple-greeter/gdm-greeter-login-window.c b/gui/simple-greeter/gdm-greeter-login-window.c
index 8de74df..b88987e 100644
--- a/gui/simple-greeter/gdm-greeter-login-window.c
+++ b/gui/simple-greeter/gdm-greeter-login-window.c
@@ -45,7 +45,6 @@
 
 #include <gtk/gtk.h>
 
-#include <glade/glade-xml.h>
 #include <gconf/gconf-client.h>
 
 #include <dbus/dbus-glib.h>
@@ -74,7 +73,7 @@
 #define CK_SEAT_INTERFACE    "org.freedesktop.ConsoleKit.Seat"
 #define CK_SESSION_INTERFACE "org.freedesktop.ConsoleKit.Session"
 
-#define GLADE_XML_FILE       "gdm-greeter-login-window.glade"
+#define UI_XML_FILE       "gdm-greeter-login-window.ui"
 
 #define KEY_GREETER_DIR             "/apps/gdm/simple-greeter"
 #define KEY_BANNER_MESSAGE_ENABLED  KEY_GREETER_DIR "/banner_message_enable"
@@ -97,7 +96,7 @@ enum {
 
 struct GdmGreeterLoginWindowPrivate
 {
-        GladeXML        *xml;
+        GtkBuilder      *builder;
         GtkWidget       *user_chooser;
         GtkWidget       *auth_banner_label;
         guint            display_is_local : 1;
@@ -175,10 +174,10 @@ set_sensitive (GdmGreeterLoginWindow *login_window,
 {
         GtkWidget *box;
 
-        box = glade_xml_get_widget (login_window->priv->xml, "auth-input-box");
+        box = GTK_WIDGET (gtk_builder_get_object (login_window->priv->builder, "auth-input-box"));
         gtk_widget_set_sensitive (box, sensitive);
 
-        box = glade_xml_get_widget (login_window->priv->xml, "buttonbox");
+        box = GTK_WIDGET (gtk_builder_get_object (login_window->priv->builder, "buttonbox"));
         gtk_widget_set_sensitive (box, sensitive);
 
         gtk_widget_set_sensitive (login_window->priv->user_chooser, sensitive);
@@ -189,7 +188,7 @@ set_focus (GdmGreeterLoginWindow *login_window)
 {
         GtkWidget *entry;
 
-        entry = glade_xml_get_widget (GDM_GREETER_LOGIN_WINDOW (login_window)->priv->xml, "auth-prompt-entry");
+        entry = GTK_WIDGET (gtk_builder_get_object (GDM_GREETER_LOGIN_WINDOW (login_window)->priv->builder, "auth-prompt-entry"));
 
         gdk_window_focus (GTK_WIDGET (login_window)->window, GDK_CURRENT_TIME);
 
@@ -206,7 +205,7 @@ set_message (GdmGreeterLoginWindow *login_window,
 {
         GtkWidget *label;
 
-        label = glade_xml_get_widget (login_window->priv->xml, "auth-message-label");
+        label = GTK_WIDGET (gtk_builder_get_object (login_window->priv->builder, "auth-message-label"));
         gtk_label_set_text (GTK_LABEL (label), text);
 }
 
@@ -318,7 +317,7 @@ show_widget (GdmGreeterLoginWindow *login_window,
 {
         GtkWidget *widget;
 
-        widget = glade_xml_get_widget (login_window->priv->xml, name);
+        widget = GTK_WIDGET (gtk_builder_get_object (login_window->priv->builder, name));
         if (widget != NULL) {
                 if (visible) {
                         gtk_widget_show (widget);
@@ -335,7 +334,7 @@ sensitize_widget (GdmGreeterLoginWindow *login_window,
 {
         GtkWidget *widget;
 
-        widget = glade_xml_get_widget (login_window->priv->xml, name);
+        widget = GTK_WIDGET (gtk_builder_get_object (login_window->priv->builder, name));
         if (widget != NULL) {
                 gtk_widget_set_sensitive (widget, sense);
         }
@@ -351,7 +350,7 @@ on_login_button_clicked_answer_query (GtkButton             *button,
         set_busy (login_window);
         set_sensitive (login_window, FALSE);
 
-        entry = glade_xml_get_widget (login_window->priv->xml, "auth-prompt-entry");
+        entry = GTK_WIDGET (gtk_builder_get_object (login_window->priv->builder, "auth-prompt-entry"));
         text = gtk_entry_get_text (GTK_ENTRY (entry));
 
         _gdm_greeter_login_window_set_interactive (login_window, TRUE);
@@ -385,7 +384,7 @@ set_log_in_button_mode (GdmGreeterLoginWindow *login_window,
 {
         GtkWidget *button;
 
-        button = glade_xml_get_widget (login_window->priv->xml, "log-in-button");
+        button = GTK_WIDGET (gtk_builder_get_object (login_window->priv->builder, "log-in-button"));
         gtk_widget_grab_default (button);
 
         /* disconnect any signals */
@@ -439,7 +438,6 @@ switch_mode (GdmGreeterLoginWindow *login_window,
              int                    number)
 {
         const char *default_name;
-        GtkWidget  *user_chooser;
         GtkWidget  *box;
 
         /* we want to run this even if we're supposed to
@@ -470,24 +468,23 @@ switch_mode (GdmGreeterLoginWindow *login_window,
                 g_assert_not_reached ();
         }
 
-        box = glade_xml_get_widget (login_window->priv->xml, "buttonbox");
+        box = GTK_WIDGET (gtk_builder_get_object (login_window->priv->builder, "buttonbox"));
         gtk_button_box_set_layout (GTK_BUTTON_BOX (box),
                                    (number == MODE_SELECTION) ? GTK_BUTTONBOX_SPREAD : GTK_BUTTONBOX_END );
 
-        user_chooser = glade_xml_get_widget (login_window->priv->xml, "user-chooser");
-        box = gtk_widget_get_parent (user_chooser);
+        box = gtk_widget_get_parent (login_window->priv->user_chooser);
         if (GTK_IS_BOX (box)) {
                 guint       padding;
                 GtkPackType pack_type;
 
                 gtk_box_query_child_packing (GTK_BOX (box),
-                                             user_chooser,
+                                             login_window->priv->user_chooser,
                                              NULL,
                                              NULL,
                                              &padding,
                                              &pack_type);
                 gtk_box_set_child_packing (GTK_BOX (box),
-                                           user_chooser,
+                                           login_window->priv->user_chooser,
                                            number == MODE_SELECTION,
                                            number == MODE_SELECTION,
                                            padding,
@@ -497,7 +494,7 @@ switch_mode (GdmGreeterLoginWindow *login_window,
         if (default_name != NULL) {
                 GtkWidget *widget;
 
-                widget = glade_xml_get_widget (login_window->priv->xml, default_name);
+                widget = GTK_WIDGET (gtk_builder_get_object (login_window->priv->builder, default_name));
                 gtk_widget_grab_default (widget);
         }
 }
@@ -544,14 +541,14 @@ reset_dialog (GdmGreeterLoginWindow *login_window)
                 login_window->priv->start_session_handler_id = 0;
         }
 
-        entry = glade_xml_get_widget (GDM_GREETER_LOGIN_WINDOW (login_window)->priv->xml, "auth-prompt-entry");
+        entry = GTK_WIDGET (gtk_builder_get_object (GDM_GREETER_LOGIN_WINDOW (login_window)->priv->builder, "auth-prompt-entry"));
 
         delete_entry_text (entry);
 
         gtk_entry_set_visibility (GTK_ENTRY (entry), TRUE);
         set_message (login_window, "");
 
-        label = glade_xml_get_widget (GDM_GREETER_LOGIN_WINDOW (login_window)->priv->xml, "auth-prompt-label");
+        label = GTK_WIDGET (gtk_builder_get_object (GDM_GREETER_LOGIN_WINDOW (login_window)->priv->builder, "auth-prompt-label"));
         gtk_label_set_text (GTK_LABEL (label), "");
 
         switch_mode (login_window, MODE_SELECTION);
@@ -706,12 +703,12 @@ gdm_greeter_login_window_info_query (GdmGreeterLoginWindow *login_window,
 
         g_debug ("GdmGreeterLoginWindow: info query: %s", text);
 
-        entry = glade_xml_get_widget (GDM_GREETER_LOGIN_WINDOW (login_window)->priv->xml, "auth-prompt-entry");
+        entry = GTK_WIDGET (gtk_builder_get_object (GDM_GREETER_LOGIN_WINDOW (login_window)->priv->builder, "auth-prompt-entry"));
         delete_entry_text (entry);
         gtk_entry_set_visibility (GTK_ENTRY (entry), TRUE);
         set_log_in_button_mode (login_window, LOGIN_BUTTON_ANSWER_QUERY);
 
-        label = glade_xml_get_widget (GDM_GREETER_LOGIN_WINDOW (login_window)->priv->xml, "auth-prompt-label");
+        label = GTK_WIDGET (gtk_builder_get_object (GDM_GREETER_LOGIN_WINDOW (login_window)->priv->builder, "auth-prompt-label"));
         gtk_label_set_text (GTK_LABEL (label), text);
 
         show_widget (login_window, "auth-input-box", TRUE);
@@ -733,12 +730,12 @@ gdm_greeter_login_window_secret_info_query (GdmGreeterLoginWindow *login_window,
 
         g_return_val_if_fail (GDM_IS_GREETER_LOGIN_WINDOW (login_window), FALSE);
 
-        entry = glade_xml_get_widget (GDM_GREETER_LOGIN_WINDOW (login_window)->priv->xml, "auth-prompt-entry");
+        entry = GTK_WIDGET (gtk_builder_get_object (GDM_GREETER_LOGIN_WINDOW (login_window)->priv->builder, "auth-prompt-entry"));
         delete_entry_text (entry);
         gtk_entry_set_visibility (GTK_ENTRY (entry), FALSE);
         set_log_in_button_mode (login_window, LOGIN_BUTTON_ANSWER_QUERY);
 
-        label = glade_xml_get_widget (GDM_GREETER_LOGIN_WINDOW (login_window)->priv->xml, "auth-prompt-label");
+        label = GTK_WIDGET (gtk_builder_get_object (GDM_GREETER_LOGIN_WINDOW (login_window)->priv->builder, "auth-prompt-label"));
         gtk_label_set_text (GTK_LABEL (label), text);
 
         show_widget (login_window, "auth-input-box", TRUE);
@@ -895,7 +892,7 @@ rotate_computer_info (GdmGreeterLoginWindow *login_window)
         int        n_pages;
 
         /* switch page */
-        notebook = glade_xml_get_widget (login_window->priv->xml, "computer-info-notebook");
+        notebook = GTK_WIDGET (gtk_builder_get_object (login_window->priv->builder, "computer-info-notebook"));
         current_page = gtk_notebook_get_current_page (GTK_NOTEBOOK (notebook));
         n_pages = gtk_notebook_get_n_pages (GTK_NOTEBOOK (notebook));
 
@@ -1000,7 +997,7 @@ create_computer_info (GdmGreeterLoginWindow *login_window)
 
         gdm_profile_start (NULL);
 
-        label = glade_xml_get_widget (login_window->priv->xml, "computer-info-name-label");
+        label = GTK_WIDGET (gtk_builder_get_object (login_window->priv->builder, "computer-info-name-label"));
         if (label != NULL) {
                 char localhost[HOST_NAME_MAX + 1] = "";
 
@@ -1018,7 +1015,7 @@ create_computer_info (GdmGreeterLoginWindow *login_window)
                 }
         }
 
-        label = glade_xml_get_widget (login_window->priv->xml, "computer-info-version-label");
+        label = GTK_WIDGET (gtk_builder_get_object (login_window->priv->builder, "computer-info-version-label"));
         if (label != NULL) {
                 char *version;
                 version = get_system_version ();
@@ -1035,34 +1032,6 @@ create_computer_info (GdmGreeterLoginWindow *login_window)
 #define INVISIBLE_CHAR_BULLET        0x2022
 #define INVISIBLE_CHAR_NONE          0
 
-static GtkWidget *
-custom_widget_constructor (GladeXML              *xml,
-                           char                  *func_name,
-                           char                  *name,
-                           char                  *string1,
-                           char                  *string2,
-                           int                    int1,
-                           int                    int2,
-                           GdmGreeterLoginWindow *login_window)
-{
-        GtkWidget *widget;
-
-        g_assert (GLADE_IS_XML (xml));
-        g_assert (name != NULL);
-        g_assert (GDM_IS_GREETER_LOGIN_WINDOW (login_window));
-
-        gdm_profile_start (NULL);
-
-        widget = NULL;
-
-        if (strcmp (name, "user-chooser") == 0) {
-               widget = gdm_user_chooser_widget_new ();
-        }
-
-        gdm_profile_end (NULL);
-
-        return widget;
-}
 
 static void
 load_theme (GdmGreeterLoginWindow *login_window)
@@ -1071,18 +1040,19 @@ load_theme (GdmGreeterLoginWindow *login_window)
         GtkWidget *button;
         GtkWidget *box;
         GtkWidget *image;
+        GError* error = NULL;
 
         gdm_profile_start (NULL);
 
-        glade_set_custom_handler ((GladeXMLCustomWidgetHandler) custom_widget_constructor,
-                                  login_window);
-        login_window->priv->xml = glade_xml_new (GLADEDIR "/" GLADE_XML_FILE,
-                                                 "window-frame",
-                                                 PACKAGE);
+        login_window->priv->builder = gtk_builder_new ();
+        if (!gtk_builder_add_from_file (login_window->priv->builder, UIDIR "/" UI_XML_FILE, &error)) {
+                g_warning ("Couldn't load builder file: %s", error->message);
+                g_error_free (error);
+        }
 
-        g_assert (login_window->priv->xml != NULL);
+        g_assert (login_window->priv->builder != NULL);
 
-        image = glade_xml_get_widget (login_window->priv->xml, "logo-image");
+        image = GTK_WIDGET (gtk_builder_get_object (login_window->priv->builder, "logo-image"));
         if (image != NULL) {
                 char        *icon_name;
                 GError      *error;
@@ -1104,14 +1074,12 @@ load_theme (GdmGreeterLoginWindow *login_window)
                 }
         }
 
-        box = glade_xml_get_widget (login_window->priv->xml, "window-frame");
+        box = GTK_WIDGET (gtk_builder_get_object (login_window->priv->builder, "window-frame"));
         gtk_container_add (GTK_CONTAINER (login_window), box);
 
-        login_window->priv->user_chooser = glade_xml_get_widget (login_window->priv->xml,
-                                                                 "user-chooser");
-        if (login_window->priv->user_chooser == NULL) {
-                g_critical ("Userlist box not found");
-        }
+        login_window->priv->user_chooser = gdm_user_chooser_widget_new ();
+        box = GTK_WIDGET (gtk_builder_get_object (login_window->priv->builder, "selection-box"));
+        gtk_box_pack_start (GTK_BOX (box), login_window->priv->user_chooser, TRUE, TRUE, 0);
 
         gdm_user_chooser_widget_set_show_only_chosen (GDM_USER_CHOOSER_WIDGET (login_window->priv->user_chooser), TRUE);
 
@@ -1135,13 +1103,13 @@ load_theme (GdmGreeterLoginWindow *login_window)
 
         gtk_widget_show (login_window->priv->user_chooser);
 
-        login_window->priv->auth_banner_label = glade_xml_get_widget (login_window->priv->xml, "auth-banner-label");
+        login_window->priv->auth_banner_label = GTK_WIDGET (gtk_builder_get_object (login_window->priv->builder, "auth-banner-label"));
         /*make_label_small_italic (login_window->priv->auth_banner_label);*/
 
-        button = glade_xml_get_widget (login_window->priv->xml, "cancel-button");
+        button = GTK_WIDGET (gtk_builder_get_object (login_window->priv->builder, "cancel-button"));
         g_signal_connect (button, "clicked", G_CALLBACK (cancel_button_clicked), login_window);
 
-        entry = glade_xml_get_widget (login_window->priv->xml, "auth-prompt-entry");
+        entry = GTK_WIDGET (gtk_builder_get_object (login_window->priv->builder, "auth-prompt-entry"));
         /* Only change the invisible character if it '*' otherwise assume it is OK */
         if ('*' == gtk_entry_get_invisible_char (GTK_ENTRY (entry))) {
                 gunichar invisible_char;
@@ -1151,7 +1119,7 @@ load_theme (GdmGreeterLoginWindow *login_window)
 
         create_computer_info (login_window);
 
-        box = glade_xml_get_widget (login_window->priv->xml, "computer-info-event-box");
+        box = GTK_WIDGET (gtk_builder_get_object (login_window->priv->builder, "computer-info-event-box"));
         g_signal_connect (box, "button-press-event", G_CALLBACK (on_computer_info_label_button_press), login_window);
 
         switch_mode (login_window, MODE_SELECTION);
diff --git a/gui/simple-greeter/gdm-greeter-login-window.ui b/gui/simple-greeter/gdm-greeter-login-window.ui
new file mode 100644
index 0000000..7889982
--- /dev/null
+++ b/gui/simple-greeter/gdm-greeter-login-window.ui
@@ -0,0 +1,434 @@
+<?xml version="1.0"?>
+<interface>
+  <requires lib="gtk+" version="2.16"/>
+  <!-- interface-naming-policy toplevel-contextual -->
+  <object class="GtkWindow" id="window1">
+    <property name="height_request">400</property>
+    <property name="visible">True</property>
+    <property name="title" translatable="yes">Authentication Dialog</property>
+    <property name="type_hint">dialog</property>
+    <child>
+      <object class="GtkFrame" id="window-frame">
+        <property name="visible">True</property>
+        <property name="label_xalign">0</property>
+        <property name="shadow_type">out</property>
+        <child>
+          <object class="GtkAlignment" id="alignment2">
+            <property name="visible">True</property>
+            <property name="border_width">24</property>
+            <child>
+              <object class="GtkVBox" id="window-box">
+                <property name="visible">True</property>
+                <property name="spacing">10</property>
+                <child>
+                  <object class="GtkAlignment" id="alignment1">
+                    <property name="visible">True</property>
+                    <child>
+                      <object class="GtkImage" id="logo-image">
+                        <property name="visible">True</property>
+                        <property name="pixel_size">64</property>
+                        <property name="icon_name">computer</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="GtkEventBox" id="computer-info-event-box">
+                    <property name="visible">True</property>
+                    <property name="visible_window">False</property>
+                    <child>
+                      <object class="GtkNotebook" id="computer-info-notebook">
+                        <property name="visible">True</property>
+                        <property name="show_tabs">False</property>
+                        <property name="show_border">False</property>
+                        <child>
+                          <object class="GtkLabel" id="computer-info-name-label">
+                            <property name="visible">True</property>
+                            <property name="label" translatable="yes">Computer Name</property>
+                          </object>
+                        </child>
+                        <child type="tab">
+                          <object class="GtkLabel" id="label3">
+                            <property name="visible">True</property>
+                            <property name="label">page 5</property>
+                          </object>
+                          <packing>
+                            <property name="tab_fill">False</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkLabel" id="computer-info-version-label">
+                            <property name="visible">True</property>
+                            <property name="label" translatable="yes">Version</property>
+                          </object>
+                          <packing>
+                            <property name="position">1</property>
+                          </packing>
+                        </child>
+                        <child type="tab">
+                          <object class="GtkLabel" id="label11">
+                            <property name="visible">True</property>
+                          </object>
+                          <packing>
+                            <property name="position">1</property>
+                            <property name="tab_fill">False</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <placeholder/>
+                        </child>
+                        <child type="tab">
+                          <object class="GtkLabel" id="label12">
+                            <property name="visible">True</property>
+                          </object>
+                          <packing>
+                            <property name="position">2</property>
+                            <property name="tab_fill">False</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <placeholder/>
+                        </child>
+                        <child type="tab">
+                          <object class="GtkLabel" id="label13">
+                            <property name="visible">True</property>
+                          </object>
+                          <packing>
+                            <property name="position">3</property>
+                            <property name="tab_fill">False</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <placeholder/>
+                        </child>
+                        <child type="tab">
+                          <object class="GtkLabel" id="label14">
+                            <property name="visible">True</property>
+                          </object>
+                          <packing>
+                            <property name="position">4</property>
+                            <property name="tab_fill">False</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <placeholder/>
+                        </child>
+                        <child type="tab">
+                          <object class="GtkLabel" id="label15">
+                            <property name="visible">True</property>
+                          </object>
+                          <packing>
+                            <property name="position">5</property>
+                            <property name="tab_fill">False</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <placeholder/>
+                        </child>
+                        <child type="tab">
+                          <object class="GtkLabel" id="label16">
+                            <property name="visible">True</property>
+                          </object>
+                          <packing>
+                            <property name="position">6</property>
+                            <property name="tab_fill">False</property>
+                          </packing>
+                        </child>
+                      </object>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="fill">False</property>
+                    <property name="position">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkLabel" id="auth-banner-label">
+                    <property name="visible">True</property>
+                    <property name="justify">center</property>
+                    <property name="wrap">True</property>
+                  </object>
+                  <packing>
+                    <property name="position">3</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkAlignment" id="alignment3">
+                    <property name="visible">True</property>
+                    <child>
+                      <object class="GtkVBox" id="selection-box">
+                        <property name="visible">True</property>
+                        <property name="spacing">10</property>
+                        <child>
+                          <placeholder/>
+                        </child>
+                        <child>
+                          <object class="GtkHBox" id="auth-input-box">
+                            <property name="visible">True</property>
+                            <property name="spacing">6</property>
+                            <child>
+                              <object class="GtkLabel" id="auth-prompt-label">
+                                <property name="visible">True</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="auth-prompt-entry">
+                                <property name="visible">True</property>
+                                <property name="can_focus">True</property>
+                                <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                                <property name="activates_default">True</property>
+                              </object>
+                              <packing>
+                                <property name="position">1</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                            <property name="position">1</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkHBox" id="auth-message-box">
+                            <property name="visible">True</property>
+                            <child>
+                              <object class="GtkLabel" id="auth-message-label">
+                                <property name="visible">True</property>
+                              </object>
+                              <packing>
+                                <property name="position">0</property>
+                              </packing>
+                            </child>
+                          </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="position">4</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkHButtonBox" id="buttonbox">
+                    <property name="visible">True</property>
+                    <property name="spacing">6</property>
+                    <property name="layout_style">end</property>
+                    <child>
+                      <object class="GtkButton" id="disconnect-button">
+                        <property name="label">gtk-disconnect</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="suspend-button">
+                        <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="GtkHBox" id="hbox3">
+                            <property name="visible">True</property>
+                            <child>
+                              <object class="GtkImage" id="image9">
+                                <property name="visible">True</property>
+                                <property name="pixel_size">16</property>
+                                <property name="icon_name">media-playback-pause</property>
+                              </object>
+                              <packing>
+                                <property name="position">0</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkLabel" id="label4">
+                                <property name="visible">True</property>
+                                <property name="xalign">0</property>
+                                <property name="label" translatable="yes">Suspend</property>
+                              </object>
+                              <packing>
+                                <property name="position">1</property>
+                              </packing>
+                            </child>
+                          </object>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="expand">False</property>
+                        <property name="fill">False</property>
+                        <property name="position">1</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkButton" id="restart-button">
+                        <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="GtkHBox" id="hbox1">
+                            <property name="visible">True</property>
+                            <child>
+                              <object class="GtkImage" id="image7">
+                                <property name="visible">True</property>
+                                <property name="pixel_size">16</property>
+                                <property name="icon_name">view-refresh</property>
+                              </object>
+                              <packing>
+                                <property name="position">0</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkLabel" id="label2">
+                                <property name="visible">True</property>
+                                <property name="xalign">0</property>
+                                <property name="label" translatable="yes">Restart</property>
+                              </object>
+                              <packing>
+                                <property name="position">1</property>
+                              </packing>
+                            </child>
+                          </object>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="expand">False</property>
+                        <property name="fill">False</property>
+                        <property name="position">2</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkButton" id="shutdown-button">
+                        <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="GtkHBox" id="hbox4">
+                            <property name="visible">True</property>
+                            <child>
+                              <object class="GtkImage" id="image5">
+                                <property name="visible">True</property>
+                                <property name="pixel_size">16</property>
+                                <property name="icon_name">system-shutdown</property>
+                              </object>
+                              <packing>
+                                <property name="position">0</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkLabel" id="label10">
+                                <property name="visible">True</property>
+                                <property name="label" translatable="yes">Shut Down</property>
+                              </object>
+                              <packing>
+                                <property name="position">1</property>
+                              </packing>
+                            </child>
+                          </object>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="expand">False</property>
+                        <property name="fill">False</property>
+                        <property name="position">3</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkButton" id="cancel-button">
+                        <property name="label">gtk-cancel</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">4</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkButton" id="log-in-button">
+                        <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="GtkHBox" id="hbox5">
+                            <property name="visible">True</property>
+                            <child>
+                              <object class="GtkImage" id="image1">
+                                <property name="visible">True</property>
+                                <property name="pixel_size">16</property>
+                                <property name="icon_name">go-home</property>
+                              </object>
+                              <packing>
+                                <property name="position">0</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkLabel" id="label1">
+                                <property name="visible">True</property>
+                                <property name="xalign">0</property>
+                                <property name="label" translatable="yes">Log In</property>
+                              </object>
+                              <packing>
+                                <property name="position">1</property>
+                              </packing>
+                            </child>
+                          </object>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="expand">False</property>
+                        <property name="fill">False</property>
+                        <property name="position">5</property>
+                      </packing>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="fill">False</property>
+                    <property name="pack_type">end</property>
+                    <property name="position">2</property>
+                  </packing>
+                </child>
+              </object>
+            </child>
+          </object>
+        </child>
+      </object>
+    </child>
+  </object>
+</interface>
diff --git a/gui/user-switch-applet/applet.c b/gui/user-switch-applet/applet.c
index 3d5b2e7..f213a07 100644
--- a/gui/user-switch-applet/applet.c
+++ b/gui/user-switch-applet/applet.c
@@ -31,7 +31,6 @@
 #include <gconf/gconf.h>
 #include <gconf/gconf-client.h>
 
-#include <glade/glade-xml.h>
 #include <dbus/dbus-glib.h>
 
 #include <bonobo/bonobo-main.h>
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 60b2175..1fccb90 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -66,8 +66,7 @@ gui/simple-greeter/gdm-chooser-widget.c
 gui/simple-greeter/gdm-clock-widget.c
 gui/simple-greeter/gdm-greeter-login-window.c
 gui/simple-greeter/gdm-greeter-login-window.c
-gui/simple-greeter/gdm-greeter-login-window.glade
-gui/simple-greeter/gdm-greeter-login-window.glade
+[type: gettext/glade]gui/simple-greeter/gdm-greeter-login-window.ui
 gui/simple-greeter/gdm-greeter-panel.c
 gui/simple-greeter/gdm-language-chooser-dialog.c
 gui/simple-greeter/gdm-language-chooser-widget.c



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