[gnome-control-center/wip/datetime-redesign: 6/13] datetime: Implement listbox based overview



commit 6289817b662df7cd6350cc88d38a27168731fe1c
Author: Kalev Lember <kalevlember gmail com>
Date:   Mon Jul 29 16:32:04 2013 +0200

    datetime: Implement listbox based overview
    
    ... and move existing date/time and timezone settings to separate subdialogs.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=694985

 panels/datetime/cc-datetime-panel.c |  163 +++++-
 panels/datetime/datetime.ui         | 1099 ++++++++++++++++++++++-------------
 2 files changed, 850 insertions(+), 412 deletions(-)
---
diff --git a/panels/datetime/cc-datetime-panel.c b/panels/datetime/cc-datetime-panel.c
index b384b11..6170149 100644
--- a/panels/datetime/cc-datetime-panel.c
+++ b/panels/datetime/cc-datetime-panel.c
@@ -1,5 +1,6 @@
 /*
  * Copyright (C) 2010 Intel, Inc
+ * Copyright (C) 2013 Kalev Lember <kalevlember gmail com>
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -269,6 +270,15 @@ update_time (CcDateTimePanel *self)
   label = g_date_time_format (priv->date, "%M");
   gtk_label_set_text (GTK_LABEL (W("minutes_label")), label);
   g_free (label);
+
+  /* Update the time on the listbow row */
+  if (use_ampm)
+    label = g_date_time_format (priv->date, "%e %B %Y, %l:%M %p");
+  else
+    label = g_date_time_format (priv->date, "%e %B %Y, %R");
+
+  gtk_label_set_text (GTK_LABEL (W ("datetime_label")), label);
+  g_free (label);
 }
 
 static void
@@ -447,6 +457,8 @@ update_timezone (CcDateTimePanel *self)
   gchar **split;
   GtkTreeIter iter;
   GtkTreeModel *model;
+  TzInfo *tz_info;
+  char *label;
 
   /* tz.c updates the local timezone, which means the spin buttons can be
    * updated with the current time of the new location */
@@ -503,6 +515,16 @@ update_timezone (CcDateTimePanel *self)
   while (gtk_tree_model_iter_next (model, &iter));
 
   g_strfreev (split);
+
+  /* Update the timezone on the listbow row */
+  tz_info = tz_info_from_location (self->priv->current_location);
+  label = g_strdup_printf ("%s (%s)",
+                           tz_info->tzname_normal,
+                           self->priv->current_location->zone);
+  tz_info_free (tz_info);
+
+  gtk_label_set_text (GTK_LABEL (W ("timezone_label")), label);
+  g_free (label);
 }
 
 static void
@@ -685,8 +707,7 @@ update_widget_state_for_ntp (CcDateTimePanel *panel,
   /* need to check polkit before revealing to user */
   allowed = (! priv->permission || g_permission_get_allowed (priv->permission));
 
-  gtk_widget_set_sensitive (W("table1"), !using_ntp && allowed);
-  gtk_widget_set_sensitive (W("table2"), !using_ntp && allowed);
+  gtk_widget_set_sensitive (W("datetime-button"), !using_ntp && allowed);
 }
 
 static void
@@ -796,10 +817,16 @@ on_permission_changed (GPermission *permission,
   using_ntp = gtk_switch_get_active (GTK_SWITCH (W("network_time_switch")));
 
   /* All the widgets but the lock button and the 24h setting */
-  gtk_widget_set_sensitive (W("map-vbox"), allowed);
-  gtk_widget_set_sensitive (W("hbox2"), allowed);
-  gtk_widget_set_sensitive (W("alignment2"), allowed);
+  gtk_widget_set_sensitive (W("auto-datetime-row"), allowed);
+  gtk_widget_set_sensitive (W("timezone-button"), allowed);
   update_widget_state_for_ntp (data, using_ntp);
+
+  /* Hide the subdialogs if we no longer have permissions */
+  if (!allowed)
+    {
+      gtk_widget_hide (GTK_WIDGET (W ("datetime-dialog")));
+      gtk_widget_hide (GTK_WIDGET (W ("timezone-dialog")));
+    }
 }
 
 static void
@@ -936,11 +963,114 @@ reorder_date_widget (DateEndianess           endianess,
 }
 
 static void
