[Goodies-commits] r7580 - in xfce4-power-manager/trunk: . data data/interfaces libxfpm po settings

Ali Abdallah aliov at xfce.org
Mon Jun 15 15:42:47 CEST 2009


Author: aliov
Date: 2009-06-15 13:42:47 +0000 (Mon, 15 Jun 2009)
New Revision: 7580

Added:
   xfce4-power-manager/trunk/data/interfaces/
   xfce4-power-manager/trunk/data/interfaces/Makefile.am
   xfce4-power-manager/trunk/data/interfaces/xfpm-settings.ui
Removed:
   xfce4-power-manager/trunk/settings/xfpm-settings.glade
Modified:
   xfce4-power-manager/trunk/ChangeLog
   xfce4-power-manager/trunk/configure.ac.in
   xfce4-power-manager/trunk/data/Makefile.am
   xfce4-power-manager/trunk/libxfpm/xfpm-common.c
   xfce4-power-manager/trunk/libxfpm/xfpm-common.h
   xfce4-power-manager/trunk/po/POTFILES.in
   xfce4-power-manager/trunk/po/xfce4-power-manager.pot
   xfce4-power-manager/trunk/settings/Makefile.am
   xfce4-power-manager/trunk/settings/xfpm-settings.c
Log:
	* Remove libglade and use GtkBuilder instead.

Modified: xfce4-power-manager/trunk/ChangeLog
===================================================================
--- xfce4-power-manager/trunk/ChangeLog	2009-06-15 13:30:37 UTC (rev 7579)
+++ xfce4-power-manager/trunk/ChangeLog	2009-06-15 13:42:47 UTC (rev 7580)
@@ -1,3 +1,6 @@
+2009-06-15: 15:40 Ali aliov at xfce.org
+	* Remove libglade and use GtkBuilder instead.
+
 2009-06-09: 11:00 Ali aliov at xfce.org
 	*: Updating documentation
 	*: Don't accept any event for non mapped buttons

Modified: xfce4-power-manager/trunk/configure.ac.in
===================================================================
--- xfce4-power-manager/trunk/configure.ac.in	2009-06-15 13:30:37 UTC (rev 7579)
+++ xfce4-power-manager/trunk/configure.ac.in	2009-06-15 13:42:47 UTC (rev 7580)
@@ -61,22 +61,19 @@
 m4_define([libxfcegui4_minimum_version],[4.6.0])
 m4_define([libxfce4util_minimum_version],[4.6.0])
 m4_define([libxfce4panel_minimum_version],[4.6.0])
-m4_define([glade_minimum_version], [2.0.0])
 
 m4_define([libnotify_minimum_version], [0.4.1])
 
-
-
 XDT_CHECK_PACKAGE([GTK], [gtk+-2.0], [gtk_minimum_version])
 XDT_CHECK_PACKAGE([GLIB], [glib-2.0], [glib_minimum_version])
 XDT_CHECK_PACKAGE([GOBJECT], [gobject-2.0], [glib_minimum_version])
 XDT_CHECK_PACKAGE([GTHREAD], [gthread-2.0], [glib_minimum_version])
+XDT_CHECK_PACKAGE([GMODULE], [gmodule-2.0], [glib_minimum_version])
 XDT_CHECK_PACKAGE([DBUS], [dbus-1], [dbus_minimum_version])
 XDT_CHECK_PACKAGE([DBUS_GLIB], [dbus-glib-1], [dbus_glib_minimum_version])
 XDT_CHECK_PACKAGE([XFCONF], [libxfconf-0],[xfconf_minimum_version])
 XDT_CHECK_PACKAGE([LIBXFCE4GUI], [libxfcegui4-1.0],[libxfcegui4_minimum_version])
 XDT_CHECK_PACKAGE([LIBXFCE4UTIL], [libxfce4util-1.0],[libxfce4util_minimum_version])
-XDT_CHECK_PACKAGE([LIBGLADE], [libglade-2.0],[glade_minimum_version])
 XDT_CHECK_PACKAGE([LIBNOTIFY],[libnotify], [libnotify_minimum_version])
 
 #=======================================================#
@@ -110,7 +107,21 @@
   AC_DEFINE(HAVE_XF86XK_HIBERNATE, 1, [Define if XF86XK_Hibernate is available])
 fi
 
+# Taken from Gnome system tools
 #=======================================================#
