[contact-lookup-applet] Convert c-l-a to use gtkbuilder.



commit 21d00bcd2fe22cad413e64d63afd69fd8537fdce
Author: Brian Pepple <bpepple fedoraproject org>
Date:   Tue May 5 19:25:45 2009 -0400

    Convert c-l-a to use gtkbuilder.

 configure.ac                  |    7 +-
 data/Makefile.am              |    2 +-
 data/contact-lookup-applet.ui |  666 +++++++++++++++++++++++++++++++++++++++++
 po/POTFILES.in                |    2 +-
 src/Makefile.am               |    4 +-
 src/contact-dialog.c          |    2 +-
 src/glade-utils.c             |   62 ++---
 src/glade-utils.h             |   11 +-
 8 files changed, 702 insertions(+), 54 deletions(-)
---
diff --git a/configure.ac b/configure.ac
index 836111a..43ead25 100644
--- a/configure.ac
+++ b/configure.ac
@@ -27,7 +27,7 @@ AM_GLIB_GNU_GETTEXT
 AC_PATH_PROG([GLIB_GENMARSHAL],[glib-genmarshal])
 
 dnl GTK+
-PKG_CHECK_MODULES(GTK, gtk+-2.0 >= 2.7.3)
+PKG_CHECK_MODULES(GTK, gtk+-2.0 >= 2.12.0)
 AC_SUBST(GTK_CFLAGS)
 AC_SUBST(GTK_LIBS)
 
@@ -36,11 +36,6 @@ PKG_CHECK_MODULES(PANEL, libgnomeui-2.0 libpanelapplet-2.0 >= 2.9.4)
 AC_SUBST(PANEL_CFLAGS)
 AC_SUBST(PANEL_LIBS)
 