+update_header (GtkListBoxRow *row,
+               GtkListBoxRow *before,
+               gpointer       user_data)
+{
+  GtkWidget *current;
+
+  if (before == NULL)
+    return;
+
+  current = gtk_list_box_row_get_header (row);
+  if (current == NULL)
+    {
+      current = gtk_separator_new (GTK_ORIENTATION_HORIZONTAL);
+      gtk_widget_show (current);
+      gtk_list_box_row_set_header (row, current);
+    }
+}
+
+static void
+run_dialog (CcDateTimePanel *self,
+            const gchar     *dialog_name)
+{
+  CcDateTimePanelPrivate *priv = self->priv;
+  GtkWidget *dialog, *parent;
+
+  dialog = W (dialog_name);
+
+  parent = cc_shell_get_toplevel (cc_panel_get_shell (CC_PANEL (self)));
+
+  gtk_window_set_transient_for (GTK_WINDOW (dialog), GTK_WINDOW (parent));
+  gtk_dialog_run (GTK_DIALOG (dialog));
+}
+
+static void
+list_box_row_activated (GtkListBox      *listbox,
+                        GtkListBoxRow   *row,
+                        CcDateTimePanel *self)
+
+{
+  gchar *widget_name, *found;
+
+  widget_name = g_strdup (gtk_buildable_get_name (GTK_BUILDABLE (row)));
+
+  if (!widget_name)
+    return;
+
+  gtk_list_box_select_row (listbox, NULL);
+
+  /* replace "button" with "dialog" */
+  found = g_strrstr (widget_name, "button");
+
+  if (!found)
+    goto out;
+
+  memcpy (found, "dialog", 6);
+
+  run_dialog (self, widget_name);
+
+out:
+  g_free (widget_name);
+}
+
+static void
+setup_main_listview (CcDateTimePanel *self)
+{
+  CcDateTimePanelPrivate *priv = self->priv;
+  GtkWidget *listbox;
+
+  listbox = W ("listbox");
+  gtk_list_box_set_header_func (GTK_LIST_BOX (listbox), update_header, NULL, NULL);
+  g_signal_connect (listbox, "row-activated",
+                    G_CALLBACK (list_box_row_activated), self);
+}
+
+static void
+setup_timezone_dialog (CcDateTimePanel *self)
+{
+  CcDateTimePanelPrivate *priv = self->priv;
+  GtkWidget *button;
+  GtkWidget *dialog;
+
+  button = W ("timezone-close-button");
+  dialog = W ("timezone-dialog");
+  g_signal_connect_swapped (button, "clicked",
+                            G_CALLBACK (gtk_widget_hide), dialog);
+  g_signal_connect (dialog, "delete-event",
+                    G_CALLBACK (gtk_widget_hide_on_delete), NULL);
+}
+
+static void
+setup_datetime_dialog (CcDateTimePanel *self)
+{
+  CcDateTimePanelPrivate *priv = self->priv;
+  GtkWidget *button;
+  GtkWidget *dialog;
+
+  button = W ("datetime-close-button");
+  dialog = W ("datetime-dialog");
+  g_signal_connect_swapped (button, "clicked",
+                            G_CALLBACK (gtk_widget_hide), dialog);
+  g_signal_connect (dialog, "delete-event",
+                    G_CALLBACK (gtk_widget_hide_on_delete), NULL);
+}
+
+static void
 cc_date_time_panel_init (CcDateTimePanel *self)
 {
   CcDateTimePanelPrivate *priv;
-  gchar *objects[] = { "datetime-panel", "region-liststore", "city-liststore",
-      "month-liststore", "city-modelfilter", "city-modelsort", NULL };
   char *buttons[] = { "hour_up_button", "hour_down_button", "min_up_button",
           "min_down_button", "ampm_up_button", "ampm_down_button" };
   GtkWidget *widget;
@@ -971,9 +1101,9 @@ cc_date_time_panel_init (CcDateTimePanel *self)
   }
 
   priv->builder = gtk_builder_new ();
-  ret = gtk_builder_add_objects_from_resource (priv->builder,
-                                               "/org/gnome/control-center/datetime/datetime.ui",
-                                               objects, &err);
+  ret = gtk_builder_add_from_resource (priv->builder,
+                                       "/org/gnome/control-center/datetime/datetime.ui",
+                                       &error);
 
   if (ret == 0)
     {
@@ -983,6 +1113,10 @@ cc_date_time_panel_init (CcDateTimePanel *self)
       return;
     }
 
+  setup_timezone_dialog (self);
+  setup_datetime_dialog (self);
+  setup_main_listview (self);
+
   /* set up network time button */
   if (priv->dtm != NULL)
     {
@@ -1057,10 +1191,11 @@ cc_date_time_panel_init (CcDateTimePanel *self)
      priv->ampm_available = TRUE;
     }
 
-  gtk_container_add (GTK_CONTAINER (self),
-                     GTK_WIDGET (gtk_builder_get_object (priv->builder,
-                                                         "datetime-panel")));
-
+  widget = W ("vbox_datetime");
+  g_object_ref (widget);
+  gtk_widget_unparent (widget);
+  gtk_container_add (GTK_CONTAINER (self), widget);
+  g_object_unref (widget);
 
   /* setup the time itself */
   priv->clock_tracker = g_object_new (GNOME_TYPE_WALL_CLOCK, NULL);
diff --git a/panels/datetime/datetime.ui b/panels/datetime/datetime.ui
index b0faa0c..d12bcdc 100644
--- a/panels/datetime/datetime.ui
+++ b/panels/datetime/datetime.ui
@@ -76,442 +76,769 @@
       </row>
     </data>
   </object>
-  <object class="GtkListStore" id="region-liststore">
-    <columns>
-      <!-- column-name region -->
-      <column type="gchararray"/>
-      <!-- column-name region-translated -->
-      <column type="gchararray"/>
-    </columns>
-  </object>
-  <object class="GtkWindow" id="window1">
+  <object class="GtkDialog" id="datetime-dialog">
     <property name="can_focus">False</property>
-    <child>
-      <object class="GtkAlignment" id="datetime-panel">
-        <property name="visible">True</property>
+    <property name="title" translatable="yes">Date &amp; Time</property>
+    <property name="resizable">False</property>
+    <property name="type_hint">dialog</property>
+    <child internal-child="vbox">
+      <object class="GtkBox" id="dialog-vbox2">
         <property name="can_focus">False</property>
-        <property name="top_padding">16</property>
-        <property name="bottom_padding">16</property>
-        <property name="left_padding">16</property>
-        <property name="right_padding">16</property>
+        <property name="orientation">vertical</property>
+        <property name="spacing">2</property>
+        <child internal-child="action_area">
+          <object class="GtkButtonBox" id="dialog-action_area2">
+            <property name="can_focus">False</property>
+            <property name="layout_style">end</property>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <object class="GtkButton" id="datetime-close-button">
+                <property name="label">gtk-close</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="has_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">True</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="fill">True</property>
+            <property name="pack_type">end</property>
+            <property name="position">0</property>
+          </packing>
+        </child>
         <child>
-          <object class="GtkVBox" id="hbox">
+          <object class="GtkVBox" id="time-box">
             <property name="visible">True</property>
             <property name="can_focus">False</property>
             <child>
-              <object class="GtkHBox" id="vbox">
+              <object class="GtkAlignment" id="alignment2">
                 <property name="visible">True</property>
                 <property name="can_focus">False</property>
-                <property name="spacing">24</property>
+                <property name="xscale">0</property>
                 <child>