+#              Pixmaps and interface files              #
+#=======================================================#
+if test "x${prefix}" = "xNONE"; then
+  AC_DEFINE_UNQUOTED(INTERFACES_DIR, "${ac_default_prefix}/${DATADIRNAME}/${PACKAGE}/ui", [path where UI files will be installed])
+  interfacesdir="${ac_default_prefix}/${DATADIRNAME}/${PACKAGE}/ui"
+else
+  AC_DEFINE_UNQUOTED(INTERFACES_DIR, "${prefix}/${DATADIRNAME}/${PACKAGE}/ui", [path where UI files will be installed])
+  interfacesdir="${prefix}/${DATADIRNAME}/${PACKAGE}/ui"
+fi
+
+AC_SUBST(interfacesdir)
+
+#=======================================================#
 #                 Panel plugins ?                       #
 #=======================================================#
 AC_ARG_ENABLE([panel_plugins],
@@ -174,6 +185,7 @@
 data/icons/scalable/Makefile
 data/icons/scalable/status/Makefile
 data/icons/scalable/actions/Makefile
+data/interfaces/Makefile
 doc/Makefile
 doc/C/Makefile
 doc/C/xfce4-power-manager.xml
@@ -188,6 +200,7 @@
  
 	prefix:			$prefix
 	xdg autostart:		$sysconfdir/xdg/autostart
+	interfaces dir:		$interfacesdir
    	DPMS         support:   $have_dpms
   	Build panel  plugins:   $build_panel_plugins
    	Debug        support:   $enable_debug

Modified: xfce4-power-manager/trunk/data/Makefile.am
===================================================================
--- xfce4-power-manager/trunk/data/Makefile.am	2009-06-15 13:30:37 UTC (rev 7579)
+++ xfce4-power-manager/trunk/data/Makefile.am	2009-06-15 13:42:47 UTC (rev 7580)
@@ -1 +1,3 @@
-SUBDIRS = icons
\ No newline at end of file
+SUBDIRS = 		\
+	icons		\
+	interfaces
\ No newline at end of file

Added: xfce4-power-manager/trunk/data/interfaces/Makefile.am
===================================================================
--- xfce4-power-manager/trunk/data/interfaces/Makefile.am	                        (rev 0)
+++ xfce4-power-manager/trunk/data/interfaces/Makefile.am	2009-06-15 13:42:47 UTC (rev 7580)
@@ -0,0 +1,9 @@
+interfaces =					\
+	xfpm-settings.ui
+
+
+interfaces_DATA = 				\
+	$(interfaces)
+
+EXTRA_DIST =					\
+	$(interfaces)
\ No newline at end of file

Added: xfce4-power-manager/trunk/data/interfaces/xfpm-settings.ui
===================================================================
--- xfce4-power-manager/trunk/data/interfaces/xfpm-settings.ui	                        (rev 0)
+++ xfce4-power-manager/trunk/data/interfaces/xfpm-settings.ui	2009-06-15 13:42:47 UTC (rev 7580)
@@ -0,0 +1,1463 @@
+<?xml version="1.0"?>
+<interface>
+  <!-- interface-requires gtk+ 2.12 -->
+  <requires lib="xfce4" version="2360.6128"/>
+  <!-- interface-naming-policy toplevel-contextual -->
+  <object class="GtkAdjustment" id="adjustment1">
+    <property name="value">30</property>
+    <property name="lower">30</property>
+    <property name="upper">360</property>
+    <property name="step_increment">1</property>
+    <property name="page_increment">10</property>
+    <property name="page_size">10</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment2">
+    <property name="value">17</property>
+    <property name="upper">60</property>
+    <property name="step_increment">1</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment3">
+    <property name="value">15</property>
+    <property name="upper">60</property>
+    <property name="step_increment">1</property>
+    <property name="page_size">10</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment4">
+    <property name="value">10</property>
+    <property name="lower">9</property>
+    <property name="upper">120</property>
+    <property name="step_increment">1</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment5">
+    <property name="value">30</property>
+    <property name="lower">30</property>
+    <property name="upper">360</property>
+    <property name="step_increment">1</property>
+    <property name="page_increment">10</property>
+    <property name="page_size">10</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment6">
+    <property name="value">5</property>
+    <property name="upper">60</property>
+    <property name="step_increment">1</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment7">
+    <property name="value">5</property>
+    <property name="upper">60</property>
+    <property name="step_increment">1</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment8">
+    <property name="value">10</property>
+    <property name="lower">9</property>
+    <property name="upper">120</property>
+    <property name="step_increment">1</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment9">
+    <property name="value">5</property>
+    <property name="lower">5</property>
+    <property name="upper">20</property>
+    <property name="step_increment">1</property>
+  </object>
+  <object class="GtkListStore" id="model1">
+    <columns>
+      <!-- column-name gchararray -->
+      <column type="gchararray"/>
+    </columns>
+    <data>
+      <row>
+        <col id="0" translatable="yes">Nothing</col>
+      </row>
+    </data>
+  </object>
+  <object class="GtkListStore" id="model2">
+    <columns>
+      <!-- column-name gchararray -->
+      <column type="gchararray"/>
+    </columns>
+    <data>
+      <row>
+        <col id="0" translatable="yes">Always show icon</col>
+      </row>
+    </data>
+  </object>
+  <object class="GtkListStore" id="model3">
+    <columns>
+      <!-- column-name gchararray -->
+      <column type="gchararray"/>
+    </columns>
+    <data>
+      <row>
+        <col id="0" translatable="yes">Nothing</col>
+      </row>
+    </data>
+  </object>
+  <object class="GtkListStore" id="model4">
+    <columns>
+      <!-- column-name gchararray -->
+      <column type="gchararray"/>
+    </columns>
+    <data>
+      <row>
+        <col id="0" translatable="yes">Nothing</col>
+      </row>
+    </data>
+  </object>
+  <object class="GtkListStore" id="model5">
+    <columns>
+      <!-- column-name gchararray -->
+      <column type="gchararray"/>
+    </columns>
+    <data>
+      <row>
+        <col id="0" translatable="yes">Nothing</col>
+      </row>
+    </data>
+  </object>
+  <object class="GtkListStore" id="model6">
+    <columns>
+      <!-- column-name gchararray -->
+      <column type="gchararray"/>
+    </columns>
+    <data>
+      <row>
+        <col id="0" translatable="yes">Nothing</col>
+      </row>
+    </data>
+  </object>
+  <object class="GtkListStore" id="model7">
+    <columns>
+      <!-- column-name gchararray -->
+      <column type="gchararray"/>
+    </columns>
+    <data>
+      <row>
+        <col id="0" translatable="yes">Nothing</col>
+      </row>
+    </data>
+  </object>
+  <object class="XfceTitledDialog" id="xfpm-settings-dialog">
+    <property name="border_width">5</property>
+    <property name="title" translatable="yes">Xfce Power Manager</property>
+    <property name="window_position">center-on-parent</property>
+    <property name="icon_name">xfpm-ac-adapter</property>
+    <property name="type_hint">dialog</property>
+    <property name="has_separator">False</property>
+    <property name="subtitle" translatable="yes">Power manager settings</property>
+    <child internal-child="vbox">
+      <object class="GtkVBox" id="dialog-vbox">
+        <property name="visible">True</property>
+        <property name="spacing">2</property>
+        <child>
+          <object class="GtkVBox" id="allbox">
+            <property name="visible">True</property>
+            <child>
+              <object class="GtkHBox" id="hbox">
+                <property name="visible">True</property>
+                <child>
+                  <object class="GtkTreeView" id="treeview">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="headers_visible">False</property>
+                    <property name="enable_search">False</property>
+                    <signal name="cursor_changed" handler="_cursor_changed_cb"/>
+                  </object>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="position">0</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkNotebook" id="main-notebook">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="show_tabs">False</property>
+                    <child>
+                      <object class="GtkVBox" id="vbox16">
+                        <property name="visible">True</property>
+                        <property name="spacing">10</property>
+                        <child>
+                          <object class="GtkFrame" id="frame">
+                            <property name="visible">True</property>
+                            <property name="label_xalign">0</property>
+                            <property name="shadow_type">none</property>
+                            <child>
+                              <object class="GtkAlignment" id="alignment">
+                                <property name="visible">True</property>
+                                <property name="left_padding">12</property>
+                                <child>
+                                  <object class="GtkVBox" id="vbox17">
+                                    <property name="visible">True</property>
+                                    <property name="spacing">10</property>
+                                    <child>
+                                      <object class="GtkTable" id="table3">
+                                        <property name="visible">True</property>
+                                        <property name="n_rows">4</property>
+                                        <property name="n_columns">2</property>
+                                        <property name="column_spacing">10</property>
+                                        <property name="row_spacing">10</property>
+                                        <child>
+                                          <object class="GtkHBox" id="hbox13">
+                                            <property name="visible">True</property>
+                                            <child>
+                                              <object class="GtkComboBox" id="power-combox">
+                                                <property name="visible">True</property>
+                                                <property name="model">model1</property>
+                                                <signal name="changed" handler="button_power_changed_cb"/>
+                                                <child>
+                                                  <object class="GtkCellRendererText" id="renderer1"/>
+                                                  <attributes>
+                                                    <attribute name="text">0</attribute>
+                                                  </attributes>
+                                                </child>
+                                              </object>
+                                              <packing>
+                                                <property name="expand">False</property>
+                                                <property name="position">0</property>
+                                              </packing>
+                                            </child>
+                                          </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>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkHBox" id="hbox14">
+                                            <property name="visible">True</property>
+                                            <child>
+                                              <object class="GtkComboBox" id="tray-combox">
+                                                <property name="visible">True</property>
+                                                <property name="model">model2</property>
+                                                <signal name="changed" handler="set_show_tray_icon_cb"/>
+                                                <child>
+                                                  <object class="GtkCellRendererText" id="renderer2"/>
+                                                  <attributes>
+                                                    <attribute name="text">0</attribute>
+                                                  </attributes>
+                                                </child>
+                                              </object>
+                                              <packing>
+                                                <property name="expand">False</property>
+                                                <property name="position">0</property>
+                                              </packing>
+                                            </child>
+                                          </object>
+                                          <packing>
+                                            <property name="left_attach">1</property>
+                                            <property name="right_attach">2</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkHBox" id="hbox15">
+                                            <property name="visible">True</property>
+                                            <child>
+                                              <object class="GtkLabel" id="label24">
+                                                <property name="visible">True</property>
+                                                <property name="label" translatable="yes">System tray icon: </property>
+                                              </object>
+                                              <packing>
+                                                <property name="expand">False</property>
+                                                <property name="position">0</property>
+                                              </packing>
+                                            </child>
+                                          </object>
+                                        </child>
+                                        <child>
+                                          <object class="GtkHBox" id="hbox16">
+                                            <property name="visible">True</property>
+                                            <child>
+                                              <object class="GtkLabel" id="power-label">
+                                                <property name="visible">True</property>
+                                                <property name="label" translatable="yes">When power button is pressed:</property>
+                                              </object>
+                                              <packing>
+                                                <property name="expand">False</property>
+                                                <property name="position">0</property>
+                                              </packing>
+                                            </child>
+                                          </object>
+                                          <packing>
+                                            <property name="top_attach">1</property>
+                                            <property name="bottom_attach">2</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkHBox" id="hbox3">
+                                            <property name="visible">True</property>
+                                            <child>
+                                              <object class="GtkLabel" id="hibernate-label">
+                                                <property name="visible">True</property>
+                                                <property name="label" translatable="yes">When hibernate button is pressed:</property>
+                                              </object>
+                                              <packing>
+                                                <property name="expand">False</property>
+                                                <property name="position">0</property>
+                                              </packing>
+                                            </child>
+                                          </object>
+                                          <packing>
+                                            <property name="top_attach">2</property>
+                                            <property name="bottom_attach">3</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkHBox" id="hbox4">
+                                            <property name="visible">True</property>
+                                            <child>
+                                              <object class="GtkComboBox" id="hibernate-combox">
+                                                <property name="visible">True</property>
+                                                <property name="model">model3</property>
+                                                <signal name="changed" handler="button_hibernate_changed_cb"/>
+                                                <child>
+                                                  <object class="GtkCellRendererText" id="renderer3"/>
+                                                  <attributes>
+                                                    <attribute name="text">0</attribute>
+                                                  </attributes>
+                                                </child>
+                                              </object>
+                                              <packing>
+                                                <property name="expand">False</property>
+                                                <property name="position">0</property>
+                                              </packing>
+                                            </child>
+                                          </object>
+                                          <packing>
+                                            <property name="left_attach">1</property>
+                                            <property name="right_attach">2</property>
+                                            <property name="top_attach">2</property>
+                                            <property name="bottom_attach">3</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkHBox" id="hbox5">
+                                            <property name="visible">True</property>
+                                            <child>
+                                              <object class="GtkLabel" id="sleep-label">
+                                                <property name="visible">True</property>
+                                                <property name="label" translatable="yes">When sleep button is pressed:</property>
+                                              </object>
+                                              <packing>
+                                                <property name="expand">False</property>
+                                                <property name="position">0</property>
+                                              </packing>
+                                            </child>
+                                          </object>
+                                          <packing>
+                                            <property name="top_attach">3</property>
+                                            <property name="bottom_attach">4</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkHBox" id="hbox6">
+                                            <property name="visible">True</property>
+                                            <child>
+                                              <object class="GtkComboBox" id="sleep-combox">
+                                                <property name="visible">True</property>
+                                                <property name="model">model4</property>
+                                                <signal name="changed" handler="button_sleep_changed_cb"/>
+                                                <child>
+                                                  <object class="GtkCellRendererText" id="renderer4"/>
+                                                  <attributes>
+                                                    <attribute name="text">0</attribute>
+                                                  </attributes>
+                                                </child>
+                                              </object>
+                                              <packing>
+                                                <property name="expand">False</property>
+                                                <property name="position">0</property>
+                                              </packing>
+                                            </child>
+                                          </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>
+                                          </packing>
+                                        </child>
+                                      </object>
+                                      <packing>
+                                        <property name="expand">False</property>
+                                        <property name="position">0</property>
+                                      </packing>
+                                    </child>
+                                    <child>
+                                      <object class="GtkCheckButton" id="enable-dpms">
+                                        <property name="label" translatable="yes">Enable monitor power management control</property>
+                                        <property name="visible">True</property>
+                                        <property name="can_focus">True</property>
+                                        <property name="receives_default">False</property>
+                                        <property name="draw_indicator">True</property>
+                                        <signal name="toggled" handler="dpms_toggled_cb"/>
+                                      </object>
+                                      <packing>
+                                        <property name="expand">False</property>
+                                        <property name="position">1</property>
+                                      </packing>
+                                    </child>
+                                    <child>
+                                      <object class="GtkCheckButton" id="notification">
+                                        <property name="label" translatable="yes">Enable notification</property>
+                                        <property name="visible">True</property>
+                                        <property name="can_focus">True</property>
+                                        <property name="receives_default">False</property>
+                                        <property name="draw_indicator">True</property>
+                                        <signal name="toggled" handler="notify_toggled_cb"/>
+                                      </object>
+                                      <packing>
+                                        <property name="expand">False</property>
+                                        <property name="position">2</property>
+                                      </packing>
+                                    </child>
+                                  </object>
+                                </child>
+                              </object>
+                            </child>
+                            <child type="label">
+                              <object class="GtkLabel" id="label26">
+                                <property name="visible">True</property>
+                                <property name="label" translatable="yes"><b>General Options</b></property>
+                                <property name="use_markup">True</property>
+                              </object>
+                            </child>
+                          </object>
+                          <packing>
+                            <property name="position">0</property>
+                          </packing>
+                        </child>
+                      </object>
+                    </child>
+                    <child type="tab">
+                      <object class="GtkLabel" id="General">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">General</property>
+                      </object>
+                      <packing>
+                        <property name="tab_fill">False</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkNotebook" id="on-ac-notebook">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <child>
+                          <object class="GtkVBox" id="vbox18">
+                            <property name="visible">True</property>
+                            <property name="orientation">vertical</property>
+                            <property name="spacing">10</property>
+                            <child>
+                              <object class="GtkFrame" id="on-ac-actions-frame">
+                                <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">5</property>
+                                    <property name="left_padding">15</property>
+                                    <child>
+                                      <object class="GtkVBox" id="vbox19">
+                                        <property name="visible">True</property>
+                                        <property name="orientation">vertical</property>
+                                        <property name="spacing">20</property>
+                                        <child>
+                                          <object class="GtkHBox" id="hbox17">
+                                            <property name="visible">True</property>
+                                            <property name="spacing">10</property>
+                                            <child>
+                                              <object class="GtkLabel" id="on-ac-lid-label">
+                                                <property name="visible">True</property>
+                                                <property name="label" translatable="yes">When laptop lid is closed:</property>
+                                              </object>
+                                              <packing>
+                                                <property name="expand">False</property>
+                                                <property name="position">0</property>
+                                              </packing>
+                                            </child>
+                                            <child>
+                                              <object class="GtkComboBox" id="on-ac-lid">
+                                                <property name="visible">True</property>
+                                                <property name="model">model5</property>
+                                                <signal name="changed" handler="on_ac_lid_changed_cb"/>
+                                                <child>
+                                                  <object class="GtkCellRendererText" id="renderer5"/>
+                                                  <attributes>
+                                                    <attribute name="text">0</attribute>
+                                                  </attributes>
+                                                </child>
+                                              </object>
+                                              <packing>
+                                                <property name="expand">False</property>
+                                                <property name="position">1</property>
+                                              </packing>
+                                            </child>
+                                          </object>
+                                          <packing>
+                                            <property name="expand">False</property>
+                                            <property name="position">0</property>
+                                          </packing>
+                                        </child>
+                                      </object>
+                                    </child>
+                                  </object>
+                                </child>
+                                <child type="label">
+                                  <object class="GtkLabel" id="sleep">
+                                    <property name="visible">True</property>
+                                    <property name="label" translatable="yes"><b>Actions</b></property>
+                                    <property name="use_markup">True</property>
+                                  </object>
+                                </child>
+                              </object>
+                              <packing>
+                                <property name="expand">False</property>
+                                <property name="padding">10</property>
+                                <property name="position">0</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkVBox" id="vbox1">
+                                <property name="visible">True</property>
+                                <property name="orientation">vertical</property>
+                                <child>
+                                  <object class="GtkLabel" id="label9">
+                                    <property name="visible">True</property>
+                                    <property name="label" translatable="yes">Put the computer to sleep when inactive for:</property>
+                                  </object>
+                                  <packing>
+                                    <property name="position">0</property>
+                                  </packing>
+                                </child>
+                                <child>
+                                  <object class="GtkHScale" id="inactivity-on-ac">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">True</property>
+                                    <property name="adjustment">adjustment1</property>
+                                    <property name="digits">0</property>
+                                    <property name="value_pos">bottom</property>
+                                    <signal name="value_changed" handler="inactivity_on_ac_value_changed_cb"/>
+                                    <signal name="format_value" handler="format_inactivity_value_cb"/>
+                                  </object>
+                                  <packing>
+                                    <property name="position">1</property>
+                                  </packing>
+                                </child>
+                              </object>
+                              <packing>
+                                <property name="expand">False</property>
+                                <property name="position">1</property>
+                              </packing>
+                            </child>
+                          </object>
+                        </child>
+                        <child type="tab">
+                          <object class="GtkLabel" id="Actions-on-ac">
+                            <property name="visible">True</property>
+                            <property name="label" translatable="yes">Actions</property>
+                          </object>
+                          <packing>
+                            <property name="tab_fill">False</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkVBox" id="vbox6">
+                            <property name="visible">True</property>
+                            <property name="orientation">vertical</property>
+                            <child>
+                              <object class="GtkFrame" id="dpms-on-ac-frame">
+                                <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">5</property>
+                                    <property name="left_padding">15</property>
+                                    <child>
+                                      <object class="GtkVBox" id="vbox20">
+                                        <property name="visible">True</property>
+                                        <property name="orientation">vertical</property>
+                                        <property name="spacing">20</property>
+                                        <child>
+                                          <object class="GtkVBox" id="vbox21">
+                                            <property name="visible">True</property>
+                                            <property name="orientation">vertical</property>
+                                            <child>
+                                              <object class="GtkLabel" id="label28">
+                                                <property name="visible">True</property>
+                                                <property name="label" translatable="yes">Put display to sleep when computer is inactive for:</property>
+                                              </object>
+                                              <packing>
+                                                <property name="position">0</property>
+                                              </packing>
+                                            </child>
+                                            <child>
+                                              <object class="GtkHScale" id="sleep-dpms-on-ac">
+                                                <property name="visible">True</property>
+                                                <property name="can_focus">True</property>
+                                                <property name="adjustment">adjustment2</property>
+                                                <property name="show_fill_level">True</property>
+                                                <property name="digits">0</property>
+                                                <property name="value_pos">bottom</property>
+                                                <signal name="value_changed" handler="sleep_on_ac_value_changed_cb"/>
+                                                <signal name="format_value" handler="format_dpms_value_cb"/>
+                                              </object>
+                                              <packing>
+                                                <property name="position">1</property>
+                                              </packing>
+                                            </child>
+                                          </object>
+                                          <packing>
+                                            <property name="expand">False</property>
+                                            <property name="position">0</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkVBox" id="vbox22">
+                                            <property name="visible">True</property>
+                                            <property name="orientation">vertical</property>
+                                            <child>
+                                              <object class="GtkLabel" id="label29">
+                                                <property name="visible">True</property>
+                                                <property name="label" translatable="yes">Switch off display when computer is inactive for:</property>
+                                              </object>
+                                              <packing>
+                                                <property name="position">0</property>
+                                              </packing>
+                                            </child>
+                                            <child>
+                                              <object class="GtkHScale" id="off-dpms-on-ac">
+                                                <property name="visible">True</property>
+                                                <property name="can_focus">True</property>
+                                                <property name="adjustment">adjustment3</property>
+                                                <property name="show_fill_level">True</property>
+                                                <property name="digits">0</property>
+                                                <property name="value_pos">bottom</property>
+                                                <signal name="value_changed" handler="off_on_ac_value_changed_cb"/>
+                                                <signal name="format_value" handler="format_dpms_value_cb"/>
+                                              </object>
+                                              <packing>
+                                                <property name="position">1</property>
+                                              </packing>
+                                            </child>
+                                          </object>
+                                          <packing>
+                                            <property name="expand">False</property>
+                                            <property name="position">1</property>
+                                          </packing>
+                                        </child>
+                                      </object>
+                                    </child>
+                                  </object>
+                                </child>
+                                <child type="label">
+                                  <object class="GtkLabel" id="label30">
+                                    <property name="visible">True</property>
+                                    <property name="label" translatable="yes"><b>Monitor</b></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="on-ac-brg-frame">
+                                <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">5</property>
+                                    <property name="left_padding">15</property>
+                                    <child>
+                                      <object class="GtkVBox" id="vbox23">
+                                        <property name="visible">True</property>
+                                        <property name="orientation">vertical</property>
+                                        <property name="spacing">10</property>
+                                        <child>
+                                          <object class="GtkLabel" id="label31">
+                                            <property name="visible">True</property>
+                                            <property name="label" translatable="yes">Reduce screen brightness when computer is inactive for:</property>
+                                          </object>
+                                          <packing>
+                                            <property name="expand">False</property>
+                                            <property name="position">0</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkHScale" id="brg-on-ac">
+                                            <property name="visible">True</property>
+                                            <property name="can_focus">True</property>
+                                            <property name="adjustment">adjustment4</property>
+                                            <property name="digits">0</property>
+                                            <property name="value_pos">bottom</property>
+                                            <signal name="value_changed" handler="brightness_on_ac_value_changed_cb"/>
+                                            <signal name="format_value" handler="format_brightness_value_cb"/>
+                                          </object>
+                                          <packing>
+                                            <property name="expand">False</property>
+                                            <property name="position">1</property>
+                                          </packing>
+                                        </child>
+                                      </object>
+                                    </child>
+                                  </object>
+                                </child>
+                                <child type="label">
+                                  <object class="GtkLabel" id="label32">
+                                    <property name="visible">True</property>
+                                    <property name="label" translatable="yes"><b>Brightness</b></property>
+                                    <property name="use_markup">True</property>
+                                  </object>
+                                </child>
+                              </object>
+                              <packing>
+                                <property name="expand">False</property>
+                                <property name="position">1</property>
+                              </packing>
+                            </child>
+                          </object>
+                          <packing>
+                            <property name="position">1</property>
+                          </packing>
+                        </child>
+                        <child type="tab">
+                          <object class="GtkLabel" id="monitor-on-ac">
+                            <property name="visible">True</property>
+                            <property name="label" translatable="yes">Monitor</property>
+                          </object>
+                          <packing>
+                            <property name="position">1</property>
+                            <property name="tab_fill">False</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <placeholder/>
+                        </child>
+                        <child type="tab">
+                          <placeholder/>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="position">1</property>
+                      </packing>
+                    </child>
+                    <child type="tab">
+                      <object class="GtkLabel" id="label8">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">On AC</property>
+                      </object>
+                      <packing>
+                        <property name="position">1</property>
+                        <property name="tab_fill">False</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkVBox" id="vbox24">
+                        <property name="visible">True</property>
+                        <property name="spacing">10</property>
+                        <child>
+                          <object class="GtkNotebook" id="on-battery-notebook">
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <child>
+                              <object class="GtkVBox" id="vbox25">
+                                <property name="visible">True</property>
+                                <property name="orientation">vertical</property>
+                                <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="alignment12">
+                                        <property name="visible">True</property>
+                                        <property name="top_padding">5</property>
+                                        <property name="left_padding">15</property>
+                                        <child>
+                                          <object class="GtkVBox" id="vbox26">
+                                            <property name="visible">True</property>
+                                            <property name="orientation">vertical</property>
+                                            <property name="spacing">10</property>
+                                            <child>
+                                              <object class="GtkTable" id="table4">
+                                                <property name="visible">True</property>
+                                                <property name="n_rows">2</property>
+                                                <property name="n_columns">2</property>
+                                                <property name="column_spacing">10</property>
+                                                <property name="row_spacing">10</property>
+                                                <child>
+                                                  <object class="GtkHBox" id="hbox18">
+                                                    <property name="visible">True</property>
+                                                    <child>
+                                                      <object class="GtkComboBox" id="on-battery-lid">
+                                                        <property name="visible">True</property>
+                                                        <property name="model">model6</property>
+                                                        <signal name="changed" handler="on_battery_lid_changed_cb"/>
+                                                        <child>
+                                                          <object class="GtkCellRendererText" id="renderer6"/>
+                                                          <attributes>
+                                                            <attribute name="text">0</attribute>
+                                                          </attributes>
+                                                        </child>
+                                                      </object>
+                                                      <packing>
+                                                        <property name="expand">False</property>
+                                                        <property name="position">0</property>
+                                                      </packing>
+                                                    </child>
+                                                  </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>
+                                                  </packing>
+                                                </child>
+                                                <child>
+                                                  <object class="GtkHBox" id="hbox19">
+                                                    <property name="visible">True</property>
+                                                    <child>
+                                                      <object class="GtkComboBox" id="battery-critical-combox">
+                                                        <property name="visible">True</property>
+                                                        <property name="model">model7</property>
+                                                        <signal name="changed" handler="battery_critical_changed_cb"/>
+                                                        <child>
+                                                          <object class="GtkCellRendererText" id="renderer7"/>
+                                                          <attributes>
+                                                            <attribute name="text">0</attribute>
+                                                          </attributes>
+                                                        </child>
+                                                      </object>
+                                                      <packing>
+                                                        <property name="expand">False</property>
+                                                        <property name="position">0</property>
+                                                      </packing>
+                                                    </child>
+                                                  </object>
+                                                  <packing>
+                                                    <property name="left_attach">1</property>
+                                                    <property name="right_attach">2</property>
+                                                  </packing>
+                                                </child>
+                                                <child>
+                                                  <object class="GtkHBox" id="hbox20">
+                                                    <property name="visible">True</property>
+                                                    <child>
+                                                      <object class="GtkLabel" id="on-battery-lid-label">
+                                                        <property name="visible">True</property>
+                                                        <property name="label" translatable="yes">When laptop lid is closed:</property>
+                                                      </object>
+                                                      <packing>
+                                                        <property name="expand">False</property>
+                                                        <property name="position">0</property>
+                                                      </packing>
+                                                    </child>
+                                                  </object>
+                                                  <packing>
+                                                    <property name="top_attach">1</property>
+                                                    <property name="bottom_attach">2</property>
+                                                  </packing>
+                                                </child>
+                                                <child>
+                                                  <object class="GtkHBox" id="hbox21">
+                                                    <property name="visible">True</property>
+                                                    <child>
+                                                      <object class="GtkLabel" id="label34">
+                                                        <property name="visible">True</property>
+                                                        <property name="label" translatable="yes">When battery power is critical:</property>
+                                                      </object>
+                                                      <packing>
+                                                        <property name="expand">False</property>
+                                                        <property name="position">0</property>
+                                                      </packing>
+                                                    </child>
+                                                  </object>
+                                                </child>
+                                              </object>
+                                              <packing>
+                                                <property name="expand">False</property>
+                                                <property name="position">0</property>
+                                              </packing>
+                                            </child>
+                                            <child>
+                                              <object class="GtkCheckButton" id="power-save">
+                                                <property name="label" translatable="yes">Prefer power savings over performance</property>
+                                                <property name="visible">True</property>
+                                                <property name="can_focus">True</property>
+                                                <property name="receives_default">False</property>
+                                                <property name="draw_indicator">True</property>
+                                                <signal name="toggled" handler="power_save_toggled_cb"/>
+                                              </object>
+                                              <packing>
+                                                <property name="expand">False</property>
+                                                <property name="position">1</property>
+                                              </packing>
+                                            </child>
+                                            <child>
+                                              <object class="GtkVBox" id="vbox4">
+                                                <property name="visible">True</property>
+                                                <property name="orientation">vertical</property>
+                                                <child>
+                                                  <object class="GtkLabel" id="label6">
+                                                    <property name="visible">True</property>
+                                                    <property name="label" translatable="yes">Put the computer to sleep when inactive for:</property>
+                                                  </object>
+                                                  <packing>
+                                                    <property name="position">0</property>
+                                                  </packing>
+                                                </child>
+                                                <child>
+                                                  <object class="GtkHScale" id="inactivity-on-battery">
+                                                    <property name="visible">True</property>
+                                                    <property name="can_focus">True</property>
+                                                    <property name="adjustment">adjustment5</property>
+                                                    <property name="digits">0</property>
+                                                    <property name="value_pos">bottom</property>
+                                                    <signal name="value_changed" handler="inactivity_on_battery_value_changed_cb"/>
+                                                    <signal name="format_value" handler="format_inactivity_value_cb"/>
+                                                  </object>
+                                                  <packing>
+                                                    <property name="position">1</property>
+                                                  </packing>
+                                                </child>
+                                              </object>
+                                              <packing>
+                                                <property name="position">2</property>
+                                              </packing>
+                                            </child>
+                                          </object>
+                                        </child>
+                                      </object>
+                                    </child>
+                                    <child type="label">
+                                      <object class="GtkLabel" id="label35">
+                                        <property name="visible">True</property>
+                                        <property name="label" translatable="yes"><b>Actions</b></property>
+                                        <property name="use_markup">True</property>
+                                      </object>
+                                    </child>
+                                  </object>
+                                  <packing>
+                                    <property name="expand">False</property>
+                                    <property name="padding">10</property>
+                                    <property name="position">0</property>
+                                  </packing>
+                                </child>
+                              </object>
+                            </child>
+                            <child type="tab">
+                              <object class="GtkLabel" id="actions-on-battery">
+                                <property name="visible">True</property>
+                                <property name="label" translatable="yes">Actions</property>
+                              </object>
+                              <packing>
+                                <property name="tab_fill">False</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkVBox" id="vbox7">
+                                <property name="visible">True</property>
+                                <property name="orientation">vertical</property>
+                                <child>
+                                  <object class="GtkFrame" id="dpms-on-battery-frame">
+                                    <property name="label_xalign">0</property>
+                                    <property name="shadow_type">none</property>
+                                    <child>
+                                      <object class="GtkAlignment" id="alignment13">
+                                        <property name="visible">True</property>
+                                        <property name="top_padding">5</property>
+                                        <property name="left_padding">15</property>
+                                        <child>
+                                          <object class="GtkVBox" id="vbox27">
+                                            <property name="visible">True</property>
+                                            <property name="orientation">vertical</property>
+                                            <property name="spacing">20</property>
+                                            <child>
+                                              <object class="GtkVBox" id="vbox28">
+                                                <property name="visible">True</property>
+                                                <property name="orientation">vertical</property>
+                                                <child>
+                                                  <object class="GtkLabel" id="label36">
+                                                    <property name="visible">True</property>
+                                                    <property name="label" translatable="yes">Put display to sleep when computer is inactive for:</property>
+                                                  </object>
+                                                  <packing>
+                                                    <property name="expand">False</property>
+                                                    <property name="position">0</property>
+                                                  </packing>
+                                                </child>
+                                                <child>
+                                                  <object class="GtkHScale" id="sleep-dpms-on-battery">
+                                                    <property name="visible">True</property>
+                                                    <property name="can_focus">True</property>
+                                                    <property name="adjustment">adjustment6</property>
+                                                    <property name="show_fill_level">True</property>
+                                                    <property name="digits">0</property>
+                                                    <property name="value_pos">bottom</property>
+                                                    <signal name="value_changed" handler="sleep_on_battery_value_changed_cb"/>
+                                                    <signal name="format_value" handler="format_dpms_value_cb"/>
+                                                  </object>
+                                                  <packing>
+                                                    <property name="expand">False</property>
+                                                    <property name="position">1</property>
+                                                  </packing>
+                                                </child>
+                                              </object>
+                                              <packing>
+                                                <property name="expand">False</property>
+                                                <property name="position">0</property>
+                                              </packing>
+                                            </child>
+                                            <child>
+                                              <object class="GtkVBox" id="vbox29">
+                                                <property name="visible">True</property>
+                                                <property name="orientation">vertical</property>
+                                                <child>
+                                                  <object class="GtkLabel" id="label37">
+                                                    <property name="visible">True</property>
+                                                    <property name="label" translatable="yes">Switch off display when computer is inactive for:</property>
+                                                  </object>
+                                                  <packing>
+                                                    <property name="expand">False</property>
+                                                    <property name="position">0</property>
+                                                  </packing>
+                                                </child>
+                                                <child>
+                                                  <object class="GtkHScale" id="off-dpms-on-battery">
+                                                    <property name="visible">True</property>
+                                                    <property name="can_focus">True</property>
+                                                    <property name="adjustment">adjustment7</property>
+                                                    <property name="show_fill_level">True</property>
+                                                    <property name="digits">0</property>
+                                                    <property name="value_pos">bottom</property>
+                                                    <signal name="value_changed" handler="off_on_battery_value_changed_cb"/>
+                                                    <signal name="format_value" handler="format_dpms_value_cb"/>
+                                                  </object>
+                                                  <packing>
+                                                    <property name="expand">False</property>
+                                                    <property name="position">1</property>
+                                                  </packing>
+                                                </child>
+                                              </object>
+                                              <packing>
+                                                <property name="expand">False</property>
+                                                <property name="position">1</property>
+                                              </packing>
+                                            </child>
+                                          </object>
+                                        </child>
+                                      </object>
+                                    </child>
+                                    <child type="label">
+                                      <object class="GtkLabel" id="label38">
+                                        <property name="visible">True</property>
+                                        <property name="label" translatable="yes"><b>Monitor</b></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="on-battery-brg-frame">
+                                    <property name="visible">True</property>
+                                    <property name="label_xalign">0</property>
+                                    <property name="shadow_type">none</property>
+                                    <child>
+                                      <object class="GtkAlignment" id="alignment14">
+                                        <property name="visible">True</property>
+                                        <property name="top_padding">5</property>
+                                        <property name="left_padding">15</property>
+                                        <child>
+                                          <object class="GtkVBox" id="vbox30">
+                                            <property name="visible">True</property>
+                                            <property name="orientation">vertical</property>
+                                            <property name="spacing">10</property>
+                                            <child>
+                                              <object class="GtkLabel" id="label39">
+                                                <property name="visible">True</property>
+                                                <property name="label" translatable="yes">Reduce screen brightness when computer is inactive for:</property>
+                                              </object>
+                                              <packing>
+                                                <property name="expand">False</property>
+                                                <property name="position">0</property>
+                                              </packing>
+                                            </child>
+                                            <child>
+                                              <object class="GtkHScale" id="brg-on-battery">
+                                                <property name="visible">True</property>
+                                                <property name="can_focus">True</property>
+                                                <property name="adjustment">adjustment8</property>
+                                                <property name="digits">0</property>
+                                                <property name="value_pos">bottom</property>
+                                                <signal name="value_changed" handler="brightness_on_battery_value_changed_cb"/>
+                                                <signal name="format_value" handler="format_brightness_value_cb"/>
+                                              </object>
+                                              <packing>
+                                                <property name="expand">False</property>
+                                                <property name="position">1</property>
+                                              </packing>
+                                            </child>
+                                          </object>
+                                        </child>
+                                      </object>
+                                    </child>
+                                    <child type="label">
+                                      <object class="GtkLabel" id="label40">
+                                        <property name="visible">True</property>
+                                        <property name="label" translatable="yes"><b>Brightness</b></property>
+                                        <property name="use_markup">True</property>
+                                      </object>
+                                    </child>
+                                  </object>
+                                  <packing>
+                                    <property name="expand">False</property>
+                                    <property name="position">1</property>
+                                  </packing>
+                                </child>
+                              </object>
+                              <packing>
+                                <property name="position">1</property>
+                              </packing>
+                            </child>
+                            <child type="tab">
+                              <object class="GtkLabel" id="monitor-on-battery">
+                                <property name="visible">True</property>
+                                <property name="label" translatable="yes">Monitor</property>
+                              </object>
+                              <packing>
+                                <property name="position">1</property>
+                                <property name="tab_fill">False</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                            <child type="tab">
+                              <placeholder/>
+                            </child>
+                          </object>
+                          <packing>
+                            <property name="position">0</property>
+                          </packing>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="position">2</property>
+                      </packing>
+                    </child>
+                    <child type="tab">
+                      <object class="GtkLabel" id="label22">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">On battery</property>
+                      </object>
+                      <packing>
+                        <property name="position">2</property>
+                        <property name="tab_fill">False</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="left_padding">12</property>
+                            <child>
+                              <object class="GtkVBox" id="vbox2">
+                                <property name="visible">True</property>
+                                <property name="spacing">12</property>
+                                <child>
+                                  <object class="GtkTable" id="table1">
+                                    <property name="visible">True</property>
+                                    <property name="n_rows">3</property>
+                                    <property name="n_columns">2</property>
+                                    <property name="row_spacing">8</property>
+                                    <child>
+                                      <object class="GtkVBox" id="vbox5">
+                                        <property name="visible">True</property>
+                                        <property name="orientation">vertical</property>
+                                        <child>
+                                          <object class="GtkRadioButton" id="inactivity-suspend">
+                                            <property name="label" translatable="yes">Suspend</property>
+                                            <property name="visible">True</property>
+                                            <property name="can_focus">True</property>
+                                            <property name="receives_default">False</property>
+                                            <property name="active">True</property>
+                                            <property name="draw_indicator">True</property>
+                                            <signal name="toggled" handler="set_suspend_inactivity"/>
+                                          </object>
+                                          <packing>
+                                            <property name="position">0</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkRadioButton" id="inactivity-hibernate">
+                                            <property name="label" translatable="yes">Hibernate</property>
+                                            <property name="visible">True</property>
+                                            <property name="can_focus">True</property>
+                                            <property name="receives_default">False</property>
+                                            <property name="draw_indicator">True</property>
+                                            <property name="group">inactivity-suspend</property>
+                                            <signal name="toggled" handler="set_hibernate_inactivity"/>
+                                          </object>
+                                          <packing>
+                                            <property name="position">1</property>
+                                          </packing>
+                                        </child>
+                                      </object>
+                                      <packing>
+                                        <property name="left_attach">1</property>
+                                        <property name="right_attach">2</property>
+                                      </packing>
+                                    </child>
+                                    <child>
+                                      <object class="GtkVBox" id="vbox3">
+                                        <property name="visible">True</property>
+                                        <property name="orientation">vertical</property>
+                                        <child>
+                                          <object class="GtkRadioButton" id="sleep-dpms-mode">
+                                            <property name="label" translatable="yes">Standby</property>
+                                            <property name="visible">True</property>
+                                            <property name="can_focus">True</property>
+                                            <property name="receives_default">False</property>
+                                            <property name="active">True</property>
+                                            <property name="draw_indicator">True</property>
+                                            <signal name="toggled" handler="set_dpms_standby_mode"/>
+                                          </object>
+                                          <packing>
+                                            <property name="position">0</property>
+                                          </packing>
+                                        </child>
+                                        <child>
+                                          <object class="GtkRadioButton" id="suspend-dpms-mode">
+                                            <property name="label" translatable="yes">Suspend</property>
+                                            <property name="visible">True</property>
+                                            <property name="can_focus">True</property>
+                                            <property name="receives_default">False</property>
+                                            <property name="draw_indicator">True</property>
+                                            <property name="group">sleep-dpms-mode</property>
+                                            <signal name="toggled" handler="set_dpms_suspend_mode"/>
+                                          </object>
+                                          <packing>
+                                            <property name="position">1</property>
+                                          </packing>
+                                        </child>
+                                      </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>
+                                      </packing>
+                                    </child>
+                                    <child>
+                                      <object class="GtkHBox" id="hbox1">
+                                        <property name="visible">True</property>
+                                        <child>
+                                          <object class="GtkLabel" id="label7">
+                                            <property name="visible">True</property>
+                                            <property name="label" translatable="yes">Set computer inactivity sleep mode:</property>
+                                          </object>
+                                          <packing>
+                                            <property name="expand">False</property>
+                                            <property name="position">0</property>
+                                          </packing>
+                                        </child>
+                                      </object>
+                                    </child>
+                                    <child>
+                                      <object class="GtkHBox" id="hbox7">
+                                        <property name="visible">True</property>
+                                        <child>
+                                          <object class="GtkLabel" id="dpms-mode-label">
+                                            <property name="visible">True</property>
+                                            <property name="label" translatable="yes">Set monitor sleep mode:</property>
+                                          </object>
+                                          <packing>
+                                            <property name="expand">False</property>
+                                            <property name="position">0</property>
+                                          </packing>
+                                        </child>
+                                      </object>
+                                      <packing>
+                                        <property name="top_attach">1</property>
+                                        <property name="bottom_attach">2</property>
+                                      </packing>
+                                    </child>
+                                    <child>
+                                      <object class="GtkHBox" id="hbox2">
+                                        <property name="visible">True</property>
+                                        <child>
+                                          <object class="GtkLabel" id="critical-level-label">
+                                            <property name="visible">True</property>
+                                            <property name="label" translatable="yes">Consider the computer on low power at:</property>
+                                          </object>
+                                          <packing>
+                                            <property name="expand">False</property>
+                                            <property name="position">0</property>
+                                          </packing>
+                                        </child>
+                                      </object>
+                                      <packing>
+                                        <property name="top_attach">2</property>
+                                        <property name="bottom_attach">3</property>
+                                      </packing>
+                                    </child>
+                                    <child>
+                                      <object class="GtkHBox" id="hbox8">
+                                        <property name="visible">True</property>
+                                        <child>
+                                          <object class="GtkSpinButton" id="critical-spin">
+                                            <property name="visible">True</property>
+                                            <property name="can_focus">True</property>
+                                            <property name="invisible_char">&#x25CF;</property>
+                                            <property name="adjustment">adjustment9</property>
+                                            <signal name="value_changed" handler="critical_level_value_changed_cb"/>
+                                            <signal name="output" handler="critical_spin_output_cb"/>
+                                          </object>
+                                          <packing>
+                                            <property name="expand">False</property>
+                                            <property name="position">0</property>
+                                          </packing>
+                                        </child>
+                                      </object>
+                                      <packing>
+                                        <property name="left_attach">1</property>
+                                        <property name="right_attach">2</property>
+                                        <property name="top_attach">2</property>
+                                        <property name="bottom_attach">3</property>
+                                      </packing>
+                                    </child>
+                                  </object>
+                                  <packing>
+                                    <property name="expand">False</property>
+                                    <property name="position">0</property>
+                                  </packing>
+                                </child>
+                                <child>
+                                  <object class="GtkCheckButton" id="cpu-freq">
+                                    <property name="label" translatable="yes">Enable CPU frequency control</property>
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">True</property>
+                                    <property name="receives_default">False</property>
+                                    <property name="draw_indicator">True</property>
+                                    <signal name="toggled" handler="cpu_freq_control_changed_cb"/>
+                                  </object>
+                                  <packing>
+                                    <property name="expand">False</property>
+                                    <property name="position">1</property>
+                                  </packing>
+                                </child>
+                                <child>
+                                  <object class="GtkCheckButton" id="lock-screen">
+                                    <property name="label" translatable="yes">Lock screen when going for suspend/hibernate</property>
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">True</property>
+                                    <property name="receives_default">False</property>
+                                    <property name="draw_indicator">True</property>
+                                    <signal name="toggled" handler="lock_screen_toggled_cb"/>
+                                  </object>
+                                  <packing>
+                                    <property name="expand">False</property>
+                                    <property name="position">2</property>
+                                  </packing>
+                                </child>
+                              </object>
+                            </child>
+                          </object>
+                        </child>
+                        <child type="label">
+                          <object class="GtkLabel" id="label1">
+                            <property name="visible">True</property>
+                            <property name="label" translatable="yes"><b>Advanced Options</b></property>
+                            <property name="use_markup">True</property>
+                          </object>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="position">3</property>
+                      </packing>
+                    </child>
+                    <child type="tab">
+                      <object class="GtkLabel" id="label23">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">Advanced</property>
+                      </object>
+                      <packing>
+                        <property name="position">3</property>
+                        <property name="tab_fill">False</property>
+                      </packing>
+                    </child>
+                  </object>
+                  <packing>
+                    <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 internal-child="action_area">
+          <object class="GtkHButtonBox" id="dialog-action_area">
+            <property name="visible">True</property>
+            <child>
+              <object class="GtkButton" id="help-button">
+                <property name="label">gtk-help</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">True</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="close-button">
+                <property name="label">gtk-close</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="receives_default">True</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="0">help-button</action-widget>
+      <action-widget response="0">close-button</action-widget>
+    </action-widgets>
+  </object>
+</interface>

Modified: xfce4-power-manager/trunk/libxfpm/xfpm-common.c
===================================================================
--- xfce4-power-manager/trunk/libxfpm/xfpm-common.c	2009-06-15 13:30:37 UTC (rev 7579)
+++ xfce4-power-manager/trunk/libxfpm/xfpm-common.c	2009-06-15 13:42:47 UTC (rev 7580)
@@ -25,6 +25,19 @@
 #include "xfpm-common.h"
 #include "xfpm-string.h"
 
+GtkBuilder *xfpm_builder_new_from_file (const gchar *file, GError **error)
+{
+    GtkBuilder *builder;
+
+    builder = gtk_builder_new ();
+    
+    gtk_builder_add_from_file (GTK_BUILDER (builder),
+			       file,
+			       error);
+			       
+    return builder;
+}
+
 static void
 xfpm_link_browser (GtkAboutDialog *about, const gchar *link, gpointer data)
 {

Modified: xfce4-power-manager/trunk/libxfpm/xfpm-common.h
===================================================================
--- xfce4-power-manager/trunk/libxfpm/xfpm-common.h	2009-06-15 13:30:37 UTC (rev 7579)
+++ xfce4-power-manager/trunk/libxfpm/xfpm-common.h	2009-06-15 13:42:47 UTC (rev 7580)
@@ -30,6 +30,9 @@
 
 G_BEGIN_DECLS
 
+GtkBuilder     *xfpm_builder_new_from_file   	(const gchar *file,
+						 GError **error);
+
 GdkPixbuf* 	xfpm_load_icon    		(const gchar *icon_name,
 						 gint size) G_GNUC_MALLOC;
 						 

Modified: xfce4-power-manager/trunk/po/POTFILES.in
===================================================================
--- xfce4-power-manager/trunk/po/POTFILES.in	2009-06-15 13:30:37 UTC (rev 7579)
+++ xfce4-power-manager/trunk/po/POTFILES.in	2009-06-15 13:42:47 UTC (rev 7580)
@@ -1,4 +1,4 @@
-settings/xfpm-settings.glade
+data/interfaces/xfpm-settings.ui
 settings/xfpm-settings.c
 settings/xfpm-settings-main.c
 settings/xfce4-power-manager-settings.desktop.in

Modified: xfce4-power-manager/trunk/po/xfce4-power-manager.pot
===================================================================
--- xfce4-power-manager/trunk/po/xfce4-power-manager.pot	2009-06-15 13:30:37 UTC (rev 7579)
+++ xfce4-power-manager/trunk/po/xfce4-power-manager.pot	2009-06-15 13:42:47 UTC (rev 7580)
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-05-16 19:38+0200\n"
+"POT-Creation-Date: 2009-06-15 15:38+0200\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL at ADDRESS>\n"
 "Language-Team: LANGUAGE <LL at li.org>\n"
@@ -16,257 +16,134 @@
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: ../settings/xfpm-settings.glade.h:1
-msgid "<b>Actions</b>"
+#: ../settings/xfpm-settings.c:475 ../settings/xfpm-settings.c:490
+#: ../settings/xfpm-settings.c:517
+msgid "Never"
 msgstr ""
 
-#: ../settings/xfpm-settings.glade.h:2
-msgid "<b>Advanced Options</b>"
+#: ../settings/xfpm-settings.c:478
+msgid "One minute"
 msgstr ""
 
-#: ../settings/xfpm-settings.glade.h:3
-msgid "<b>Brightness</b>"
+#: ../settings/xfpm-settings.c:480 ../settings/xfpm-settings.c:492
+msgid "Minutes"
 msgstr ""
 
-#: ../settings/xfpm-settings.glade.h:4
-msgid "<b>General Options</b>"
+#: ../settings/xfpm-settings.c:494 ../settings/xfpm-settings.c:501
+#: ../settings/xfpm-settings.c:502 ../settings/xfpm-settings.c:503
+msgid "One hour"
 msgstr ""
 
-#: ../settings/xfpm-settings.glade.h:5
-msgid "<b>Monitor</b>"
+#: ../settings/xfpm-settings.c:502 ../settings/xfpm-settings.c:506
+msgid "one minute"
 msgstr ""
 
-#: ../settings/xfpm-settings.glade.h:6
-msgid "Actions"
+#: ../settings/xfpm-settings.c:503 ../settings/xfpm-settings.c:507
+#: ../src/xfpm-battery.c:441
+msgid "minutes"
 msgstr ""
 
-#: ../settings/xfpm-settings.glade.h:7
-msgid "Advanced"
+#: ../settings/xfpm-settings.c:505 ../settings/xfpm-settings.c:506
+#: ../settings/xfpm-settings.c:507 ../src/xfpm-battery.c:440
+msgid "hours"
 msgstr ""
 
-#: ../settings/xfpm-settings.glade.h:8 ../settings/xfpm-settings.c:952
-msgid "Always show icon"
+#: ../settings/xfpm-settings.c:519
+msgid "Seconds"
 msgstr ""
 
-#: ../settings/xfpm-settings.glade.h:9
-msgid "Consider the computer on low power at:"
+#: ../settings/xfpm-settings.c:668 ../settings/xfpm-settings.c:850
+#: ../settings/xfpm-settings.c:881 ../settings/xfpm-settings.c:1034
+#: ../settings/xfpm-settings.c:1100 ../settings/xfpm-settings.c:1163
+#: ../settings/xfpm-settings.c:1323
+msgid "Hibernate and suspend operations not permitted"
 msgstr ""
 
-#: ../settings/xfpm-settings.glade.h:10
-msgid "Enable CPU frequency control"
+#: ../settings/xfpm-settings.c:678 ../settings/xfpm-settings.c:748
+msgid "Shutdown and hibernate operations not permitted"
 msgstr ""
 
-#: ../settings/xfpm-settings.glade.h:11
-msgid "Enable monitor power management control"
+#: ../settings/xfpm-settings.c:686 ../settings/xfpm-settings.c:756
+#: ../settings/xfpm-settings.c:887 ../settings/xfpm-settings.c:1040
+#: ../settings/xfpm-settings.c:1106 ../settings/xfpm-settings.c:1169
+msgid "Nothing"
 msgstr ""
 
-#: ../settings/xfpm-settings.glade.h:12
-msgid "Enable notification"
-msgstr ""
-
-#: ../settings/xfpm-settings.glade.h:13 ../settings/xfpm-settings.c:1401
-#: ../settings/xfpm-settings.c:1406
-msgid "General"
-msgstr ""
-
 #. Hibernate menu option
-#: ../settings/xfpm-settings.glade.h:14 ../settings/xfpm-settings.c:591
-#: ../settings/xfpm-settings.c:689 ../settings/xfpm-settings.c:846
-#: ../settings/xfpm-settings.c:1012 ../settings/xfpm-settings.c:1081
-#: ../settings/xfpm-settings.c:1147 ../src/xfpm-tray-icon.c:170
-#: ../src/xfpm-tray-icon.c:268
+#: ../settings/xfpm-settings.c:691 ../settings/xfpm-settings.c:767
+#: ../settings/xfpm-settings.c:898 ../settings/xfpm-settings.c:1051
+#: ../settings/xfpm-settings.c:1117 ../settings/xfpm-settings.c:1180
+#: ../src/xfpm-tray-icon.c:170 ../src/xfpm-tray-icon.c:264
 msgid "Hibernate"
 msgstr ""
 
-#: ../settings/xfpm-settings.glade.h:15
-msgid "Lock screen when going for suspend/hibernate"
+#: ../settings/xfpm-settings.c:695 ../settings/xfpm-settings.c:1055
+msgid "Shutdown"
 msgstr ""
 
-#: ../settings/xfpm-settings.glade.h:16
-msgid "Monitor"
-msgstr ""
-
-#: ../settings/xfpm-settings.glade.h:17 ../settings/xfpm-settings.c:586
-#: ../settings/xfpm-settings.c:678 ../settings/xfpm-settings.c:835
-#: ../settings/xfpm-settings.c:1001 ../settings/xfpm-settings.c:1070
-#: ../settings/xfpm-settings.c:1136
-msgid "Nothing"
-msgstr ""
-
-#: ../settings/xfpm-settings.glade.h:18 ../settings/xfpm-settings.c:1415
-#: ../settings/xfpm-settings.c:1420
-msgid "On AC"
-msgstr ""
-
-#: ../settings/xfpm-settings.glade.h:19
-msgid "On battery"
-msgstr ""
-
-#: ../settings/xfpm-settings.glade.h:20
-msgid "Power manager settings"
-msgstr ""
-
-#: ../settings/xfpm-settings.glade.h:21
-msgid "Prefer power savings over performance"
-msgstr ""
-
-#: ../settings/xfpm-settings.glade.h:22
-msgid "Put display to sleep when computer is inactive for:"
-msgstr ""
-
-#: ../settings/xfpm-settings.glade.h:23
-msgid "Put the computer to sleep when inactive for:"
-msgstr ""
-
-#: ../settings/xfpm-settings.glade.h:24
-msgid "Reduce screen brightness when computer is inactive for:"
-msgstr ""
-
-#: ../settings/xfpm-settings.glade.h:25
-msgid "Set computer inactivity sleep mode:"
-msgstr ""
-
-#: ../settings/xfpm-settings.glade.h:26
-msgid "Set monitor sleep mode:"
-msgstr ""
-
-#: ../settings/xfpm-settings.glade.h:27
-msgid "Standby"
-msgstr ""
-
 #. Suspend menu option
-#: ../settings/xfpm-settings.glade.h:28 ../settings/xfpm-settings.c:683
-#: ../settings/xfpm-settings.c:840 ../settings/xfpm-settings.c:1006
-#: ../settings/xfpm-settings.c:1075 ../settings/xfpm-settings.c:1141
-#: ../src/xfpm-tray-icon.c:201 ../src/xfpm-tray-icon.c:283
+#: ../settings/xfpm-settings.c:761 ../settings/xfpm-settings.c:892
+#: ../settings/xfpm-settings.c:1045 ../settings/xfpm-settings.c:1111
+#: ../settings/xfpm-settings.c:1174 ../src/xfpm-tray-icon.c:199
+#: ../src/xfpm-tray-icon.c:279
 msgid "Suspend"
 msgstr ""
 
-#: ../settings/xfpm-settings.glade.h:29
-msgid "Switch off display when computer is inactive for:"
+#: ../settings/xfpm-settings.c:996
+msgid "Always show icon"
 msgstr ""
 
-#: ../settings/xfpm-settings.glade.h:30
-msgid "System tray icon: "
-msgstr ""
-
-#: ../settings/xfpm-settings.glade.h:31
-msgid "When battery power is critical:"
-msgstr ""
-
-#: ../settings/xfpm-settings.glade.h:32
-msgid "When hibernate button is pressed:"
-msgstr ""
-
-#: ../settings/xfpm-settings.glade.h:33
-msgid "When laptop lid is closed:"
-msgstr ""
-
-#: ../settings/xfpm-settings.glade.h:34
-msgid "When power button is pressed:"
-msgstr ""
-
-#: ../settings/xfpm-settings.glade.h:35
-msgid "When sleep button is pressed:"
-msgstr ""
-
-#: ../settings/xfpm-settings.glade.h:36 ../settings/xfpm-settings-main.c:120
-#: ../src/xfpm-main.c:184 ../src/xfpm-main.c:273 ../src/xfpm-tray-icon.c:348
-#: ../src/xfce4-power-manager.desktop.in.h:2
-msgid "Xfce Power Manager"
-msgstr ""
-
-#: ../settings/xfpm-settings.c:370 ../settings/xfpm-settings.c:385
-#: ../settings/xfpm-settings.c:415
-msgid "Never"
-msgstr ""
-
-#: ../settings/xfpm-settings.c:373
-msgid "One minute"
-msgstr ""
-
-#: ../settings/xfpm-settings.c:375 ../settings/xfpm-settings.c:387
-#: ../settings/xfpm-settings.c:405
-msgid "Minutes"
-msgstr ""
-
-#: ../settings/xfpm-settings.c:389 ../settings/xfpm-settings.c:396
-#: ../settings/xfpm-settings.c:397 ../settings/xfpm-settings.c:398
-msgid "One hour"
-msgstr ""
-
-#: ../settings/xfpm-settings.c:397 ../settings/xfpm-settings.c:401
-msgid "one minute"
-msgstr ""
-
-#: ../settings/xfpm-settings.c:398 ../settings/xfpm-settings.c:402
-#: ../src/xfpm-battery.c:417
-msgid "minutes"
-msgstr ""
-
-#: ../settings/xfpm-settings.c:400 ../settings/xfpm-settings.c:401
-#: ../settings/xfpm-settings.c:402 ../src/xfpm-battery.c:416
-msgid "hours"
-msgstr ""
-
-#: ../settings/xfpm-settings.c:417
-msgid "Seconds"
-msgstr ""
-
-#: ../settings/xfpm-settings.c:565 ../settings/xfpm-settings.c:780
-#: ../settings/xfpm-settings.c:829 ../settings/xfpm-settings.c:995
-#: ../settings/xfpm-settings.c:1064 ../settings/xfpm-settings.c:1130
-#: ../settings/xfpm-settings.c:1311
-msgid "Hibernate and suspend operations not permitted"
-msgstr ""
-
-#: ../settings/xfpm-settings.c:578 ../settings/xfpm-settings.c:670
-msgid "Shutdown and hibernate operations not permitted"
-msgstr ""
-
-#: ../settings/xfpm-settings.c:595 ../settings/xfpm-settings.c:1016
-msgid "Shutdown"
-msgstr ""
-
-#: ../settings/xfpm-settings.c:955
+#: ../settings/xfpm-settings.c:999
 msgid "When battery is present"
 msgstr ""
 
-#: ../settings/xfpm-settings.c:958
+#: ../settings/xfpm-settings.c:1002
 msgid "When battery is charging or discharging"
 msgstr ""
 
-#: ../settings/xfpm-settings.c:977
+#: ../settings/xfpm-settings.c:1016
 msgid ""
 "Disable Display Power Management Signaling (DPMS), e.g don't attempt to "
 "switch off the display or put it in sleep mode."
 msgstr ""
 
-#: ../settings/xfpm-settings.c:1019 ../settings/xfpm-settings.c:1085
-#: ../settings/xfpm-settings.c:1151
+#: ../settings/xfpm-settings.c:1058 ../settings/xfpm-settings.c:1121
+#: ../settings/xfpm-settings.c:1184
 msgid "Ask"
 msgstr ""
 
-#: ../settings/xfpm-settings.c:1215
+#: ../settings/xfpm-settings.c:1243
 msgid "Suspend operation not permitted"
 msgstr ""
 
-#: ../settings/xfpm-settings.c:1221
+#: ../settings/xfpm-settings.c:1249
 msgid "Hibernate operation not permitted"
 msgstr ""
 
-#: ../settings/xfpm-settings.c:1279
+#: ../settings/xfpm-settings.c:1296
 msgid "When all the power sources of the computer reach this charge level"
 msgstr ""
 
-#: ../settings/xfpm-settings.c:1430 ../settings/xfpm-settings.c:1435
+#: ../settings/xfpm-settings.c:1410 ../settings/xfpm-settings.c:1415
+msgid "General"
+msgstr ""
+
+#: ../settings/xfpm-settings.c:1424 ../settings/xfpm-settings.c:1429
+msgid "On AC"
+msgstr ""
+
+#: ../settings/xfpm-settings.c:1439 ../settings/xfpm-settings.c:1444
 msgid "On Battery"
 msgstr ""
 
-#: ../settings/xfpm-settings.c:1444 ../settings/xfpm-settings.c:1449
+#: ../settings/xfpm-settings.c:1453 ../settings/xfpm-settings.c:1458
 msgid "Extended"
 msgstr ""
 
+#: ../settings/xfpm-settings.c:1523
+msgid "Check your power manager installation"
+msgstr ""
+
 #: ../settings/xfpm-settings-main.c:72
 msgid "Settings manager socket"
 msgstr ""
@@ -275,34 +152,40 @@
 msgid "SOCKET ID"
 msgstr ""
 
-#: ../settings/xfpm-settings-main.c:83 ../src/xfpm-main.c:145
-#: ../src/xfpm-main.c:167
+#: ../settings/xfpm-settings-main.c:83 ../src/xfpm-main.c:149
+#: ../src/xfpm-main.c:170
 #, c-format
 msgid "Type '%s --help' for usage."
 msgstr ""
 
-#: ../settings/xfpm-settings-main.c:120
+#: ../settings/xfpm-settings-main.c:118 ../src/xfpm-main.c:187
+#: ../src/xfpm-main.c:271 ../src/xfpm-tray-icon.c:344
+#: ../src/xfce4-power-manager.desktop.in.h:2
+msgid "Xfce Power Manager"
+msgstr ""
+
+#: ../settings/xfpm-settings-main.c:118
 msgid "Failed to load power manager configuration, using defaults"
 msgstr ""
 
-#: ../settings/xfpm-settings-main.c:146
+#: ../settings/xfpm-settings-main.c:144
 msgid "Xfce Power Manager Settings"
 msgstr ""
 
-#: ../settings/xfpm-settings-main.c:147
+#: ../settings/xfpm-settings-main.c:145
 msgid "Unable to connect to Xfce Power Manager"
 msgstr ""
 
-#: ../settings/xfpm-settings-main.c:175 ../src/xfpm-main.c:200
+#: ../settings/xfpm-settings-main.c:173 ../src/xfpm-main.c:198
 #, c-format
 msgid "Xfce power manager is not running"
 msgstr ""
 
-#: ../settings/xfpm-settings-main.c:178
+#: ../settings/xfpm-settings-main.c:176
 msgid "Xfce4 Power Manager is not running, do you want to launch it now?"
 msgstr ""
 
-#: ../settings/xfpm-settings-main.c:180
+#: ../settings/xfpm-settings-main.c:178
 msgid "Run"
 msgstr ""
 
@@ -334,8 +217,8 @@
 msgid "Your battery is discharging"
 msgstr ""
 
-#: ../src/xfpm-battery.c:117 ../src/xfpm-battery.c:425
-#: ../src/xfpm-battery.c:437
+#: ../src/xfpm-battery.c:117 ../src/xfpm-battery.c:426
+#: ../src/xfpm-battery.c:458
 msgid "System is running on battery power"
 msgstr ""
 
@@ -347,97 +230,97 @@
 msgid "System is running on low power"
 msgstr ""
 
-#: ../src/xfpm-battery.c:240 ../src/xfpm-supply.c:281 ../src/xfpm-supply.c:304
+#: ../src/xfpm-battery.c:236 ../src/xfpm-supply.c:345 ../src/xfpm-supply.c:368
 #: ../src/xfpm-tray-icon.c:119 ../src/xfpm-tray-icon.c:142
 #: ../src/xfpm-manager.c:226
 msgid "Xfce power manager"
 msgstr ""
 
-#: ../src/xfpm-battery.c:254
+#: ../src/xfpm-battery.c:264
 msgid "Your UPS"
 msgstr ""
 
-#: ../src/xfpm-battery.c:256
+#: ../src/xfpm-battery.c:266
 msgid "Your Mouse battery"
 msgstr ""
 
-#: ../src/xfpm-battery.c:258
+#: ../src/xfpm-battery.c:268
 msgid "Your Keyboard battery"
 msgstr ""
 
-#: ../src/xfpm-battery.c:260
+#: ../src/xfpm-battery.c:270
 msgid "Your Camera battery"
 msgstr ""
 
-#: ../src/xfpm-battery.c:262
+#: ../src/xfpm-battery.c:272
 msgid "Your PDA battery"
 msgstr ""
 
-#: ../src/xfpm-battery.c:264
+#: ../src/xfpm-battery.c:274
 msgid "Your Battery"
 msgstr ""
 
-#: ../src/xfpm-battery.c:279
+#: ../src/xfpm-battery.c:289
 msgid "is empty"
 msgstr ""
 
-#: ../src/xfpm-battery.c:285
+#: ../src/xfpm-battery.c:295
 msgid "is fully charged"
 msgstr ""
 
-#: ../src/xfpm-battery.c:290
+#: ../src/xfpm-battery.c:300
 msgid "charge level"
 msgstr ""
 
-#: ../src/xfpm-battery.c:295
+#: ../src/xfpm-battery.c:305
 msgid "is charging"
 msgstr ""
 
-#: ../src/xfpm-battery.c:302
+#: ../src/xfpm-battery.c:312
 msgid "is discharging"
 msgstr ""
 
-#: ../src/xfpm-battery.c:307
+#: ../src/xfpm-battery.c:317
 msgid "charge is low"
 msgstr ""
 
-#: ../src/xfpm-battery.c:312
+#: ../src/xfpm-battery.c:322
 msgid "is almost empty"
 msgstr ""
 
-#: ../src/xfpm-battery.c:352
+#: ../src/xfpm-battery.c:363
 msgid "is not present"
 msgstr ""
 
-#: ../src/xfpm-battery.c:385
+#: ../src/xfpm-battery.c:398
 msgid "Battery not present"
 msgstr ""
 
-#: ../src/xfpm-battery.c:408
+#: ../src/xfpm-battery.c:422 ../src/xfpm-battery.c:454
+msgid "Battery"
+msgstr ""
+
+#: ../src/xfpm-battery.c:425 ../src/xfpm-battery.c:457
+msgid "System is running on AC power"
+msgstr ""
+
+#: ../src/xfpm-battery.c:432
 msgid "Estimated time left"
 msgstr ""
 
-#: ../src/xfpm-battery.c:412
+#: ../src/xfpm-battery.c:436
 msgid "Estimated time to be fully charged"
 msgstr ""
 
-#: ../src/xfpm-battery.c:416
+#: ../src/xfpm-battery.c:440
 msgid "hour"
 msgstr ""
 
-#: ../src/xfpm-battery.c:417
+#: ../src/xfpm-battery.c:441
 msgid "minute"
 msgstr ""
 
-#: ../src/xfpm-battery.c:421 ../src/xfpm-battery.c:433
-msgid "Battery"
-msgstr ""
-
-#: ../src/xfpm-battery.c:424 ../src/xfpm-battery.c:436
-msgid "System is running on AC power"
-msgstr ""
-
-#: ../src/xfpm-battery-info.c:63 ../libxfpm/hal-battery.c:478
+#: ../src/xfpm-battery-info.c:63 ../libxfpm/hal-battery.c:476
 msgid "Unknown unit"
 msgstr ""
 
@@ -478,61 +361,61 @@
 "\n"
 msgstr ""
 
-#: ../src/xfpm-main.c:129
+#: ../src/xfpm-main.c:128
 msgid "Do not daemonize"
 msgstr ""
 
-#: ../src/xfpm-main.c:130
+#: ../src/xfpm-main.c:129
 msgid "Restart the running instance of Xfce power manager"
 msgstr ""
 
-#: ../src/xfpm-main.c:131
+#: ../src/xfpm-main.c:130
 msgid "Show the configuration dialog"
 msgstr ""
 
-#: ../src/xfpm-main.c:132
+#: ../src/xfpm-main.c:131
 msgid "Quit any running xfce power manager"
 msgstr ""
 
-#: ../src/xfpm-main.c:133
+#: ../src/xfpm-main.c:132
 msgid "Version information"
 msgstr ""
 
-#: ../src/xfpm-main.c:165
+#: ../src/xfpm-main.c:168
 #, c-format
 msgid "Too many arguments"
 msgstr ""
 
-#: ../src/xfpm-main.c:181
+#: ../src/xfpm-main.c:184
 msgid "Unable to get connection to the message bus session"
 msgstr ""
 
-#: ../src/xfpm-main.c:274
+#: ../src/xfpm-main.c:272
 msgid "Another power manager is already running"
 msgstr ""
 
-#: ../src/xfpm-main.c:279
+#: ../src/xfpm-main.c:278
 #, c-format
 msgid "Xfce power manager is already running"
 msgstr ""
 
-#: ../src/xfpm-supply.c:168
+#: ../src/xfpm-supply.c:226
 msgid "Adapter present"
 msgstr ""
 
-#: ../src/xfpm-supply.c:169
+#: ../src/xfpm-supply.c:227
 msgid "Adapter not present"
 msgstr ""
 
-#: ../src/xfpm-supply.c:250
+#: ../src/xfpm-supply.c:314
 msgid "Shutdown the system"
 msgstr ""
 
-#: ../src/xfpm-supply.c:261
+#: ../src/xfpm-supply.c:325
 msgid "Hibernate the system"
 msgstr ""
 
-#: ../src/xfpm-supply.c:273
+#: ../src/xfpm-supply.c:337
 msgid ""
 "System is running on low power, but an application is currently disabling "
 "the automatic sleep, this means that doing a sleep now may damage the data "
@@ -540,7 +423,7 @@
 "sleep mode or plug in your AC adapter"
 msgstr ""
 
-#: ../src/xfpm-supply.c:299
+#: ../src/xfpm-supply.c:363
 msgid "System is running on low power. Save your work to avoid losing data"
 msgstr ""
 
@@ -551,55 +434,55 @@
 "to hibernate the system?"
 msgstr ""
 
-#: ../src/xfpm-tray-icon.c:165 ../src/xfpm-tray-icon.c:196
+#: ../src/xfpm-tray-icon.c:165 ../src/xfpm-tray-icon.c:194
 msgid "Are you sure you want to proceed?"
 msgstr ""
 
-#: ../src/xfpm-tray-icon.c:193
+#: ../src/xfpm-tray-icon.c:191
 msgid ""
 "An application is currently disabling the automatic sleep, doing this action "
 "now may damage the working state of this application, are you sure you want "
 "to suspend the system?"
 msgstr ""
 
-#: ../src/xfpm-tray-icon.c:222
+#: ../src/xfpm-tray-icon.c:218
 msgid "Quit the Xfce power manager"
 msgstr ""
 
-#: ../src/xfpm-tray-icon.c:224
+#: ../src/xfpm-tray-icon.c:220
 msgid "Quit"
 msgstr ""
 
-#: ../src/xfpm-tray-icon.c:298
+#: ../src/xfpm-tray-icon.c:294
 msgid "Clear inhibit"
 msgstr ""
 
-#: ../src/xfpm-tray-icon.c:298
+#: ../src/xfpm-tray-icon.c:294
 msgid "Inhibit"
 msgstr ""
 
-#: ../src/xfpm-tray-icon.c:300
+#: ../src/xfpm-tray-icon.c:296
 msgid ""
 "Disable or enable automatic sleep, setting this will tell the power manager "
 "to disable backlight sleep, for example you could active the inhibit if you "
 "are watching a movie."
 msgstr ""
 
-#: ../src/xfpm-tray-icon.c:388
+#: ../src/xfpm-tray-icon.c:384
 msgid "No data available"
 msgstr ""
 
-#: ../src/xfpm-engine.c:646 ../src/xfpm-engine.c:672 ../src/xfpm-engine.c:701
+#: ../src/xfpm-engine.c:699 ../src/xfpm-engine.c:725 ../src/xfpm-engine.c:754
 #, c-format
 msgid "Permission denied"
 msgstr ""
 
-#: ../src/xfpm-engine.c:679
+#: ../src/xfpm-engine.c:732
 #, c-format
 msgid "Hibernate not supported"
 msgstr ""
 
-#: ../src/xfpm-engine.c:708
+#: ../src/xfpm-engine.c:761
 #, c-format
 msgid "Suspend not supported"
 msgstr ""
@@ -608,46 +491,46 @@
 msgid "HAL daemon is not running"
 msgstr ""
 
-#: ../src/xfpm-inhibit.c:330
+#: ../src/xfpm-inhibit.c:329
 #, c-format
 msgid "Invalid arguments"
 msgstr ""
 
-#: ../src/xfpm-inhibit.c:356
+#: ../src/xfpm-inhibit.c:355
 #, c-format
 msgid "Invalid cookie"
 msgstr ""
 
-#: ../src/xfpm-shutdown.c:335
+#: ../src/xfpm-shutdown.c:336
 msgid "No back-end for your operating system"
 msgstr ""
 
-#: ../src/xfpm-shutdown.c:339
+#: ../src/xfpm-shutdown.c:340
 msgid "No hibernate script found"
 msgstr ""
 
-#: ../src/xfpm-shutdown.c:343
+#: ../src/xfpm-shutdown.c:344
 msgid "No suspend script found"
 msgstr ""
 
-#: ../src/xfpm-shutdown.c:347
+#: ../src/xfpm-shutdown.c:348
 msgid "No suspend method found"
 msgstr ""
 
-#: ../src/xfpm-shutdown.c:351
+#: ../src/xfpm-shutdown.c:352
 msgid "No hibernate method found"
 msgstr ""
 
-#: ../src/xfpm-shutdown.c:355
+#: ../src/xfpm-shutdown.c:356
 msgid "Out of memory"
 msgstr ""
 
-#: ../src/xfpm-shutdown.c:359
+#: ../src/xfpm-shutdown.c:360
 msgid "System failed to sleep"
 msgstr ""
 
-#: ../src/xfpm-shutdown.c:401 ../src/xfpm-shutdown.c:424
-#: ../src/xfpm-shutdown.c:458
+#: ../src/xfpm-shutdown.c:409 ../src/xfpm-shutdown.c:432
+#: ../src/xfpm-shutdown.c:466
 #, c-format
 msgid "HAL daemon is currently not connected"
 msgstr ""
@@ -656,35 +539,35 @@
 msgid "Power management for the Xfce desktop"
 msgstr ""
 
-#: ../libxfpm/hal-battery.c:448
+#: ../libxfpm/hal-battery.c:446
 msgid "Lithium ion"
 msgstr ""
 
-#: ../libxfpm/hal-battery.c:452
+#: ../libxfpm/hal-battery.c:450
 msgid "Lead acid"
 msgstr ""
 
-#: ../libxfpm/hal-battery.c:456
+#: ../libxfpm/hal-battery.c:454
 msgid "Lithium polymer"
 msgstr ""
 
-#: ../libxfpm/hal-battery.c:460
+#: ../libxfpm/hal-battery.c:458
 msgid "Nickel metal hydride"
 msgstr ""
 
-#: ../libxfpm/hal-battery.c:463
+#: ../libxfpm/hal-battery.c:461
 msgid "Unknown"
 msgstr ""
 
-#: ../libxfpm/hal-battery.c:471
+#: ../libxfpm/hal-battery.c:469
 msgid "mWh"
 msgstr ""
 
-#: ../libxfpm/hal-battery.c:475
+#: ../libxfpm/hal-battery.c:473
 msgid "mAh"
 msgstr ""
 
-#: ../libxfpm/xfpm-common.c:175
+#: ../libxfpm/xfpm-common.c:188
 msgid "translator-credits"
 msgstr ""
 

Modified: xfce4-power-manager/trunk/settings/Makefile.am
===================================================================
--- xfce4-power-manager/trunk/settings/Makefile.am	2009-06-15 13:30:37 UTC (rev 7579)
+++ xfce4-power-manager/trunk/settings/Makefile.am	2009-06-15 13:42:47 UTC (rev 7580)
@@ -2,7 +2,6 @@
 
 xfce4_power_manager_settings_SOURCES = 				\
 	xfce-power-manager-dbus-client.h			\
-	xfpm-settings-glade.h					\
 	xfpm-settings-main.c					\
 	xfpm-settings.c						\
 	xfpm-settings.h						\
@@ -14,25 +13,27 @@
 	-I$(top_srcdir)/src					\
 	-DLOCALEDIR=\"$(localedir)\"				\
 	-DG_LOG_DOMAIN=\"xfce4-power-manager-settings\" 	\
+	-export-dynamic						\
+	$(MODULE_FLAGS)						\
 	$(GTK_CFLAGS)						\
 	$(GLIB_CFLAGS)						\
 	$(GTHREAD_CFLAGS)					\
+	$(GMODULE_CFLAGS)					\
 	$(DBUS_CFLAGS)						\
 	$(DBUS_GLIB_CFLAGS)					\
 	$(LIBXFCE4GUI_CFLAGS)					\
 	$(LIBXFCE4UTIL_CFLAGS)					\
-	$(LIBGLADE_CFLAGS)					\
 	$(XFCONF_CFLAGS)
 
 xfce4_power_manager_settings_LDADD   =				\
 	$(GTK_LIBS)						\
 	$(GLIB_LIBS)						\
 	$(GTHREAD_LIBS)						\
+	$(GMODULE_LIBS)						\
 	$(DBUS_LIBS)						\
 	$(DBUS_GLIB_LIBS)					\
 	$(LIBXFCE4GUI_LIBS)					\
 	$(LIBXFCE4UTIL_LIBS)					\
-	$(LIBGLADE_LIBS)					\
 	$(XFCONF_LIBS)						\
 	$(top_builddir)/libxfpm/libxfpmcommon.la
 
@@ -44,15 +45,11 @@
 if MAINTAINER_MODE
 
 BUILT_SOURCES = 				\
-	xfce-power-manager-dbus-client.h	\
-	xfpm-settings-glade.h
+	xfce-power-manager-dbus-client.h
 
 xfce-power-manager-dbus-client.h: $(top_srcdir)/src/org.xfce.Power.Manager.xml
 	dbus-binding-tool --mode=glib-client --prefix=xfpm_manager $< >$@
 
-xfpm-settings-glade.h: $(srcdir)/xfpm-settings.glade
-	exo-csource --static --name=xfpm_settings_glade $< >$@
-
 endif
 
 #
@@ -66,8 +63,6 @@
 
 EXTRA_DIST = 					\
 	xfce-power-manager-dbus-client.h	\
-	xfpm-settings-glade.h			\
-	xfpm-settings.glade			\
 	$(desktop_in_files)			\
 	$(manpage_DATA)
 

Modified: xfce4-power-manager/trunk/settings/xfpm-settings.c
===================================================================
--- xfce4-power-manager/trunk/settings/xfpm-settings.c	2009-06-15 13:30:37 UTC (rev 7579)
+++ xfce4-power-manager/trunk/settings/xfpm-settings.c	2009-06-15 13:42:47 UTC (rev 7580)
@@ -28,7 +28,6 @@
 
 #include <gtk/gtk.h>
 #include <glib.h>
-#include <glade/glade.h>
 
 #include <xfconf/xfconf.h>
 
@@ -38,13 +37,13 @@
 #include "libxfpm/xfpm-common.h"
 #include "libxfpm/xfpm-string.h"
 
-#include "xfpm-settings-glade.h"
-
 #include "xfpm-settings.h"
 #include "xfpm-config.h"
 
-static 	GladeXML *xml 				= NULL;
+#define INTERFACE_FILE INTERFACES_DIR "/xfpm-settings.ui"
 
+static 	GtkBuilder *xml 			= NULL;
+
 #ifdef HAVE_DPMS
 static  GtkWidget *on_battery_dpms_sleep 	= NULL;
 static  GtkWidget *on_battery_dpms_off  	= NULL;
@@ -53,9 +52,102 @@
 #endif
 
 /*
- * Callback settings 
+ * GtkBuilder callbacks
  */
-static void
+void	    battery_critical_changed_cb 	   (GtkWidget *w, 
+						    XfconfChannel *channel);
+
+void        set_show_tray_icon_cb                  (GtkWidget *w, 
+						    XfconfChannel *channel);
+
+void        inactivity_on_ac_value_changed_cb      (GtkWidget *widget, 
+						    XfconfChannel *channel);
+
+void        inactivity_on_battery_value_changed_cb (GtkWidget *widget, 
+						    XfconfChannel *channel);
+
+void        button_sleep_changed_cb                (GtkWidget *w, 
+						    XfconfChannel *channel);
+
+void        button_power_changed_cb                 (GtkWidget *w, 
+						    XfconfChannel *channel);
+
+void        button_hibernate_changed_cb            (GtkWidget *w, 
+						    XfconfChannel *channel);
+
+void        power_save_toggled_cb                  (GtkWidget *w, 
+						    XfconfChannel *channel);
+
+void        notify_toggled_cb                      (GtkWidget *w, 
+						    XfconfChannel *channel);
+
+void        set_hibernate_inactivity               (GtkWidget *w, 
+						    XfconfChannel *channel);
+
+void        set_suspend_inactivity                 (GtkWidget *w, 
+						    XfconfChannel *channel);
+
+void        set_dpms_standby_mode                  (GtkWidget *w, 
+						    XfconfChannel *channel);
+
+void        set_dpms_suspend_mode                  (GtkWidget *w, 
+						    XfconfChannel *channel);
+
+void        dpms_toggled_cb                        (GtkWidget *w, 
+						    XfconfChannel *channel);
+
+void        sleep_on_battery_value_changed_cb      (GtkWidget *w, 
+						    XfconfChannel *channel);
+
+void        off_on_battery_value_changed_cb        (GtkWidget *w, 
+						    XfconfChannel *channel);
+
+void        sleep_on_ac_value_changed_cb           (GtkWidget *w, 
+						    XfconfChannel *channel);
+
+void        off_on_ac_value_changed_cb             (GtkWidget *w, 
+						    XfconfChannel *channel);
+
+gchar      *format_dpms_value_cb                   (GtkScale *scale, 
+						    gdouble value,
+						    gpointer data);
+
+gchar      *format_inactivity_value_cb             (GtkScale *scale, 
+						    gdouble value,
+						    gpointer data);
+
+gchar      *format_brightness_value_cb             (GtkScale *scale, 
+						    gdouble value,
+						    gpointer data);
+
+void        brightness_on_battery_value_changed_cb (GtkWidget *w, 
+						    XfconfChannel *channel);
+
+void        brightness_on_ac_value_changed_cb      (GtkWidget *w, 
+						    XfconfChannel *channel);
+
+gboolean    critical_spin_output_cb                (GtkSpinButton *w, 
+						    gpointer data);
+
+void        on_battery_lid_changed_cb              (GtkWidget *w, 
+						    XfconfChannel *channel);
+
+void        on_ac_lid_changed_cb                   (GtkWidget *w, 
+						    XfconfChannel *channel);
+
+void        critical_level_value_changed_cb        (GtkSpinButton *w, 
+						    XfconfChannel *channel);
+
+void        lock_screen_toggled_cb                 (GtkWidget *w, 
+						    XfconfChannel *channel);
+
+void        cpu_freq_control_changed_cb            (GtkWidget *w, 
+						    XfconfChannel *channel);
+
+void        _cursor_changed_cb 			   (GtkTreeView *view, 
+						    gpointer data);
+
+void
 battery_critical_changed_cb (GtkWidget *w, XfconfChannel *channel)
 {
     GtkTreeModel     *model;
@@ -79,7 +171,7 @@
     }
 }
 
-static void
+void
 set_show_tray_icon_cb (GtkWidget *w, XfconfChannel *channel)
 {
     GtkTreeModel     *model;
@@ -103,7 +195,7 @@
     }
 }
 