-dnl libglade
-PKG_CHECK_MODULES(GLADE, libglade-2.0)
-AC_SUBST(GLADE_CFLAGS)
-AC_SUBST(GLADE_LIBS)
-
 dnl Evolution address book
 PKG_CHECK_MODULES(TMP_EVO, libebook-1.2,
 		evo_pc_file="libebook-1.2",
diff --git a/data/Makefile.am b/data/Makefile.am
index 31d83b7..24418d4 100644
--- a/data/Makefile.am
+++ b/data/Makefile.am
@@ -1,7 +1,7 @@
 # UI for the applet
 uidir = $(datadir)/lookup-applet/
 # TODO: should the xml be in $(datadir)/gnome-2.0/ui?
-ui_DATA = GNOME_ContactLookupApplet.xml contact-lookup-applet.glade
+ui_DATA = GNOME_ContactLookupApplet.xml contact-lookup-applet.ui
 
 # Bonobo server file for the applet factory
 serverdir = $(libdir)/bonobo/servers
diff --git a/data/contact-lookup-applet.ui b/data/contact-lookup-applet.ui
new file mode 100644
index 0000000..4ceedbd
--- /dev/null
+++ b/data/contact-lookup-applet.ui
@@ -0,0 +1,666 @@
+<?xml version="1.0"?>
+<!--*- mode: xml -*-->
+<interface>
+  <object class="GtkWindow" id="dialog">
+    <property name="title" translatable="yes">Address Card</property>
+    <property name="type">GTK_WINDOW_TOPLEVEL</property>
+    <property name="window_position">GTK_WIN_POS_NONE</property>
+    <property name="modal">False</property>
+    <property name="resizable">False</property>
+    <property name="destroy_with_parent">False</property>
+    <property name="decorated">True</property>
+    <property name="skip_taskbar_hint">False</property>
+    <property name="skip_pager_hint">False</property>
+    <property name="type_hint">GDK_WINDOW_TYPE_HINT_NORMAL</property>
+    <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
+    <property name="focus_on_map">True</property>
+    <property name="urgency_hint">False</property>
+    <child>
+      <object class="GtkTable" id="table5">
+        <property name="border_width">12</property>
+        <property name="visible">True</property>
+        <property name="n_rows">3</property>
+        <property name="n_columns">1</property>
+        <property name="homogeneous">False</property>
+        <property name="row_spacing">12</property>
+        <property name="column_spacing">0</property>
+        <child>
+          <object class="GtkButton" id="button3">
+            <property name="sensitive">False</property>
+            <property name="can_focus">True</property>
+            <property name="label" translatable="yes">_Edit Contact Information</property>
+            <property name="use_underline">True</property>
+            <property name="relief">GTK_RELIEF_NORMAL</property>
+            <property name="focus_on_click">True</property>
+            <signal handler="gtk_main_quit" last_modification_time="Tue, 18 Nov 2003 02:12:19 GMT" name="clicked"/>
+          </object>
+          <packing>
+            <property name="left_attach">0</property>
+            <property name="right_attach">1</property>
+            <property name="top_attach">2</property>
+            <property name="bottom_attach">3</property>
+            <property name="x_options">fill</property>
+            <property name="y_options"/>
+          </packing>
+        </child>
+        <child>
+          <object class="GtkVBox" id="vbox2">
+            <property name="visible">True</property>
+            <property name="homogeneous">False</property>
+            <property name="spacing">8</property>
+            <child>
+              <object class="GtkLabel" id="online_label">
+                <property name="label" translatable="yes">&lt;b&gt;"Foo" is online&lt;/b&gt;</property>
+                <property name="use_underline">False</property>
+                <property name="use_markup">True</property>
+                <property name="justify">GTK_JUSTIFY_LEFT</property>
+                <property name="wrap">False</property>
+                <property name="selectable">False</property>
+                <property name="xalign">0</property>
+                <property name="yalign">0.5</property>
+                <property name="xpad">0</property>
+                <property name="ypad">0</property>
+                <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                <property name="width_chars">-1</property>
+                <property name="single_line_mode">False</property>
+                <property name="angle">0</property>
+              </object>
+              <packing>
+                <property name="padding">0</property>
+                <property name="expand">False</property>
+                <property name="fill">False</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkTable" id="im_box">
+                <property name="visible">True</property>
+                <property name="n_rows">2</property>
+                <property name="n_columns">3</property>
+                <property name="homogeneous">False</property>
+                <property name="row_spacing">4</property>
+                <property name="column_spacing">8</property>
+                <child>
+                  <object class="GtkImage" id="im_image">
+                    <property name="visible">True</property>
+                    <property name="xalign">0.5</property>
+                    <property name="yalign">0</property>
+                    <property name="xpad">0</property>
+                    <property name="ypad">0</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">0</property>
+                    <property name="right_attach">1</property>
+                    <property name="top_attach">0</property>
+                    <property name="bottom_attach">2</property>
+                    <property name="x_options">fill</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkLabel" id="label28">
+                    <property name="visible">True</property>
+                    <property name="label" translatable="yes">&lt;b&gt;Instant Messaging&lt;/b&gt;</property>
+                    <property name="use_underline">False</property>
+                    <property name="use_markup">True</property>
+                    <property name="justify">GTK_JUSTIFY_LEFT</property>
+                    <property name="wrap">False</property>
+                    <property name="selectable">False</property>
+                    <property name="xalign">0</property>
+                    <property name="yalign">0.5</property>
+                    <property name="xpad">0</property>
+                    <property name="ypad">0</property>
+                    <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                    <property name="width_chars">-1</property>
+                    <property name="single_line_mode">False</property>
+                    <property name="angle">0</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">1</property>
+                    <property name="right_attach">3</property>
+                    <property name="top_attach">0</property>
+                    <property name="bottom_attach">1</property>
+                    <property name="y_options"/>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkComboBox" id="im_combo">
+                    <property name="visible">True</property>
+                    <property name="add_tearoffs">False</property>
+                    <property name="focus_on_click">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">fill</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkButton" id="im_button">
+                    <property name="sensitive">False</property>
+                    <property name="can_focus">True</property>
+                    <property name="label" translatable="yes">Send _Instant Message</property>
+                    <property name="use_underline">True</property>
+                    <property name="relief">GTK_RELIEF_NORMAL</property>
+                    <property name="focus_on_click">True</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">2</property>
+                    <property name="right_attach">3</property>
+                    <property name="top_attach">1</property>
+                    <property name="bottom_attach">2</property>
+                    <property name="x_options"/>
+                    <property name="y_options">fill</property>
+                  </packing>
+                </child>
+              </object>
+              <packing>
+                <property name="padding">0</property>
+                <property name="expand">True</property>
+                <property name="fill">True</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkTable" id="email_box">
+                <property name="visible">True</property>
+                <property name="n_rows">2</property>
+                <property name="n_columns">3</property>
+                <property name="homogeneous">False</property>
+                <property name="row_spacing">4</property>
+                <property name="column_spacing">8</property>
+                <child>
+                  <object class="GtkImage" id="email_image">
+                    <property name="visible">True</property>
+                    <property name="xalign">0.5</property>
+                    <property name="yalign">0</property>
+                    <property name="xpad">0</property>
+                    <property name="ypad">0</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">0</property>
+                    <property name="right_attach">1</property>
+                    <property name="top_attach">0</property>
+                    <property name="bottom_attach">2</property>
+                    <property name="x_options">fill</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkLabel" id="label37">
+                    <property name="visible">True</property>
+                    <property name="label" translatable="yes">&lt;b&gt;Electronic Mail&lt;/b&gt;</property>
+                    <property name="use_underline">False</property>
+                    <property name="use_markup">True</property>
+                    <property name="justify">GTK_JUSTIFY_LEFT</property>
+                    <property name="wrap">False</property>
+                    <property name="selectable">False</property>
+                    <property name="xalign">0</property>
+                    <property name="yalign">0.5</property>
+                    <property name="xpad">0</property>
+                    <property name="ypad">0</property>
+                    <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                    <property name="width_chars">-1</property>
+                    <property name="single_line_mode">False</property>
+                    <property name="angle">0</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">1</property>
+                    <property name="right_attach">3</property>
+                    <property name="top_attach">0</property>
+                    <property name="bottom_attach">1</property>
+                    <property name="y_options"/>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkComboBox" id="email_combo">
+                    <property name="visible">True</property>
+                    <property name="add_tearoffs">False</property>
+                    <property name="focus_on_click">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">fill</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkButton" id="email_button">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="label" translatable="yes">Compose _Mail Message	</property>
+                    <property name="use_underline">True</property>
+                    <property name="relief">GTK_RELIEF_NORMAL</property>
+                    <property name="focus_on_click">True</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">2</property>
+                    <property name="right_attach">3</property>
+                    <property name="top_attach">1</property>
+                    <property name="bottom_attach">2</property>
+                    <property name="x_options">fill</property>
+                    <property name="y_options">fill</property>
+                  </packing>
+                </child>
+              </object>
+              <packing>
+                <property name="padding">0</property>
+                <property name="expand">True</property>
+                <property name="fill">True</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkTable" id="video_box">
+                <property name="visible">True</property>
+                <property name="n_rows">2</property>
+                <property name="n_columns">3</property>
+                <property name="homogeneous">False</property>
+                <property name="row_spacing">0</property>
+                <property name="column_spacing">8</property>
+                <child>
+                  <object class="GtkButton" id="video_button">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="label" translatable="yes">Start _Video Conference</property>
+                    <property name="use_underline">True</property>
+                    <property name="relief">GTK_RELIEF_NORMAL</property>
+                    <property name="focus_on_click">True</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">2</property>
+                    <property name="right_attach">3</property>
+                    <property name="top_attach">0</property>
+                    <property name="bottom_attach">2</property>
+                    <property name="x_options">fill</property>
+                    <property name="y_options"/>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkImage" id="video_image">
+                    <property name="visible">True</property>
+                    <property name="xalign">0.5</property>
+                    <property name="yalign">0.5</property>
+                    <property name="xpad">0</property>
+                    <property name="ypad">0</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">0</property>
+                    <property name="right_attach">1</property>
+                    <property name="top_attach">0</property>
+                    <property name="bottom_attach">2</property>
+                    <property name="x_options">fill</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkLabel" id="label34">
+                    <property name="visible">True</property>
+                    <property name="label" translatable="yes">&lt;b&gt;Video Conferencing&lt;/b&gt;</property>
+                    <property name="use_underline">False</property>
+                    <property name="use_markup">True</property>
+                    <property name="justify">GTK_JUSTIFY_LEFT</property>
+                    <property name="wrap">False</property>
+                    <property name="selectable">False</property>
+                    <property name="xalign">0</property>
+                    <property name="yalign">0.5</property>
+                    <property name="xpad">0</property>
+                    <property name="ypad">0</property>
+                    <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                    <property name="width_chars">-1</property>
+                    <property name="single_line_mode">False</property>
+                    <property name="angle">0</property>
+                  </object>
+                  <packing>
+                    <property name="left_attach">1</property>
+                    <property name="right_attach">2</property>
+                    <property name="top_attach">0</property>
+                    <property name="bottom_attach">1</property>
+                    <property name="y_options"/>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkLabel" id="video_label">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="label" translatable="yes">VIDEO</property>
+                    <property name="use_underline">False</property>
+                    <property name="use_markup">False</property>
+                    <property name="justify">GTK_JUSTIFY_LEFT</property>
+                    <property name="wrap">False</property>
+                    <property name="selectable">True</property>
+                    <property name="xalign">0</property>
+                    <property name="yalign">0.5</property>
+                    <property name="xpad">0</property>
+                    <property name="ypad">0</property>
+                    <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                    <property name="width_chars">-1</property>
+                    <property name="single_line_mode">False</property>
+                    <property name="angle">0</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"/>
+                  </packing>
+                </child>
+              </object>
+              <packing>
+                <property name="padding">0</property>
+                <property name="expand">True</property>
+                <property name="fill">True</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="left_attach">0</property>
+            <property name="right_attach">1</property>
+            <property name="top_attach">1</property>
+            <property name="bottom_attach">2</property>
+            <property name="x_options">fill</property>
+          </packing>
+        </child>
+        <child>
+          <object class="GtkTable" id="table9">
+            <property name="visible">True</property>
+            <property name="n_rows">1</property>
+            <property name="n_columns">2</property>
+            <property name="homogeneous">False</property>
+            <property name="row_spacing">8</property>
+            <property name="column_spacing">8</property>
+            <child>
+              <object class="GtkVBox" id="vbox4">
+                <property name="visible">True</property>
+                <property name="homogeneous">False</property>
+                <property name="spacing">0</property>
+                <child>
+                  <object class="GtkViewport" id="photo_frame">
+                    <property name="visible">True</property>
+                    <property name="shadow_type">GTK_SHADOW_ETCHED_IN</property>
+                    <child>
+                      <object class="GtkImage" id="photo_image">
+                        <property name="visible">True</property>
+                        <property name="xalign">0.5</property>
+                        <property name="yalign">0.5</property>
+                        <property name="xpad">0</property>
+                        <property name="ypad">0</property>
+                      </object>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="padding">0</property>
+                    <property name="expand">False</property>
+                    <property name="fill">True</property>
+                  </packing>
+                </child>
+                <child>
+                  <placeholder/>
+                </child>
+              </object>
+              <packing>
+                <property name="left_attach">0</property>
+                <property name="right_attach">1</property>
+                <property name="top_attach">0</property>
+                <property name="bottom_attach">1</property>
+                <property name="x_options"/>
+                <property name="y_options">fill</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkVBox" id="vbox1">
+                <property name="visible">True</property>
+                <property name="homogeneous">False</property>
+                <property name="spacing">4</property>
+                <child>
+                  <object class="GtkLabel" id="name_label">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="label" translatable="yes">NAME</property>
+                    <property name="use_underline">False</property>
+                    <property name="use_markup">False</property>
+                    <property name="justify">GTK_JUSTIFY_LEFT</property>
+                    <property name="wrap">False</property>
+                    <property name="selectable">True</property>
+                    <property name="xalign">0</property>
+                    <property name="yalign">0.5</property>
+                    <property name="xpad">0</property>
+                    <property name="ypad">0</property>
+                    <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                    <property name="width_chars">-1</property>
+                    <property name="single_line_mode">False</property>
+                    <property name="angle">0</property>
+                  </object>
+                  <packing>
+                    <property name="padding">0</property>
+                    <property name="expand">False</property>
+                    <property name="fill">False</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkTable" id="address_box">
+                    <property name="visible">True</property>
+                    <property name="n_rows">1</property>
+                    <property name="n_columns">2</property>
+                    <property name="homogeneous">False</property>
+                    <property name="row_spacing">0</property>
+                    <property name="column_spacing">0</property>
+                    <child>
+                      <object class="GtkLabel" id="address_label">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">ADDRESS</property>
+                        <property name="use_underline">False</property>
+                        <property name="use_markup">False</property>
+                        <property name="justify">GTK_JUSTIFY_LEFT</property>
+                        <property name="wrap">False</property>
+                        <property name="selectable">False</property>
+                        <property name="xalign">0</property>
+                        <property name="yalign">0.5</property>
+                        <property name="xpad">0</property>
+                        <property name="ypad">0</property>
+                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                        <property name="width_chars">-1</property>
+                        <property name="single_line_mode">False</property>
+                        <property name="angle">0</property>
+                      </object>
+                      <packing>
+                        <property name="left_attach">0</property>
+                        <property name="right_attach">1</property>
+                        <property name="top_attach">0</property>
+                        <property name="bottom_attach">1</property>
+                        <property name="y_options"/>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkVBox" id="vbox5">
+                        <property name="visible">True</property>
+                        <property name="homogeneous">False</property>
+                        <property name="spacing">0</property>
+                        <child>
+                          <object class="GtkComboBox" id="address_combo">
+                            <property name="visible">True</property>
+                            <property name="add_tearoffs">False</property>
+                            <property name="focus_on_click">True</property>
+                          </object>
+                          <packing>
+                            <property name="padding">0</property>
+                            <property name="expand">False</property>
+                            <property name="fill">False</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <placeholder/>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
+                        <property name="top_attach">0</property>
+                        <property name="bottom_attach">1</property>
+                        <property name="x_options">fill</property>
+                        <property name="y_options">fill</property>
+                      </packing>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="padding">0</property>
+                    <property name="expand">True</property>
+                    <property name="fill">True</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkLabel" id="phone_label">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="label" translatable="yes">PHONE</property>
+                    <property name="use_underline">False</property>
+                    <property name="use_markup">False</property>
+                    <property name="justify">GTK_JUSTIFY_LEFT</property>
+                    <property name="wrap">False</property>
+                    <property name="selectable">True</property>
+                    <property name="xalign">0</property>
+                    <property name="yalign">0.5</property>
+                    <property name="xpad">0</property>
+                    <property name="ypad">0</property>
+                    <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                    <property name="width_chars">-1</property>
+                    <property name="single_line_mode">False</property>
+                    <property name="angle">0</property>
+                  </object>
+                  <packing>
+                    <property name="padding">0</property>
+                    <property name="expand">False</property>
+                    <property name="fill">False</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkHBox" id="homepage_box">
+                    <property name="visible">True</property>
+                    <property name="homogeneous">False</property>
+                    <property name="spacing">4</property>
+                    <child>
+                      <object class="GtkLabel" id="homepage_label">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="label" translatable="yes">HOME PAGE</property>
+                        <property name="use_underline">False</property>
+                        <property name="use_markup">False</property>
+                        <property name="justify">GTK_JUSTIFY_LEFT</property>
+                        <property name="wrap">False</property>
+                        <property name="selectable">True</property>
+                        <property name="xalign">0</property>
+                        <property name="yalign">0.5</property>
+                        <property name="xpad">0</property>
+                        <property name="ypad">0</property>
+                        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                        <property name="width_chars">-1</property>
+                        <property name="single_line_mode">False</property>
+                        <property name="angle">0</property>
+                      </object>
+                      <packing>
+                        <property name="padding">0</property>
+                        <property name="expand">True</property>
+                        <property name="fill">True</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkButton" id="homepage_button">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="relief">GTK_RELIEF_NORMAL</property>
+                        <property name="focus_on_click">True</property>
+                        <child>
+                          <object class="GtkAlignment" id="alignment1">
+                            <property name="visible">True</property>
+                            <property name="xalign">0.5</property>
+                            <property name="yalign">0.5</property>
+                            <property name="xscale">0</property>
+                            <property name="yscale">0</property>
+                            <property name="top_padding">0</property>
+                            <property name="bottom_padding">0</property>
+                            <property name="left_padding">0</property>
+                            <property name="right_padding">0</property>
+                            <child>
+                              <object class="GtkHBox" id="hbox2">
+                                <property name="visible">True</property>
+                                <property name="homogeneous">False</property>
+                                <property name="spacing">2</property>
+                                <child>
+                                  <object class="GtkImage" id="image5">
+                                    <property name="visible">True</property>
+                                    <property name="stock">gtk-jump-to</property>
+                                    <property name="icon_size">4</property>
+                                    <property name="xalign">0.5</property>
+                                    <property name="yalign">0.5</property>
+                                    <property name="xpad">0</property>
+                                    <property name="ypad">0</property>
+                                  </object>
+                                  <packing>
+                                    <property name="padding">0</property>
+                                    <property name="expand">False</property>
+                                    <property name="fill">False</property>
+                                  </packing>
+                                </child>
+                                <child>
+                                  <object class="GtkLabel" id="label35">
+                                    <property name="visible">True</property>
+                                    <property name="label" translatable="yes">_Go</property>
+                                    <property name="use_underline">True</property>
+                                    <property name="use_markup">False</property>
+                                    <property name="justify">GTK_JUSTIFY_LEFT</property>
+                                    <property name="wrap">False</property>
+                                    <property name="selectable">False</property>
+                                    <property name="xalign">0.5</property>
+                                    <property name="yalign">0.5</property>
+                                    <property name="xpad">0</property>
+                                    <property name="ypad">0</property>
+                                    <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
+                                    <property name="width_chars">-1</property>
+                                    <property name="single_line_mode">False</property>
+                                    <property name="angle">0</property>
+                                  </object>
+                                  <packing>
+                                    <property name="padding">0</property>
+                                    <property name="expand">False</property>
+                                    <property name="fill">False</property>
+                                  </packing>
+                                </child>
+                              </object>
+                            </child>
+                          </object>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="padding">0</property>
+                        <property name="expand">False</property>
+                        <property name="fill">False</property>
+                      </packing>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="padding">0</property>
+                    <property name="expand">False</property>
+                    <property name="fill">False</property>
+                  </packing>
+                </child>
+              </object>
+              <packing>
+                <property name="left_attach">1</property>
+                <property name="right_attach">2</property>
+                <property name="top_attach">0</property>
+                <property name="bottom_attach">1</property>
+                <property name="y_options">fill</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="left_attach">0</property>
+            <property name="right_attach">1</property>
+            <property name="top_attach">0</property>
+            <property name="bottom_attach">1</property>
+            <property name="x_options">fill</property>
+          </packing>
+        </child>
+      </object>
+    </child>
+  </object>
+</interface>
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 23fa6bf..4d8db8c 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -2,7 +2,7 @@
 # Please keep this file sorted alphabetically.
 data/GNOME_ContactLookupApplet.server.in.in
 data/GNOME_ContactLookupApplet.xml
-data/contact-lookup-applet.glade
+[type: gettext/glade]data/contact-lookup-applet.ui
 src/contact-dialog.c
 src/contact-fields.c
 src/contact-lookup-applet.c
diff --git a/src/Makefile.am b/src/Makefile.am
index 56b3adb..41daf89 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -42,5 +42,5 @@ contact_lookup_applet_SOURCES = \
 	glade-utils.h \
 	glade-utils.c
 
-contact_lookup_applet_CFLAGS = $(GLADE_CFLAGS) $(PANEL_CFLAGS) $(GTK_CFLAGS) $(EVO_CFLAGS) -Wall
-contact_lookup_applet_LDADD = $(GLADE_LIBS) $(PANEL_LIBS) $(GTK_LIBS) $(EVO_LIBS) libecontactentry.la
+contact_lookup_applet_CFLAGS = $(PANEL_CFLAGS) $(GTK_CFLAGS) $(EVO_CFLAGS) -Wall
+contact_lookup_applet_LDADD = $(PANEL_LIBS) $(GTK_LIBS) $(EVO_LIBS) libecontactentry.la
diff --git a/src/contact-dialog.c b/src/contact-dialog.c
index c393c05..16f531a 100644
--- a/src/contact-dialog.c
+++ b/src/contact-dialog.c
@@ -316,7 +316,7 @@ GtkWidget *contact_dialog_new (EContact *contact, const char *identifier)
   e_vcard_dump_structure ((EVCard*)contact);
 #endif
 
-  utils_glade_get_file_simple (PKGDATADIR"/contact-lookup-applet.glade", NULL, NULL,
+  utils_glade_get_file_simple (PKGDATADIR"/contact-lookup-applet.ui",
                                "dialog", &dialog,
                                "photo_image", &photo_image,
                                "photo_frame", &photo_frame,
diff --git a/src/glade-utils.c b/src/glade-utils.c
index 4aa8364..2e13403 100644
--- a/src/glade-utils.c
+++ b/src/glade-utils.c
@@ -25,60 +25,54 @@
 #endif /* HAVE_CONFIG_H */
 
 #include <glib/gi18n.h>
-#include <glade/glade-xml.h>
 #include <gtk/gtk.h>
 
 /*
  * This code is taken from Gossip, (C) 2003 Imendio.
  */
 
-static GladeXML *
+static GtkBuilder *
 get_glade_file (const gchar *filename,
-		const gchar *root,
-		const gchar *domain,
 		const gchar *first_required_widget, va_list args)
 {
-	GladeXML   *gui;
+	GtkBuilder *gui;
 	const char *name;
-	GtkWidget **widget_ptr;
-
-	gui = glade_xml_new (filename, root, domain);
-	if (!gui) {
-		g_warning (_("Couldn't find necessary glade file '%s'"), filename);
+	GObject   **widget_ptr;
+	GError     *err = NULL;
+
+	gui = gtk_builder_new ();
+	gtk_builder_set_translation_domain (gui, GETTEXT_PACKAGE);
+	if (gtk_builder_add_from_file (gui, filename, &err) == 0) {
+		g_warning (_("UI file error: %s"), err->message);
+		g_error_free (err);
 		return NULL;
 	}
 
 	for (name = first_required_widget; name; name = va_arg (args, char *)) {
 		widget_ptr = va_arg (args, void *);
 		
-		*widget_ptr = glade_xml_get_widget (gui, name);
+		*widget_ptr = gtk_builder_get_object (gui, name);
 		
 		if (!*widget_ptr) {
-			g_warning (_("Glade file '%s' is missing widget '%s'."),
+			g_warning (_("UI file '%s' is missing widget '%s'."),
 				   filename, name);
 			continue;
 		}
 	}
-
-	//tagify_bold_labels (gui);
 	
 	return gui;
 }
 
 void
 utils_glade_get_file_simple (const gchar *filename,
-			      const gchar *root,
-			      const gchar *domain,
-			      const gchar *first_required_widget, ...)
+			     const gchar *first_required_widget, ...)
 {
-	va_list   args;
-	GladeXML *gui;
+	va_list     args;
+	GtkBuilder *gui;
 
 	va_start (args, first_required_widget);
 
 	gui = get_glade_file (filename,
-			      root,
-			      domain,
 			      first_required_widget,
 			      args);
 	
@@ -91,20 +85,16 @@ utils_glade_get_file_simple (const gchar *filename,
 	g_object_unref (gui);
 }
 
-GladeXML *
+GtkBuilder *
 utils_glade_get_file (const gchar *filename,
-		       const gchar *root,
-		       const gchar *domain,
-		       const gchar *first_required_widget, ...)
+		      const gchar *first_required_widget, ...)
 {
-	va_list   args;
-	GladeXML *gui;
+	va_list     args;
+	GtkBuilder *gui;
 
 	va_start (args, first_required_widget);
 
 	gui = get_glade_file (filename,
-			      root,
-			      domain,
 			      first_required_widget,
 			      args);
 	
@@ -118,12 +108,12 @@ utils_glade_get_file (const gchar *filename,
 }
 
 void
-utils_glade_setup_size_group (GladeXML         *gui,
-			       GtkSizeGroupMode  mode,
-			       gchar            *first_widget, ...)
+utils_glade_setup_size_group (GtkBuilder        *gui,
+			      GtkSizeGroupMode  mode,
+			      gchar            *first_widget, ...)
 {
 	va_list       args;
-	GtkWidget    *widget;
+	GObject      *widget;
 	GtkSizeGroup *size_group;
 	const gchar  *name;
 
@@ -132,13 +122,13 @@ utils_glade_setup_size_group (GladeXML         *gui,
 	size_group = gtk_size_group_new (mode);
 	
 	for (name = first_widget; name; name = va_arg (args, char *)) {
-		widget = glade_xml_get_widget (gui, name);
+		widget = gtk_builder_get_object (gui, name);
 		if (!widget) {
-			g_warning (_("Glade file is missing widget '%s'"), name);
+			g_warning (_("UI file is missing widget '%s'"), name);
 			continue;
 		}
 
-		gtk_size_group_add_widget (size_group, widget);
+		gtk_size_group_add_widget (size_group, GTK_WIDGET (widget));
 	}
 
 	g_object_unref (size_group);
diff --git a/src/glade-utils.h b/src/glade-utils.h
index be0ca2a..a96b702 100644
--- a/src/glade-utils.h
+++ b/src/glade-utils.h
@@ -31,20 +31,17 @@
  * This code is taken from Gossip, (C) 2003 Imendio.
  */
 
-#include <glade/glade-xml.h>
 #include <gtk/gtk.h>
 
 void utils_glade_get_file_simple (const gchar *filename,
-                                  const gchar *root, const gchar *domain,
                                   const gchar *first_required_widget,
                                   ...);
 
-GladeXML *utils_glade_get_file (const gchar *filename,
-                                const gchar *root, const gchar *domain,
-                                const gchar *first_required_widget,
-                                ...);
+GtkBuilder *utils_glade_get_file (const gchar *filename,
+				  const gchar *first_required_widget,
+				  ...);
 
-void utils_glade_setup_size_group (GladeXML *gui, GtkSizeGroupMode mode,
+void utils_glade_setup_size_group (GtkBuilder *gui, GtkSizeGroupMode mode,
                                    gchar *first_widget, ...);
 
 GdkPixbuf* get_icon (const char* icon_name, GtkIconSize size);



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