-                  <object class="GtkVBox" id="map-vbox">
+                  <object class="GtkTable" id="table2">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
-                    <property name="spacing">6</property>
+                    <property name="n_rows">3</property>
+                    <property name="n_columns">4</property>
+                    <property name="column_spacing">12</property>
+                    <property name="row_spacing">6</property>
+                    <child>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <object class="GtkLabel" id="label2">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="label" translatable="yes" comments="Translator: this is the 
separator between hours and minutes, like in HH:MM">:</property>
+                        <attributes>
+                          <attribute name="weight" value="bold"/>
+                          <attribute name="scale" value="2.5"/>
+                        </attributes>
+                      </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>
+                      <placeholder/>
+                    </child>
+                    <child>
+                      <object class="GtkLabel" id="hours_label">
+                        <property name="visible">True</property>
+                        <property name="can_focus">False</property>
+                        <property name="label">16</property>
+                        <attributes>
+                          <attribute name="weight" value="bold"/>
+                          <attribute name="scale" value="2.5"/>
+                        </attributes>
+                      </object>
+                      <packing>
+                        <property name="top_attach">1</property>
+                        <property name="bottom_attach">2</property>
+                      </packing>
+                    </child>
                     <child>
-                      <object class="GtkAspectFrame" id="aspectmap">
+                      <object class="GtkLabel" id="minutes_label">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
-                        <property name="label_xalign">0</property>
-                        <property name="shadow_type">none</property>
+                        <property name="label">45</property>
+                        <attributes>
+                          <attribute name="weight" value="bold"/>
+                          <attribute name="scale" value="2.5"/>
+                        </attributes>
+                      </object>
+                      <packing>
+                        <property name="left_attach">2</property>
+                        <property name="right_attach">3</property>
+                        <property name="top_attach">1</property>
+                        <property name="bottom_attach">2</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkButton" id="hour_up_button">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="receives_default">True</property>
+                        <property name="relief">none</property>
+                        <child internal-child="accessible">
+                          <object class="AtkObject" id="hour_up_accessible">
+                            <property name="accessible-description" translatable="yes">Set the time one hour 
ahead.</property>
+                          </object>
+                        </child>
                         <child>
-                          <placeholder/>
+                          <object class="GtkArrow" id="arrow1">
+                            <property name="visible">True</property>
+                            <property name="can_focus">False</property>
+                            <property name="arrow_type">up</property>
+                          </object>
+                        </child>
+                      </object>
+                    </child>
+                    <child>
+                      <object class="GtkButton" id="hour_down_button">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="receives_default">True</property>
+                        <property name="relief">none</property>
+                        <child internal-child="accessible">
+                          <object class="AtkObject" id="hour_down_accessible">
+                            <property name="accessible-description" translatable="yes">Set the time one hour 
back.</property>
+                          </object>
+                        </child>
+                        <child>
+                          <object class="GtkArrow" id="arrow2">
+                            <property name="visible">True</property>
+                            <property name="can_focus">False</property>
+                            <property name="arrow_type">down</property>
+                          </object>
                         </child>
                       </object>
                       <packing>
-                        <property name="expand">True</property>
-                        <property name="fill">True</property>
-                        <property name="position">0</property>
+                        <property name="top_attach">2</property>
+                        <property name="bottom_attach">3</property>
                       </packing>
                     </child>
                     <child>
-                      <object class="GtkHBox" id="hbox1">
+                      <object class="GtkButton" id="min_up_button">
                         <property name="visible">True</property>
-                        <property name="can_focus">False</property>
-                        <property name="spacing">12</property>
+                        <property name="can_focus">True</property>
+                        <property name="receives_default">True</property>
+                        <property name="relief">none</property>
+                        <child internal-child="accessible">
+                          <object class="AtkObject" id="min_up_accessible">
+                            <property name="accessible-description" translatable="yes">Set the time one 
minute ahead.</property>
+                          </object>
+                        </child>
                         <child>
-                          <object class="GtkLabel" id="label1">
+                          <object class="GtkArrow" id="arrow4">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
-                            <property name="xalign">0</property>
-                            <property name="label" translatable="yes">_Region:</property>
-                            <property name="use_underline">True</property>
-                            <property name="mnemonic_widget">region_combobox</property>
+                            <property name="arrow_type">up</property>
+                          </object>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="left_attach">2</property>
+                        <property name="right_attach">3</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkButton" id="min_down_button">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="receives_default">True</property>
+                        <property name="relief">none</property>
+                        <child internal-child="accessible">
+                          <object class="AtkObject" id="min_down_accessible">
+                            <property name="accessible-description" translatable="yes">Set the time one 
minute back.</property>
                           </object>
-                          <packing>
-                            <property name="expand">False</property>
-                            <property name="fill">True</property>
-                            <property name="position">0</property>
-                          </packing>
                         </child>
                         <child>
-                          <object class="GtkComboBox" id="region_combobox">
+                          <object class="GtkArrow" id="arrow3">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
-                            <property name="model">region-liststore</property>
-                            <child>
-                              <object class="GtkCellRendererText" id="cellrenderertext1"/>
-                              <attributes>
-                                <attribute name="text">1</attribute>
-                              </attributes>
-                            </child>
+                            <property name="arrow_type">down</property>
+                          </object>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="left_attach">2</property>
+                        <property name="right_attach">3</property>
+                        <property name="top_attach">2</property>
+                        <property name="bottom_attach">3</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkLabel" id="ampm_label">
+                        <property name="can_focus">False</property>
+                        <property name="label">AM</property>
+                        <attributes>
+                          <attribute name="weight" value="bold"/>
+                          <attribute name="scale" value="2.5"/>
+                        </attributes>
+                      </object>
+                      <packing>
+                        <property name="left_attach">3</property>
+                        <property name="right_attach">4</property>
+                        <property name="top_attach">1</property>
+                        <property name="bottom_attach">2</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkButton" id="ampm_up_button">
+                        <property name="can_focus">True</property>
+                        <property name="receives_default">True</property>
+                        <property name="relief">none</property>
+                        <child internal-child="accessible">
+                          <object class="AtkObject" id="ampm_up_accessible">
+                            <property name="accessible-description" translatable="yes">Switch between AM and 
PM.</property>
                           </object>