-static void
+void
 inactivity_on_ac_value_changed_cb (GtkWidget *widget, XfconfChannel *channel)
 {
     gint value    = (gint)gtk_range_get_value (GTK_RANGE (widget));
@@ -114,7 +206,7 @@
     }
 }
 
-static void
+void
 inactivity_on_battery_value_changed_cb (GtkWidget *widget, XfconfChannel *channel)
 {
     gint value    = (gint)gtk_range_get_value (GTK_RANGE (widget));
@@ -125,8 +217,8 @@
     }
 }
 
-static void
-set_sleep_changed_cb (GtkWidget *w, XfconfChannel *channel)
+void
+button_sleep_changed_cb (GtkWidget *w, XfconfChannel *channel)
 {
     GtkTreeModel     *model;
     GtkTreeIter       selected_row;
@@ -149,8 +241,8 @@
     }
 }
 
-static void
-set_power_changed_cb (GtkWidget *w, XfconfChannel *channel)
+void
+button_power_changed_cb (GtkWidget *w, XfconfChannel *channel)
 {
     GtkTreeModel     *model;
     GtkTreeIter       selected_row;
@@ -173,8 +265,8 @@
     }
 }
 
-static void
-set_hibernate_changed_cb (GtkWidget *w, XfconfChannel *channel)
+void
+button_hibernate_changed_cb (GtkWidget *w, XfconfChannel *channel)
 {
     GtkTreeModel     *model;
     GtkTreeIter       selected_row;
@@ -197,7 +289,7 @@
     }
 }
 