-                          <packing>
-                            <property name="expand">True</property>
-                            <property name="fill">True</property>
-                            <property name="position">1</property>
-                          </packing>
                         </child>
                         <child>
-                          <object class="GtkLabel" id="label4">
+                          <object class="GtkArrow" id="arrow5">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
-                            <property name="xalign">0</property>
-                            <property name="label" translatable="yes">_City:</property>
-                            <property name="use_underline">True</property>
-                            <property name="mnemonic_widget">city_combobox</property>
+                            <property name="arrow_type">up</property>
+                          </object>
+                        </child>
+                      </object>
+                      <packing>
+                        <property name="left_attach">3</property>
+                        <property name="right_attach">4</property>
+                      </packing>
+                    </child>
+                    <child>
+                      <object class="GtkButton" id="ampm_down_button">
+                        <property name="can_focus">True</property>
+                        <property name="receives_default">True</property>
+                        <property name="relief">none</property>
+                        <child internal-child="accessible">
+                          <object class="AtkObject" id="ampm_down_accessible">
+                            <property name="accessible-description" translatable="yes">Switch between AM and 
PM.</property>
                           </object>
-                          <packing>
-                            <property name="expand">False</property>
-                            <property name="fill">True</property>
-                            <property name="position">2</property>
-                          </packing>
                         </child>
                         <child>
-                          <object class="GtkComboBox" id="city_combobox">
+                          <object class="GtkArrow" id="arrow6">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
-                            <property name="model">city-modelsort</property>
-                            <child>
-                              <object class="GtkCellRendererText" id="cellrenderertext2"/>
-                              <attributes>
-                                <attribute name="text">2</attribute>
-                              </attributes>
-                            </child>
+                            <property name="arrow_type">down</property>
                           </object>
-                          <packing>
-                            <property name="expand">True</property>
-                            <property name="fill">True</property>
-                            <property name="position">3</property>
-                          </packing>
                         </child>
                       </object>
                       <packing>
-                        <property name="expand">False</property>
-                        <property name="fill">True</property>
-                        <property name="pack_type">end</property>
-                        <property name="position">1</property>
+                        <property name="left_attach">3</property>
+                        <property name="right_attach">4</property>
+                        <property name="top_attach">2</property>
+                        <property name="bottom_attach">3</property>
                       </packing>
                     </child>
                   </object>
+                </child>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">True</property>
+                <property name="padding">12</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkHBox" id="table1">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="spacing">12</property>
+                <child>
+                  <object class="GtkComboBox" id="month-combobox">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="model">month-liststore</property>
+                    <child internal-child="accessible">
+                      <object class="AtkObject" id="month-accessible">
+                        <property name="accessible-description" translatable="yes">Month</property>
+                      </object>
+                    </child>
+                    <child>
+                      <object class="GtkCellRendererText" id="cellrenderertext3"/>
+                      <attributes>
+                        <attribute name="text">0</attribute>
+                      </attributes>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="expand">True</property>
+                    <property name="fill">True</property>
+                    <property name="position">0</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkSpinButton" id="day-spinbutton">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="invisible_char">•</property>
+                    <property name="width_chars">3</property>
+                    <property name="numeric">True</property>
+                    <property name="wrap">True</property>
+                    <child internal-child="accessible">
+                      <object class="AtkObject" id="day-accessible">
+                        <property name="accessible-description" translatable="yes">Day</property>
+                      </object>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="expand">True</property>
+                    <property name="fill">True</property>
+                    <property name="position">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkSpinButton" id="year-spinbutton">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="invisible_char">•</property>
+                    <property name="width_chars">5</property>
+                    <property name="numeric">True</property>
+                    <property name="wrap">True</property>
+                    <child internal-child="accessible">
+                      <object class="AtkObject" id="year-accessible">
+                        <property name="accessible-description" translatable="yes">Year</property>
+                      </object>
+                    </child>
+                  </object>
                   <packing>
                     <property name="expand">True</property>
                     <property name="fill">True</property>