-static void
+void
 power_save_toggled_cb (GtkWidget *w, XfconfChannel *channel)
 {
     gboolean val = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(w));
@@ -208,7 +300,7 @@
     }
 }
 
-static void
+void
 notify_toggled_cb (GtkWidget *w, XfconfChannel *channel)
 {
     gboolean val = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(w));
@@ -219,7 +311,7 @@
     }
 }
 
-static void
+void
 set_hibernate_inactivity (GtkWidget *w, XfconfChannel *channel)
 {
     if (!xfconf_channel_set_string (channel, INACTIVITY_SLEEP_MODE, "Hibernate") )
@@ -228,7 +320,7 @@
     }
 }
 
-static void
+void
 set_suspend_inactivity (GtkWidget *w, XfconfChannel *channel)
 {
     if (!xfconf_channel_set_string (channel, INACTIVITY_SLEEP_MODE, "Suspend") )
@@ -237,28 +329,33 @@
     }
 }
 
+
+void
+set_dpms_standby_mode (GtkWidget *w, XfconfChannel *channel)
+{
 #ifdef HAVE_DPMS
-static void
-set_dpms_sleep_mode (GtkWidget *w, XfconfChannel *channel)
-{
     if (!xfconf_channel_set_string (channel, DPMS_SLEEP_MODE, "sleep") )
     {
 	g_critical ("Cannot set value sleep for property %s\n", DPMS_SLEEP_MODE);
     }
+#endif
 }
 
-static void
+void
 set_dpms_suspend_mode (GtkWidget *w, XfconfChannel *channel)
 {
+#ifdef HAVE_DPMS
     if (!xfconf_channel_set_string (channel, DPMS_SLEEP_MODE, "suspend") )
     {
 	g_critical ("Cannot set value sleep for property %s\n", DPMS_SLEEP_MODE);
     }
+#endif
 }
 
-static void
+void
 dpms_toggled_cb (GtkWidget *w, XfconfChannel *channel)
 {
+#ifdef HAVE_DPMS
     gboolean val = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(w));
     
     xfconf_channel_set_bool (channel, DPMS_ENABLED_CFG, val);
@@ -271,13 +368,15 @@
 	gtk_widget_set_sensitive (on_battery_dpms_off, val);
     	gtk_widget_set_sensitive (on_battery_dpms_sleep, val);
     }