+                    <property name="position">2</property>
+                  </packing>
+                </child>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">True</property>
+                <property name="padding">12</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkBox" id="24h_box">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="orientation">vertical</property>
+                <child>
+                  <object class="GtkRadioButton" id="24h_button">
+                    <property name="label" translatable="yes">24-hour</property>
+                    <property name="use_action_appearance">False</property>
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="receives_default">False</property>
+                    <property name="xalign">0</property>
+                    <property name="active">True</property>
+                    <property name="draw_indicator">True</property>
+                  </object>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="fill">True</property>
+                    <property name="position">0</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkRadioButton" id="12h_button">
+                    <property name="label" translatable="yes">AM/PM</property>
+                    <property name="use_action_appearance">False</property>
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="receives_default">False</property>
+                    <property name="xalign">0</property>
+                    <property name="active">True</property>
+                    <property name="draw_indicator">True</property>
+                    <property name="group">24h_button</property>
+                  </object>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="fill">True</property>
+                    <property name="position">1</property>
+                  </packing>
+                </child>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">True</property>
+                <property name="pack_type">end</property>
+                <property name="position">3</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="fill">True</property>
+            <property name="position">1</property>
+          </packing>
+        </child>
+      </object>
+    </child>
+  </object>
+  <object class="GtkListStore" id="region-liststore">
+    <columns>
+      <!-- column-name region -->
+      <column type="gchararray"/>
+      <!-- column-name region-translated -->
+      <column type="gchararray"/>
+    </columns>
+  </object>
+  <object class="GtkDialog" id="timezone-dialog">
+    <property name="can_focus">False</property>
+    <property name="title" translatable="yes">Time Zone</property>
+    <property name="resizable">False</property>
+    <property name="type_hint">dialog</property>
+    <child internal-child="vbox">
+      <object class="GtkBox" id="dialog-vbox7">
+        <property name="can_focus">False</property>
+        <property name="orientation">vertical</property>
+        <property name="spacing">2</property>
+        <child>
+          <object class="GtkVBox" id="map-vbox">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="spacing">6</property>
+            <child>
+              <object class="GtkAspectFrame" id="aspectmap">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="label_xalign">0</property>
+                <property name="shadow_type">none</property>
+                <child>
+                  <placeholder/>
+                </child>
+              </object>
+              <packing>
+                <property name="expand">True</property>
+                <property name="fill">True</property>
+                <property name="position">0</property>
+              </packing>
+            </child>
+            <child>
+              <object class="GtkHBox" id="hbox1">
+                <property name="visible">True</property>
+                <property name="can_focus">False</property>
+                <property name="spacing">12</property>
+                <child>
+                  <object class="GtkLabel" id="label1">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="xalign">0</property>
+                    <property name="label" translatable="yes">_Region:</property>
+                    <property name="use_underline">True</property>
+                    <property name="mnemonic_widget">region_combobox</property>
+                  </object>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="fill">True</property>
                     <property name="position">0</property>
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkVBox" id="vbox4">
+                  <object class="GtkComboBox" id="region_combobox">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="model">region-liststore</property>
+                    <child>
+                      <object class="GtkCellRendererText" id="cellrenderertext1"/>
+                      <attributes>
+                        <attribute name="text">1</attribute>
+                      </attributes>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="expand">True</property>
+                    <property name="fill">True</property>
+                    <property name="position">1</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkLabel" id="label4">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <property name="xalign">0</property>
+                    <property name="label" translatable="yes">_City:</property>
+                    <property name="use_underline">True</property>
+                    <property name="mnemonic_widget">city_combobox</property>
+                  </object>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="fill">True</property>
+                    <property name="position">2</property>
+                  </packing>
+                </child>
+                <child>
+                  <object class="GtkComboBox" id="city_combobox">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
+                    <property name="model">city-modelsort</property>
                     <child>
-                      <object class="GtkHBox" id="hbox2">
+                      <object class="GtkCellRendererText" id="cellrenderertext2"/>
+                      <attributes>
+                        <attribute name="text">2</attribute>
+                      </attributes>
+                    </child>
+                  </object>
+                  <packing>
+                    <property name="expand">True</property>
+                    <property name="fill">True</property>
+                    <property name="position">3</property>
+                  </packing>
+                </child>
+              </object>
+              <packing>
+                <property name="expand">False</property>
+                <property name="fill">True</property>
+                <property name="pack_type">end</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">True</property>
+            <property name="fill">True</property>
+            <property name="position">0</property>
+          </packing>
+        </child>
+        <child internal-child="action_area">
+          <object class="GtkButtonBox" id="dialog-action_area3">
+            <property name="can_focus">False</property>
+            <property name="layout_style">end</property>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <object class="GtkButton" id="timezone-close-button">
+                <property name="label">gtk-close</property>
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="has_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">True</property>
+                <property name="position">1</property>
+              </packing>
+            </child>
+          </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="fill">True</property>
+            <property name="pack_type">end</property>
+            <property name="position">1</property>
+          </packing>
+        </child>
+      </object>
+    </child>
+  </object>
+  <object class="GtkWindow" id="window_datetime">
+    <property name="can_focus">False</property>
+    <property name="resizable">False</property>
+    <child>
+      <object class="GtkBox" id="vbox_datetime">
+        <property name="visible">True</property>
+        <property name="can_focus">False</property>
+        <property name="margin_left">134</property>
+        <property name="margin_right">134</property>
+        <property name="margin_top">24</property>
+        <property name="margin_bottom">24</property>
+        <property name="orientation">vertical</property>
+        <child>
+          <object class="GtkFrame" id="frame">
+            <property name="visible">True</property>
+            <property name="can_focus">False</property>
+            <property name="label_xalign">0</property>
+            <property name="shadow_type">in</property>
+            <child>
+              <object class="GtkListBox" id="listbox">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="selection_mode">none</property>
+                <child>
+                  <object class="GtkListBoxRow" id="auto-datetime-row">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
+                    <child>
+                      <object class="GtkBox" id="box2">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
-                        <property name="spacing">12</property>
+                        <property name="spacing">50</property>
                         <child>
-                          <object class="GtkLabel" id="label3">
+                          <object class="GtkBox" id="box2a">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
-                            <property name="xalign">0</property>
-                            <property name="label" translatable="yes">_Network Time</property>
-                            <property name="use_underline">True</property>
-                            <property name="mnemonic_widget">network_time_switch</property>
+                            <property name="margin_left">20</property>
+                            <property name="margin_right">20</property>
+                            <property name="margin_top">6</property>
+                            <property name="margin_bottom">6</property>
+                            <property name="orientation">vertical</property>
+                            <child>
+                              <object class="GtkLabel" id="network_time_label">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="xalign">0</property>
+                                <property name="label" translatable="yes">Automatic _Date &amp; 
Time</property>
+                                <property name="use_underline">True</property>
+                                <property name="mnemonic_widget">network_time_switch</property>
+                              </object>
+                              <packing>
+                                <property name="expand">True</property>
+                                <property name="fill">True</property>
+                                <property name="position">0</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkLabel" id="network_time_comment">
+                                <property name="visible">True</property>
+                                <property name="can_focus">False</property>
+                                <property name="xalign">0</property>
+                                <property name="label" translatable="yes">Requires internet access</property>
+                                <style>
+                                  <class name="dim-label"/>
+                                </style>
+                              </object>
+                              <packing>
+                                <property name="expand">True</property>
+                                <property name="fill">True</property>
+                                <property name="position">1</property>
+                              </packing>
+                            </child>
                           </object>
                           <packing>
                             <property name="expand">True</property>
                             <property name="fill">True</property>
-                            <property name="position">1</property>
+                            <property name="position">0</property>
                           </packing>
                         </child>
                         <child>
                           <object class="GtkSwitch" id="network_time_switch">
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
-                            <property name="receives_default">True</property>
+                            <property name="valign">center</property>
+                            <property name="margin_left">20</property>
+                            <property name="margin_right">20</property>
                           </object>
                           <packing>
                             <property name="expand">False</property>
                             <property name="fill">True</property>
-                            <property name="pack_type">end</property>
-                            <property name="position">2</property>
+                            <property name="position">1</property>
                           </packing>
                         </child>
                       </object>
-                      <packing>
-                        <property name="expand">False</property>
-                        <property name="fill">True</property>
-                        <property name="padding">6</property>
-                        <property name="position">0</property>
-                      </packing>
                     </child>
+                  </object>
+                </child>
+                <child>
+                  <object class="GtkListBoxRow" id="auto-timezone-row">
+                    <property name="can_focus">False</property>
                     <child>
-                      <object class="GtkAlignment" id="alignment2">
+                      <object class="GtkBox" id="box3">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
-                        <property name="xscale">0</property>
+                        <property name="spacing">50</property>
                         <child>
-                          <object class="GtkTable" id="table2">
+                          <object class="GtkBox" id="box3a">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
-                            <property name="n_rows">3</property>
-                            <property name="n_columns">4</property>
-                            <property name="column_spacing">12</property>
-                            <property name="row_spacing">6</property>
-                            <child>
-                              <placeholder/>
-                            </child>
-                            <child>
-                              <object class="GtkLabel" id="label2">
-                                <property name="visible">True</property>
-                                <property name="can_focus">False</property>
-                                <property name="label" translatable="yes" comments="Translator: this is the 
separator between hours and minutes, like in HH:MM">:</property>
-                                <attributes>
-                                  <attribute name="weight" value="bold"/>
-                                  <attribute name="scale" value="2.5"/>
-                                </attributes>
-                              </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>
-                              <placeholder/>
-                            </child>
+                            <property name="margin_left">20</property>
+                            <property name="margin_right">20</property>
+                            <property name="margin_top">6</property>
+                            <property name="margin_bottom">6</property>
+                            <property name="orientation">vertical</property>
                             <child>
-                              <object class="GtkLabel" id="hours_label">
+                              <object class="GtkLabel" id="auto_timezone_label">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
-                                <property name="label">16</property>
-                                <attributes>
-                                  <attribute name="weight" value="bold"/>
-                                  <attribute name="scale" value="2.5"/>
-                                </attributes>
+                                <property name="xalign">0</property>
+                                <property name="label" translatable="yes">Automatic Time _Zone</property>
+                                <property name="use_underline">True</property>
+                                <property name="mnemonic_widget">auto_timezone_switch</property>
                               </object>
                               <packing>
-                                <property name="top_attach">1</property>
-                                <property name="bottom_attach">2</property>
+                                <property name="expand">True</property>
+                                <property name="fill">True</property>
+                                <property name="position">0</property>
                               </packing>
                             </child>
                             <child>
-                              <object class="GtkLabel" id="minutes_label">
+                              <object class="GtkLabel" id="auto_timezone_comment">
                                 <property name="visible">True</property>
                                 <property name="can_focus">False</property>
-                                <property name="label">45</property>
-                                <attributes>
-                                  <attribute name="weight" value="bold"/>
-                                  <attribute name="scale" value="2.5"/>
-                                </attributes>
+                                <property name="xalign">0</property>
+                                <property name="label" translatable="yes">Requires internet access</property>
+                                <style>
+                                  <class name="dim-label"/>
+                                </style>
                               </object>
                               <packing>