+#endif
 }
 
-static void
+void
 sleep_on_battery_value_changed_cb (GtkWidget *w, XfconfChannel *channel)
 {
-    gint off_value    = (gint)gtk_range_get_value (GTK_RANGE(on_battery_dpms_off));
-    gint sleep_value  = (gint)gtk_range_get_value (GTK_RANGE(w));
+#ifdef HAVE_DPMS
+    gint off_value    = (gint)gtk_range_get_value (GTK_RANGE (on_battery_dpms_off));
+    gint sleep_value  = (gint)gtk_range_get_value (GTK_RANGE (w));
     
     if ( off_value != 0 )
     {
@@ -291,11 +390,13 @@
     {
 	g_critical ("Cannot set value for property %s\n", ON_BATT_DPMS_SLEEP);
     }
+#endif
 }
 
-static void
+void
 off_on_battery_value_changed_cb (GtkWidget *w, XfconfChannel *channel)
 {
+#ifdef HAVE_DPMS
     gint off_value    = (gint)gtk_range_get_value (GTK_RANGE(w));
     gint sleep_value  = (gint)gtk_range_get_value (GTK_RANGE(on_battery_dpms_sleep));
     
@@ -311,12 +412,13 @@
     {
 	g_critical ("Cannot set value for property %s\n", ON_BATT_DPMS_OFF);
     }
-    
+#endif
 }
 
-static void
+void
 sleep_on_ac_value_changed_cb (GtkWidget *w, XfconfChannel *channel)
 {
+#ifdef HAVE_DPMS
     gint off_value    = (gint)gtk_range_get_value (GTK_RANGE(on_ac_dpms_off));
     gint sleep_value  = (gint)gtk_range_get_value (GTK_RANGE(w));
     
@@ -335,11 +437,13 @@
     {
 	g_critical ("Cannot set value for property %s\n", ON_AC_DPMS_SLEEP);
     }
+#endif
 }
 
-static void
+void
 off_on_ac_value_changed_cb (GtkWidget *w, XfconfChannel *channel)
 {
+#ifdef HAVE_DPMS
     gint off_value    = (gint)gtk_range_get_value (GTK_RANGE(w));
     gint sleep_value  = (gint)gtk_range_get_value (GTK_RANGE(on_ac_dpms_sleep));
     
@@ -358,26 +462,27 @@
     {
 	g_critical ("Cannot set value for property %s\n", ON_AC_DPMS_OFF);
     }
+#endif
 }
 
 /*
  * Format value of GtkRange used with DPMS
  */
-static gchar *
-format_dpms_value_cb (GtkScale *scale, gdouble value)
+gchar *
+format_dpms_value_cb (GtkScale *scale, gdouble value, gpointer data)
 {
     if ( (gint)value == 0 )
     	return g_strdup (_("Never"));
     
     if ( (int)value == 1 )
 	return g_strdup (_("One minute"));
-	
+
     return g_strdup_printf ("%d %s", (int)value, _("Minutes"));
 }
-#endif /* HAVE_DPMS */
 
-static gchar *
-format_inactivity_value_cb (GtkScale *scale, gdouble value)
+
+gchar *
+format_inactivity_value_cb (GtkScale *scale, gdouble value, gpointer data)
 {
     gint h, min;
     
@@ -405,8 +510,8 @@
 /*
  * Format value of GtkRange used with Brightness
  */
-static gchar *
-format_brightness_value_cb (GtkScale *scale, gdouble value)
+gchar *
+format_brightness_value_cb (GtkScale *scale, gdouble value, gpointer data)
 {
     if ( (gint)value <= 9 )
     	return g_strdup (_("Never"));
@@ -414,7 +519,7 @@
     return g_strdup_printf ("%d %s", (int)value, _("Seconds"));
 }
 
-static void
+void
 brightness_on_battery_value_changed_cb (GtkWidget *w, XfconfChannel *channel)
 {
     gint value    = (gint)gtk_range_get_value (GTK_RANGE(w));
@@ -425,7 +530,7 @@
     }
 }
 
-static void
+void
 brightness_on_ac_value_changed_cb (GtkWidget *w, XfconfChannel *channel)
 {
     gint value    = (gint)gtk_range_get_value (GTK_RANGE(w));
@@ -436,7 +541,7 @@
     }
 }
 