-                                <property name="left_attach">2</property>
-                                <property name="right_attach">3</property>
-                                <property name="top_attach">1</property>
-                                <property name="bottom_attach">2</property>
-                              </packing>
-                            </child>
-                            <child>
-                              <object class="GtkButton" id="hour_up_button">
-                                <property name="visible">True</property>
-                                <property name="can_focus">True</property>
-                                <property name="receives_default">True</property>
-                                <property name="relief">none</property>
-                                <child internal-child="accessible">
-                                  <object class="AtkObject" id="hour_up_accessible">
-                                    <property name="accessible-description" translatable="yes">Set the time 
one hour ahead.</property>
-                                  </object>
-                                </child>
-                                <child>
-                                  <object class="GtkArrow" id="arrow1">
-                                    <property name="visible">True</property>
-                                    <property name="can_focus">False</property>
-                                    <property name="arrow_type">up</property>
-                                  </object>
-                                </child>
-                              </object>
-                            </child>
-                            <child>
-                              <object class="GtkButton" id="hour_down_button">
-                                <property name="visible">True</property>
-                                <property name="can_focus">True</property>
-                                <property name="receives_default">True</property>
-                                <property name="relief">none</property>
-                                <child internal-child="accessible">
-                                  <object class="AtkObject" id="hour_down_accessible">
-                                    <property name="accessible-description" translatable="yes">Set the time 
one hour back.</property>
-                                  </object>
-                                </child>
-                                <child>
-                                  <object class="GtkArrow" id="arrow2">
-                                    <property name="visible">True</property>
-                                    <property name="can_focus">False</property>
-                                    <property name="arrow_type">down</property>
-                                  </object>
-                                </child>
-                              </object>
-                              <packing>
-                                <property name="top_attach">2</property>
-                                <property name="bottom_attach">3</property>
-                              </packing>
-                            </child>
-                            <child>
-                              <object class="GtkButton" id="min_up_button">
-                                <property name="visible">True</property>
-                                <property name="can_focus">True</property>
-                                <property name="receives_default">True</property>
-                                <property name="relief">none</property>
-                                <child internal-child="accessible">
-                                  <object class="AtkObject" id="min_up_accessible">
-                                    <property name="accessible-description" translatable="yes">Set the time 
one minute ahead.</property>
-                                  </object>
-                                </child>
-                                <child>
-                                  <object class="GtkArrow" id="arrow4">
-                                    <property name="visible">True</property>
-                                    <property name="can_focus">False</property>
-                                    <property name="arrow_type">up</property>
-                                  </object>
-                                </child>
-                              </object>
-                              <packing>
-                                <property name="left_attach">2</property>
-                                <property name="right_attach">3</property>
-                              </packing>
-                            </child>
-                            <child>
-                              <object class="GtkButton" id="min_down_button">
-                                <property name="visible">True</property>
-                                <property name="can_focus">True</property>
-                                <property name="receives_default">True</property>
-                                <property name="relief">none</property>
-                                <child internal-child="accessible">
-                                  <object class="AtkObject" id="min_down_accessible">
-                                    <property name="accessible-description" translatable="yes">Set the time 
one minute back.</property>
-                                  </object>
-                                </child>
-                                <child>
-                                  <object class="GtkArrow" id="arrow3">
-                                    <property name="visible">True</property>
-                                    <property name="can_focus">False</property>
-                                    <property name="arrow_type">down</property>
-                                  </object>
-                                </child>
-                              </object>
-                              <packing>
-                                <property name="left_attach">2</property>
-                                <property name="right_attach">3</property>
-                                <property name="top_attach">2</property>
-                                <property name="bottom_attach">3</property>
-                              </packing>
-                            </child>
-                            <child>
-                              <object class="GtkLabel" id="ampm_label">
-                                <property name="can_focus">False</property>
-                                <property name="label">AM</property>
-                                <attributes>
-                                  <attribute name="weight" value="bold"/>
-                                  <attribute name="scale" value="2.5"/>
-                                </attributes>
-                              </object>
-                              <packing>
-                                <property name="left_attach">3</property>
-                                <property name="right_attach">4</property>
-                                <property name="top_attach">1</property>
-                                <property name="bottom_attach">2</property>
-                              </packing>
-                            </child>
-                            <child>
-                              <object class="GtkButton" id="ampm_up_button">
-                                <property name="can_focus">True</property>
-                                <property name="receives_default">True</property>
-                                <property name="relief">none</property>
-                                <child internal-child="accessible">
-                                  <object class="AtkObject" id="ampm_up_accessible">
-                                    <property name="accessible-description" translatable="yes">Switch 
between AM and PM.</property>
-                                  </object>
-                                </child>
-                                <child>
-                                  <object class="GtkArrow" id="arrow5">
-                                    <property name="visible">True</property>
-                                    <property name="can_focus">False</property>
-                                    <property name="arrow_type">up</property>
-                                  </object>
-                                </child>
-                              </object>
-                              <packing>
-                                <property name="left_attach">3</property>
-                                <property name="right_attach">4</property>
-                              </packing>
-                            </child>
-                            <child>
-                              <object class="GtkButton" id="ampm_down_button">
-                                <property name="can_focus">True</property>
-                                <property name="receives_default">True</property>
-                                <property name="relief">none</property>
-                                <child internal-child="accessible">
-                                  <object class="AtkObject" id="ampm_down_accessible">
-                                    <property name="accessible-description" translatable="yes">Switch 
between AM and PM.</property>
-                                  </object>
-                                </child>
-                                <child>
-                                  <object class="GtkArrow" id="arrow6">
-                                    <property name="visible">True</property>
-                                    <property name="can_focus">False</property>
-                                    <property name="arrow_type">down</property>
-                                  </object>
-                                </child>
-                              </object>
-                              <packing>
-                                <property name="left_attach">3</property>
-                                <property name="right_attach">4</property>
-                                <property name="top_attach">2</property>
-                                <property name="bottom_attach">3</property>
+                                <property name="expand">True</property>
+                                <property name="fill">True</property>
+                                <property name="position">1</property>
                               </packing>
                             </child>
                           </object>
+                          <packing>
+                            <property name="expand">True</property>
+                            <property name="fill">True</property>
+                            <property name="position">0</property>
+                          </packing>
+                        </child>
+                        <child>
+                          <object class="GtkSwitch" id="auto_timezone_switch">
+                            <property name="visible">True</property>
+                            <property name="can_focus">True</property>
+                            <property name="valign">center</property>
+                            <property name="margin_left">20</property>
+                            <property name="margin_right">20</property>
+                          </object>
+                          <packing>
+                            <property name="expand">False</property>
+                            <property name="fill">True</property>
+                            <property name="position">1</property>
+                          </packing>
                         </child>
                       </object>
-                      <packing>
-                        <property name="expand">False</property>
-                        <property name="fill">True</property>
-                        <property name="padding">12</property>
-                        <property name="position">1</property>
-                      </packing>
                     </child>
+                  </object>
+                </child>
+                <child>
+                  <object class="GtkListBoxRow" id="datetime-button">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
                     <child>
-                      <object class="GtkHBox" id="table1">
+                      <object class="GtkBox" id="box4">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
-                        <property name="spacing">12</property>
+                        <property name="spacing">50</property>
                         <child>
-                          <object class="GtkComboBox" id="month-combobox">
+                          <object class="GtkLabel" id="datetime_label1">
                             <property name="visible">True</property>
                             <property name="can_focus">False</property>
-                            <property name="model">month-liststore</property>
-                            <child internal-child="accessible">
-                              <object class="AtkObject" id="month-accessible">
-                                <property name="accessible-description" translatable="yes">Month</property>
-                              </object>
-                            </child>
-                            <child>
-                              <object class="GtkCellRendererText" id="cellrenderertext3"/>
-                              <attributes>
-                                <attribute name="text">0</attribute>
-                              </attributes>
-                            </child>
+                            <property name="margin_left">20</property>
+                            <property name="margin_right">20</property>
+                            <property name="margin_top">6</property>
+                            <property name="margin_bottom">6</property>
+                            <property name="xalign">0</property>
+                            <property name="label" translatable="yes">Date &amp; _Time</property>
+                            <property name="use_underline">True</property>
+                            <property name="mnemonic_widget">datetime_label</property>
                           </object>
                           <packing>
                             <property name="expand">True</property>
@@ -520,86 +847,64 @@
                           </packing>
                         </child>
                         <child>
-                          <object class="GtkSpinButton" id="day-spinbutton">
+                          <object class="GtkLabel" id="datetime_label">
                             <property name="visible">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="invisible_char">•</property>
-                            <property name="width_chars">3</property>
-                            <property name="numeric">True</property>
-                            <property name="wrap">True</property>
-                            <child internal-child="accessible">
-                              <object class="AtkObject" id="day-accessible">
-                                <property name="accessible-description" translatable="yes">Day</property>
-                              </object>
-                            </child>
+                            <property name="can_focus">False</property>
+                            <property name="margin_left">20</property>
+                            <property name="margin_right">20</property>
+                            <property name="margin_top">6</property>
+                            <property name="margin_bottom">6</property>
+                            <property name="xalign">0</property>
+                            <property name="label">20 June 2012, 6:45 AM</property>
                           </object>
                           <packing>
-                            <property name="expand">True</property>
+                            <property name="expand">False</property>
                             <property name="fill">True</property>
                             <property name="position">1</property>
                           </packing>
                         </child>
-                        <child>
-                          <object class="GtkSpinButton" id="year-spinbutton">
-                            <property name="visible">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="invisible_char">•</property>
-                            <property name="width_chars">5</property>
-                            <property name="numeric">True</property>
-                            <property name="wrap">True</property>
-                            <child internal-child="accessible">
-                              <object class="AtkObject" id="year-accessible">
-                                <property name="accessible-description" translatable="yes">Year</property>
-                              </object>
-                            </child>
-                          </object>
-                          <packing>
-                            <property name="expand">True</property>
-                            <property name="fill">True</property>
-                            <property name="position">2</property>
-                          </packing>
-                        </child>
                       </object>
-                      <packing>
-                        <property name="expand">False</property>
-                        <property name="fill">True</property>
-                        <property name="padding">12</property>
-                        <property name="position">2</property>
-                      </packing>
                     </child>
+                  </object>
+                </child>
+                <child>
+                  <object class="GtkListBoxRow" id="timezone-button">
+                    <property name="visible">True</property>
+                    <property name="can_focus">False</property>
                     <child>
-                      <object class="GtkBox" id="24h_box">
+                      <object class="GtkBox" id="box5">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
-                        <property name="orientation">vertical</property>
+                        <property name="spacing">50</property>
                         <child>
-                          <object class="GtkRadioButton" id="24h_button">
-                            <property name="label" translatable="yes">24-hour</property>
-                            <property name="use_action_appearance">False</property>
+                          <object class="GtkLabel" id="timezone_label1">
                             <property name="visible">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="receives_default">False</property>
+                            <property name="can_focus">False</property>
+                            <property name="margin_left">20</property>
+                            <property name="margin_right">20</property>
+                            <property name="margin_top">6</property>
+                            <property name="margin_bottom">6</property>
                             <property name="xalign">0</property>
-                            <property name="active">True</property>
-                            <property name="draw_indicator">True</property>
+                            <property name="label" translatable="yes">Time _Zone</property>
+                            <property name="use_underline">True</property>
+                            <property name="mnemonic_widget">timezone_label</property>
                           </object>
                           <packing>
-                            <property name="expand">False</property>
+                            <property name="expand">True</property>
                             <property name="fill">True</property>
                             <property name="position">0</property>
                           </packing>
                         </child>
                         <child>
-                          <object class="GtkRadioButton" id="12h_button">
-                            <property name="label" translatable="yes">AM/PM</property>
-                            <property name="use_action_appearance">False</property>
+                          <object class="GtkLabel" id="timezone_label">
                             <property name="visible">True</property>
-                            <property name="can_focus">True</property>
-                            <property name="receives_default">False</property>
+                            <property name="can_focus">False</property>
+                            <property name="margin_left">20</property>
+                            <property name="margin_right">20</property>
+                            <property name="margin_top">6</property>
+                            <property name="margin_bottom">6</property>
                             <property name="xalign">0</property>
-                            <property name="active">True</property>
-                            <property name="draw_indicator">True</property>
-                            <property name="group">24h_button</property>
+                            <property name="label">GMT+1 (London, United Kingdom)</property>
                           </object>
                           <packing>
                             <property name="expand">False</property>
@@ -608,32 +913,30 @@
                           </packing>
                         </child>
                       </object>
-                      <packing>
-                        <property name="expand">False</property>
-                        <property name="fill">True</property>
-                        <property name="pack_type">end</property>
-                        <property name="position">3</property>
-                      </packing>
                     </child>
                   </object>
-                  <packing>
-                    <property name="expand">False</property>
-                    <property name="fill">True</property>
-                    <property name="position">1</property>
-                  </packing>
                 </child>
               </object>
-              <packing>
-                <property name="expand">True</property>
-                <property name="fill">True</property>
-                <property name="position">1</property>
-              </packing>
             </child>
           </object>
+          <packing>
+            <property name="expand">False</property>
+            <property name="fill">True</property>
+            <property name="position">0</property>
+          </packing>
         </child>
       </object>
     </child>
   </object>
+  <object class="GtkSizeGroup" id="row_sizegroup">
+    <property name="mode">vertical</property>
+    <widgets>
+      <widget name="box2"/>
+      <widget name="box3"/>
+      <widget name="box4"/>
+      <widget name="box5"/>
+    </widgets>
+  </object>
   <object class="GtkListStore" id="year-liststore">
     <columns>
       <!-- column-name gchararray1 -->


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