-static gboolean
+gboolean
 critical_spin_output_cb (GtkSpinButton *w, gpointer data)
 {
     gint val = (gint) gtk_spin_button_get_value (w);
@@ -448,7 +553,7 @@
     return TRUE;
 }
 
-static void
+void
 on_battery_lid_changed_cb (GtkWidget *w, XfconfChannel *channel)
 {
     GtkTreeModel     *model;
@@ -472,7 +577,7 @@
     }
 }
 
-static void
+void
 on_ac_lid_changed_cb (GtkWidget *w, XfconfChannel *channel)
 {
     GtkTreeModel     *model;
@@ -496,7 +601,7 @@
     }
 } 
 
-static void
+void
 critical_level_value_changed_cb (GtkSpinButton *w, XfconfChannel *channel)
 {
     guint val = (guint) gtk_spin_button_get_value (w);
@@ -507,7 +612,7 @@
     }
 }
 
-static void
+void
 lock_screen_toggled_cb (GtkWidget *w, XfconfChannel *channel)
 {
     gboolean val = (gint) gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(w));
@@ -517,19 +622,20 @@
     }
 }
 
-#ifdef SYSTEM_IS_LINUX
-static void
+void
 cpu_freq_control_changed_cb (GtkWidget *w, XfconfChannel *channel)
 {
+#ifdef SYSTEM_IS_LINUX
     gboolean val = (gint) gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(w));
     
     if ( !xfconf_channel_set_bool (channel, CPU_FREQ_CONTROL, val) )
     {
 	g_critical ("Unable to set value for property %s\n", CPU_FREQ_CONTROL);
     }
+#endif
 }
-#endif
 
+
 static void
 xfpm_settings_on_battery (XfconfChannel *channel, gboolean user_privilege, gboolean can_suspend, 
 			 gboolean can_hibernate, gboolean has_lcd_brightness, gboolean has_lid)
@@ -552,9 +658,9 @@
     GtkWidget *dpms_frame_on_battery;
 #endif
 
-    battery_critical = glade_xml_get_widget (xml, "battery-critical-combox");
+    battery_critical = GTK_WIDGET (gtk_builder_get_object (xml, "battery-critical-combox"));
     
-    inact = glade_xml_get_widget (xml, "inactivity-on-battery");
+    inact = GTK_WIDGET (gtk_builder_get_object (xml, "inactivity-on-battery"));
     
     if ( !can_suspend && !can_hibernate )
     {
@@ -564,11 +670,8 @@
     
     val = xfconf_channel_get_uint (channel, ON_BATTERY_INACTIVITY_TIMEOUT, 30);
     gtk_range_set_value (GTK_RANGE (inact), val);
-    g_signal_connect (inact, "value-changed",
-		      G_CALLBACK (inactivity_on_battery_value_changed_cb), channel);
-    g_signal_connect (inact, "format-value",
-		      G_CALLBACK (format_inactivity_value_cb), NULL);
     
+    
     if (!user_privilege )
     {
 	gtk_widget_set_sensitive (battery_critical, FALSE);
@@ -613,52 +716,30 @@
 	}
     }
     
-    g_signal_connect (battery_critical, "changed", 
-		      G_CALLBACK(battery_critical_changed_cb), channel);
+    g_free (str);
     
-    g_free(str);
-    
-    power_save = glade_xml_get_widget (xml, "power-save");
+    power_save = GTK_WIDGET (gtk_builder_get_object (xml, "power-save"));
     save_power = xfconf_channel_get_bool (channel, POWER_SAVE_ON_BATTERY, TRUE);
     
     gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(power_save), save_power);
-    g_signal_connect (power_save, "toggled",
-		      G_CALLBACK(power_save_toggled_cb), channel);
-	
     
     /*
      * DPMS settings when running on battery power
      */
 #ifdef HAVE_DPMS
-    dpms_frame_on_battery = glade_xml_get_widget (xml, "dpms-on-battery-frame");
+    dpms_frame_on_battery = GTK_WIDGET (gtk_builder_get_object (xml, "dpms-on-battery-frame"));
     gtk_widget_show (GTK_WIDGET(dpms_frame_on_battery));
-    
-    on_battery_dpms_sleep = glade_xml_get_widget (xml, "sleep-dpms-on-battery");
   
     val = xfconf_channel_get_uint (channel, ON_BATT_DPMS_SLEEP, 3);
     gtk_range_set_value (GTK_RANGE(on_battery_dpms_sleep), val);
     
-    g_signal_connect (on_battery_dpms_sleep, "value-changed",
-		      G_CALLBACK(sleep_on_battery_value_changed_cb), channel);
-		      
-    g_signal_connect (on_battery_dpms_sleep, "format-value", 
-		      G_CALLBACK(format_dpms_value_cb), NULL);
-		      
-    on_battery_dpms_off = glade_xml_get_widget (xml, "off-dpms-on-battery");
-    
     val = xfconf_channel_get_uint (channel, ON_BATT_DPMS_OFF, 5);
-    gtk_range_set_value (GTK_RANGE(on_battery_dpms_off), val);
-    
-    g_signal_connect (on_battery_dpms_off, "value-changed",
-		      G_CALLBACK(off_on_battery_value_changed_cb), channel);
-    g_signal_connect (on_battery_dpms_off, "format-value", 
-		      G_CALLBACK(format_dpms_value_cb), NULL);
 #endif
 
      /*
      * Lid switch settings on battery
      */
-    lid = glade_xml_get_widget (xml, "on-battery-lid");
+    lid = GTK_WIDGET (gtk_builder_get_object (xml, "on-battery-lid"));
     if ( has_lid )
     {
 	if (!user_privilege )
@@ -686,9 +767,6 @@
 	    gtk_list_store_set (list_store, &iter, 0, _("Hibernate"), 1, 2, -1);
 	}
 	
-	g_signal_connect (lid, "changed", 
-			  G_CALLBACK(on_battery_lid_changed_cb), channel);
-			  
 	str = xfconf_channel_get_string (channel, LID_SWITCH_ON_BATTERY_CFG, "Nothing");
 	
 	val = xfpm_shutdown_string_to_int (str);
@@ -715,7 +793,7 @@
     }
     else
     {
-	label = glade_xml_get_widget (xml, "on-battery-lid-label");
+	label = GTK_WIDGET (gtk_builder_get_object (xml, "on-battery-lid-label"));
 	gtk_widget_hide (label);
 	gtk_widget_hide (lid);
     }
@@ -724,28 +802,23 @@
      * 
      * Brightness on battery power
      */
-    brg = glade_xml_get_widget (xml ,"brg-on-battery");
+    brg = GTK_WIDGET (gtk_builder_get_object (xml ,"brg-on-battery"));
     if ( has_lcd_brightness )
     {
 	val = xfconf_channel_get_uint (channel, BRIGHTNESS_ON_BATTERY, 10);
 	
 	gtk_range_set_value (GTK_RANGE(brg), val);
 	
-	g_signal_connect (brg, "value-changed",
-			  G_CALLBACK(brightness_on_battery_value_changed_cb), channel);
-			  
-	g_signal_connect (brg, "format-value", 
-			  G_CALLBACK(format_brightness_value_cb), NULL);
     }
     else
     {
-	frame = glade_xml_get_widget (xml, "on-battery-brg-frame");
+	frame = GTK_WIDGET (gtk_builder_get_object (xml, "on-battery-brg-frame"));
 	gtk_widget_hide_all (frame);
     }
 #ifndef HAVE_DPMS
     if ( !has_lcd_brightness )
     {
-	gtk_notebook_remove_page (GTK_NOTEBOOK (glade_xml_get_widget (xml, "on-battery-notebook")), 1);
+	gtk_notebook_remove_page (GTK_NOTEBOOK (GTK_WIDGET (gtk_builder_get_object (xml, "on-battery-notebook"))), 1);
     }
 #endif
 }
@@ -769,7 +842,7 @@
     GtkWidget *dpms_frame_on_ac;
 #endif
 
-    inact = glade_xml_get_widget (xml, "inactivity-on-ac");
+    inact = GTK_WIDGET (gtk_builder_get_object (xml, "inactivity-on-ac"));
     
     if ( !can_suspend && !can_hibernate )
     {
@@ -779,43 +852,25 @@
     
     val = xfconf_channel_get_uint (channel, ON_AC_INACTIVITY_TIMEOUT, 30);
     gtk_range_set_value (GTK_RANGE (inact), val);
-    g_signal_connect (inact, "value-changed",
-		      G_CALLBACK (inactivity_on_ac_value_changed_cb), channel);
-    g_signal_connect (inact, "format-value",
-		      G_CALLBACK (format_inactivity_value_cb), NULL);
    
 #ifdef HAVE_DPMS
     /*
      * DPMS settings when running on AC power 
      */
-    dpms_frame_on_ac = glade_xml_get_widget (xml, "dpms-on-ac-frame");
+    dpms_frame_on_ac = GTK_WIDGET (gtk_builder_get_object (xml, "dpms-on-ac-frame"));
     gtk_widget_show (GTK_WIDGET(dpms_frame_on_ac));
     
-    on_ac_dpms_sleep = glade_xml_get_widget (xml, "sleep-dpms-on-ac");
-  
     val = xfconf_channel_get_uint (channel, ON_AC_DPMS_SLEEP, 10);
     gtk_range_set_value (GTK_RANGE (on_ac_dpms_sleep), val);
     
-    g_signal_connect (on_ac_dpms_sleep, "value-changed",
-		      G_CALLBACK(sleep_on_ac_value_changed_cb), channel);
-		      
-    g_signal_connect (on_ac_dpms_sleep, "format-value", 
-		      G_CALLBACK(format_dpms_value_cb), NULL);
-		      
-    on_ac_dpms_off = glade_xml_get_widget (xml, "off-dpms-on-ac");
-    
     val = xfconf_channel_get_uint (channel, ON_AC_DPMS_OFF, 15);
     gtk_range_set_value (GTK_RANGE(on_ac_dpms_off), val);
     
-    g_signal_connect (on_ac_dpms_off, "value-changed",
-		      G_CALLBACK(off_on_ac_value_changed_cb), channel);
-    g_signal_connect (on_ac_dpms_off, "format-value", 
-		      G_CALLBACK(format_dpms_value_cb), NULL);
 #endif
     /*
      * Lid switch settings on AC power
      */
-    lid = glade_xml_get_widget (xml, "on-ac-lid");
+    lid = GTK_WIDGET (gtk_builder_get_object (xml, "on-ac-lid"));
     if ( has_lid )
     {
 	list_store = gtk_list_store_new (2, G_TYPE_STRING, G_TYPE_INT);
@@ -843,9 +898,6 @@
 	    gtk_list_store_set (list_store, &iter, 0, _("Hibernate"), 1, 2, -1);
 	}
 	
-	g_signal_connect (lid, "changed", 
-			  G_CALLBACK(on_ac_lid_changed_cb), channel);
-			  
 	str = xfconf_channel_get_string (channel, LID_SWITCH_ON_AC_CFG, "Nothing");
 	
 	val = xfpm_shutdown_string_to_int (str);
@@ -872,7 +924,7 @@
     }
     else
     {
-	frame = glade_xml_get_widget (xml, "on-ac-actions-frame");
+	frame = GTK_WIDGET (gtk_builder_get_object (xml, "on-ac-actions-frame"));
 	gtk_widget_hide_all (frame);
     }
     
@@ -880,28 +932,23 @@
      * 
      * Brightness on AC power
      */
-    brg = glade_xml_get_widget (xml ,"brg-on-ac");
+    brg = GTK_WIDGET (gtk_builder_get_object (xml ,"brg-on-ac"));
     if ( has_lcd_brightness )
     {
 	val = xfconf_channel_get_uint (channel, BRIGHTNESS_ON_AC, 9);
 	
 	gtk_range_set_value (GTK_RANGE(brg), val);
 	
-	g_signal_connect (brg, "value-changed",
-			  G_CALLBACK(brightness_on_ac_value_changed_cb), channel);
-			  
-	g_signal_connect (brg, "format-value", 
-			  G_CALLBACK(format_brightness_value_cb), NULL);
     }
     else
     {
-	frame = glade_xml_get_widget (xml, "on-ac-brg-frame");
+	frame = GTK_WIDGET (gtk_builder_get_object (xml, "on-ac-brg-frame"));
 	gtk_widget_hide_all (frame);
     }
 #ifndef HAVE_DPMS
     if ( !has_lcd_brightness )
     {
-	gtk_notebook_remove_page (GTK_NOTEBOOK (glade_xml_get_widget (xml, "on-ac-notebook")), 1);
+	gtk_notebook_remove_page (GTK_NOTEBOOK (GTK_WIDGET (gtk_builder_get_object (xml, "on-ac-notebook"))), 1);
     }
 #endif
 }
@@ -942,7 +989,7 @@
     
     list_store = gtk_list_store_new(2, G_TYPE_STRING, G_TYPE_INT);
     
-    tray = glade_xml_get_widget (xml, "tray-combox");
+    tray = GTK_WIDGET (gtk_builder_get_object (xml, "tray-combox"));
     gtk_combo_box_set_model (GTK_COMBO_BOX(tray), GTK_TREE_MODEL(list_store));
 
     gtk_list_store_append(list_store, &iter);
@@ -956,18 +1003,13 @@
     
     show_tray = xfconf_channel_get_uint (channel, SHOW_TRAY_ICON_CFG, 1);
     gtk_combo_box_set_active (GTK_COMBO_BOX(tray), show_tray);
-    g_signal_connect (tray, "changed",
-		      G_CALLBACK(set_show_tray_icon_cb), channel);
 		      
-    dpms = glade_xml_get_widget (xml, "enable-dpms");
+    dpms = GTK_WIDGET (gtk_builder_get_object (xml, "enable-dpms"));
 #ifdef HAVE_DPMS
     /*
      * Global dpms settings (enable/disable)
      */
    
-    g_signal_connect (dpms, "toggled",
-		      G_CALLBACK(dpms_toggled_cb), channel);
-		      
     val = xfconf_channel_get_bool (channel, DPMS_ENABLED_CFG, TRUE);
     
     gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(dpms), val);
@@ -981,8 +1023,8 @@
      * Power button
      */
     list_store = gtk_list_store_new (2, G_TYPE_STRING, G_TYPE_INT);
-    power = glade_xml_get_widget (xml, "power-combox");
-    power_label = glade_xml_get_widget (xml, "power-label");
+    power = GTK_WIDGET (gtk_builder_get_object (xml, "power-combox"));
+    power_label = GTK_WIDGET (gtk_builder_get_object (xml, "power-label"));
     
     if ( has_power_button )
     {
@@ -1015,9 +1057,6 @@
 	gtk_list_store_append (list_store, &iter);
 	gtk_list_store_set (list_store, &iter, 0, _("Ask"), 1, 4, -1);
 	
-	g_signal_connect (power, "changed",
-			  G_CALLBACK(set_power_changed_cb), channel);
-	
 	default_power_value = xfconf_channel_get_string (channel, POWER_SWITCH_CFG, "Nothing");
 	power_val_int = xfpm_shutdown_string_to_int (default_power_value );
 	
@@ -1051,8 +1090,8 @@
      * Hibernate button
      */
     list_store = gtk_list_store_new (2, G_TYPE_STRING, G_TYPE_INT);
-    hibernate = glade_xml_get_widget (xml, "hibernate-combox");
-    hibernate_label = glade_xml_get_widget (xml, "hibernate-label");
+    hibernate = GTK_WIDGET (gtk_builder_get_object (xml, "hibernate-combox"));
+    hibernate_label = GTK_WIDGET (gtk_builder_get_object (xml, "hibernate-label"));
     if (has_hibernate_button )
     {
 	if (!user_privilege )
@@ -1081,9 +1120,6 @@
 	gtk_list_store_append (list_store, &iter);
 	gtk_list_store_set (list_store, &iter, 0, _("Ask"), 1, 4, -1);
 	
-	g_signal_connect (hibernate, "changed",
-			  G_CALLBACK(set_hibernate_changed_cb), channel);
-	
 	default_hibernate_value = xfconf_channel_get_string (channel, HIBERNATE_SWITCH_CFG, "Nothing");
 	hibernate_val_int = xfpm_shutdown_string_to_int (default_hibernate_value );
 	
@@ -1117,8 +1153,8 @@
      * Sleep button 
      */
     list_store = gtk_list_store_new (2, G_TYPE_STRING, G_TYPE_INT);
-    sleep_w = glade_xml_get_widget (xml, "sleep-combox");
-    sleep_label = glade_xml_get_widget (xml, "sleep-label");
+    sleep_w = GTK_WIDGET (gtk_builder_get_object (xml, "sleep-combox"));
+    sleep_label = GTK_WIDGET (gtk_builder_get_object (xml, "sleep-label"));
     if ( has_sleep_button )
     {
 	if (!user_privilege )
@@ -1147,9 +1183,6 @@
 	gtk_list_store_append (list_store, &iter);
 	gtk_list_store_set (list_store, &iter, 0, _("Ask"), 1, 4, -1);
 	
-	g_signal_connect (sleep_w, "changed",
-			  G_CALLBACK(set_sleep_changed_cb), channel);
-	
 	default_sleep_value = xfconf_channel_get_string (channel, SLEEP_SWITCH_CFG, "Nothing");
 	sleep_val_int = xfpm_shutdown_string_to_int (default_sleep_value );
 	if ( G_UNLIKELY (sleep_val_int == -1 || sleep_val_int == 3) ) 
@@ -1181,13 +1214,11 @@
      * Enable/Disable Notification
      */
     
-    notify = glade_xml_get_widget (xml, "notification");
+    notify = GTK_WIDGET (gtk_builder_get_object (xml, "notification"));
     val = xfconf_channel_get_bool (channel, GENERAL_NOTIFICATION_CFG, TRUE);
     
     gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(notify), val);
     
-    g_signal_connect (notify, "toggled",
-		      G_CALLBACK(notify_toggled_cb), channel);
 }
 
 static void
@@ -1203,8 +1234,8 @@
     GtkWidget *sleep_dpms_mode;
     GtkWidget *suspend_dpms_mode;
     
-    GtkWidget *inact_suspend = glade_xml_get_widget (xml, "inactivity-suspend");
-    GtkWidget *inact_hibernate = glade_xml_get_widget (xml, "inactivity-hibernate");
+    GtkWidget *inact_suspend = GTK_WIDGET (gtk_builder_get_object (xml, "inactivity-suspend"));
+    GtkWidget *inact_hibernate = GTK_WIDGET (gtk_builder_get_object (xml, "inactivity-hibernate"));
     
     if ( !can_suspend )
     {
@@ -1218,12 +1249,6 @@
 	gtk_widget_set_tooltip_text (inact_hibernate, _("Hibernate operation not permitted"));
     }
    
-    g_signal_connect (inact_suspend, "toggled",
-		      G_CALLBACK (set_suspend_inactivity), channel);
-		      
-    g_signal_connect (inact_hibernate, "toggled",
-		      G_CALLBACK (set_hibernate_inactivity), channel);
-		      
     str = xfconf_channel_get_string (channel, INACTIVITY_SLEEP_MODE, "Suspend");
     if ( xfpm_strequal (str, "Suspend") )
 	gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (inact_suspend), TRUE);
@@ -1237,15 +1262,10 @@
    
     g_free (str);
 
-    sleep_dpms_mode = glade_xml_get_widget (xml, "sleep-dpms-mode");
-    suspend_dpms_mode = glade_xml_get_widget (xml, "suspend-dpms-mode");
+    sleep_dpms_mode = GTK_WIDGET (gtk_builder_get_object (xml, "sleep-dpms-mode"));
+    suspend_dpms_mode = GTK_WIDGET (gtk_builder_get_object (xml, "suspend-dpms-mode"));
     
 #ifdef HAVE_DPMS
-    g_signal_connect (sleep_dpms_mode, "toggled",
-		      G_CALLBACK(set_dpms_sleep_mode), channel);
-    g_signal_connect (suspend_dpms_mode, "toggled",
-		      G_CALLBACK(set_dpms_suspend_mode), channel);
-		      
     str = xfconf_channel_get_string (channel, DPMS_SLEEP_MODE, "sleep");
     
     if ( xfpm_strequal (str, "sleep" ) )
@@ -1263,23 +1283,18 @@
 #else
     gtk_widget_hide (sleep_dpms_mode);
     gtk_widget_hide (suspend_dpms_mode);
-    gtk_widget_hide (glade_xml_get_widget (xml, "dpms-mode-label"));
+    gtk_widget_hide (GTK_WIDGET (gtk_builder_get_object (xml, "dpms-mode-label")));
 #endif
 
     /*
      * Critical battery level
      */
-    critical_level = glade_xml_get_widget (xml, "critical-spin");
+    critical_level = GTK_WIDGET (gtk_builder_get_object (xml, "critical-spin"));
     if ( system_laptop )
     {
 	gtk_widget_set_tooltip_text (critical_level, 
 				     _("When all the power sources of the computer reach this charge level"));
     
-	g_signal_connect (critical_level, "output", 
-			  G_CALLBACK(critical_spin_output_cb), NULL);
-	g_signal_connect (critical_level, "value-changed", 
-			  G_CALLBACK(critical_level_value_changed_cb), channel);
-		      
 	val = xfconf_channel_get_uint (channel, CRITICAL_POWER_LEVEL, 10 );
 
 	if ( val > 20 )
@@ -1292,7 +1307,7 @@
     }
     else
     {
-	label = glade_xml_get_widget (xml, "critical-level-label" );
+	label = GTK_WIDGET (gtk_builder_get_object (xml, "critical-level-label" ));
 	gtk_widget_hide (critical_level);
 	gtk_widget_hide (label);
     }
@@ -1300,7 +1315,7 @@
     /*
      * Lock screen for suspend/hibernate
      */
-    lock = glade_xml_get_widget (xml, "lock-screen");
+    lock = GTK_WIDGET (gtk_builder_get_object (xml, "lock-screen"));
     
     if ( !user_privilege )
     {
@@ -1310,18 +1325,14 @@
     
     val = xfconf_channel_get_bool (channel, LOCK_SCREEN_ON_SLEEP, TRUE);
     gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(lock), val);
-    g_signal_connect (lock, "toggled",
-		      G_CALLBACK(lock_screen_toggled_cb), channel);
  
-    cpu = glade_xml_get_widget (xml, "cpu-freq");
+    cpu = GTK_WIDGET (gtk_builder_get_object (xml, "cpu-freq"));
     
 #ifdef SYSTEM_IS_LINUX
     if ( system_laptop )
     {
 	val = xfconf_channel_get_bool (channel, CPU_FREQ_CONTROL, TRUE);
 	gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(cpu), val);
-	g_signal_connect (cpu, "toggled",
-		          G_CALLBACK(cpu_freq_control_changed_cb), channel);
     }
     else
 	gtk_widget_hide (cpu);
@@ -1331,8 +1342,8 @@
 
 }
 
-static void
-_cursor_changed_cb(GtkTreeView *view,gpointer data)
+void
+_cursor_changed_cb (GtkTreeView *view, gpointer data)
 {
     GtkTreeSelection *sel;
     GtkTreeModel     *model;
@@ -1352,7 +1363,7 @@
 
     if ( G_LIKELY (int_data >= 0 && int_data <= 3) )
     {
-	GtkWidget *nt = glade_xml_get_widget (xml, "main-notebook");
+	GtkWidget *nt = GTK_WIDGET (gtk_builder_get_object (xml, "main-notebook"));
         gtk_notebook_set_current_page(GTK_NOTEBOOK(nt), int_data);
     }
 }
@@ -1360,7 +1371,7 @@
 static void
 xfpm_settings_tree_view (XfconfChannel *channel, gboolean system_laptop)
 {
-    GtkWidget *view = glade_xml_get_widget (xml, "treeview");
+    GtkWidget *view;
     GdkPixbuf *pix;
     GtkListStore *list_store;
     GtkTreeIter iter;
@@ -1370,13 +1381,13 @@
     GtkTreePath *path;
     gint i = 0;
     
+    view = GTK_WIDGET (gtk_builder_get_object (xml, "treeview"));
     list_store = gtk_list_store_new(3, GDK_TYPE_PIXBUF, G_TYPE_STRING, G_TYPE_INT);
 
     gtk_tree_view_set_model (GTK_TREE_VIEW(view), GTK_TREE_MODEL(list_store));
     
     gtk_tree_view_set_rules_hint(GTK_TREE_VIEW(view),TRUE);
     col = gtk_tree_view_column_new();
-    //gtk_tree_view_column_set_spacing(col, 10);
 
     renderer = gtk_cell_renderer_pixbuf_new();
     
@@ -1454,7 +1465,6 @@
     gtk_tree_selection_select_path(sel, path);
     gtk_tree_path_free(path);
 
-    g_signal_connect(view,"cursor-changed",G_CALLBACK(_cursor_changed_cb),NULL);
 }
 
 static void
@@ -1496,6 +1506,8 @@
     GtkWidget *plug;
     GtkWidget *dialog;
     GtkWidget *allbox;
+    GError *error = NULL;
+
     TRACE("system_laptop=%s user_privilege=%s can_suspend=%s can_hibernate=%s has_lcd_brightness=%s has_lid=%s "\
           "has_sleep_button=%s has_hibernate_button=%s has_power_button=%s",
 	  xfpm_bool_to_string (system_laptop), xfpm_bool_to_string (user_privilege),
@@ -1503,13 +1515,26 @@
 	  xfpm_bool_to_string (has_lcd_brightness), xfpm_bool_to_string (has_lid),
 	  xfpm_bool_to_string (has_sleep_button), xfpm_bool_to_string (has_hibernate_button),
 	  xfpm_bool_to_string (has_power_button) );
-	  
-    xml = glade_xml_new_from_buffer (xfpm_settings_glade,
-				     xfpm_settings_glade_length,
-				     "xfpm-settings-dialog", NULL);
+
+    xml = xfpm_builder_new_from_file (INTERFACE_FILE, &error);
     
-    dialog = glade_xml_get_widget (xml, "xfpm-settings-dialog");
+    if ( G_UNLIKELY (error) )
+    {
+	xfce_err ("%s : %s", error->message, _("Check your power manager installation"));
+	g_error ("%s", error->message);
+    }
 
+#ifdef HAVE_DPMS
+    on_battery_dpms_sleep = GTK_WIDGET (gtk_builder_get_object (xml, "sleep-dpms-on-battery"));
+    on_battery_dpms_off = GTK_WIDGET (gtk_builder_get_object (xml, "off-dpms-on-battery"));
+    on_ac_dpms_sleep = GTK_WIDGET (gtk_builder_get_object (xml, "sleep-dpms-on-ac"));
+    on_ac_dpms_off = GTK_WIDGET (gtk_builder_get_object (xml, "off-dpms-on-ac"));
+#endif
+
+    gtk_builder_connect_signals (xml, channel);
+    
+    dialog = GTK_WIDGET (gtk_builder_get_object (xml, "xfpm-settings-dialog"));
+
     xfpm_settings_on_ac (channel, user_privilege, can_suspend, can_hibernate, has_lcd_brightness, has_lid );
     
     if ( system_laptop )
@@ -1524,7 +1549,7 @@
     
     if ( id != 0 )
     {
-	allbox = glade_xml_get_widget (xml, "allbox");
+	allbox = GTK_WIDGET (gtk_builder_get_object (xml, "allbox"));
 	plug = gtk_plug_new (id);
 	gtk_widget_show (plug);
 	gtk_widget_reparent (allbox, plug);




More information about the Goodies-commits mailing list