Port to master of commit aa843e2.. from Aleksander Chumakov:
authorJosé Dapena Paz <jdapena@igalia.com>
Wed, 3 Mar 2010 15:24:54 +0000 (16:24 +0100)
committerJosé Dapena Paz <jdapena@igalia.com>
Wed, 3 Mar 2010 15:24:54 +0000 (16:24 +0100)
"Implemented center-alignment for selectors in the global settings dialog

    Fix for the bug #157019"

Changes done are for adapting the API changes to toolkit factory.

src/hildon2/modest-hildon2-global-settings-dialog.c
src/hildon2/modest-selector-picker.c
src/hildon2/modest-selector-picker.h
src/widgets/modest-default-global-settings-dialog.c
src/widgets/modest-msg-edit-window.c
src/widgets/modest-toolkit-factory.c
src/widgets/modest-toolkit-factory.h

index 2215133..53a83ba 100644 (file)
@@ -210,7 +210,9 @@ create_updating_page (ModestHildon2GlobalSettingsDialog *self)
        ppriv->accounts_list = get_accounts_list ();
        ppriv->default_account_selector = modest_toolkit_factory_create_selector (modest_runtime_get_toolkit_factory (),
                                                                                  ppriv->accounts_list,
-                                                                                 g_str_equal);
+                                                                                 g_str_equal,
+                                                                                 TRUE);
+log.c
        if (ppriv->accounts_list == NULL) {
                gtk_widget_set_sensitive (GTK_WIDGET (ppriv->default_account_selector), FALSE);
        } else {
@@ -247,7 +249,8 @@ create_updating_page (ModestHildon2GlobalSettingsDialog *self)
         * so it can't know how to manage its memory. */
        ppriv->msg_format_list = _modest_global_settings_dialog_get_msg_formats ();
        ppriv->msg_format = modest_toolkit_factory_create_selector (modest_runtime_get_toolkit_factory (),
-                                                                   ppriv->msg_format_list, g_int_equal);
+                                                                   ppriv->msg_format_list, g_int_equal,
+                                                                   TRUE);
        if (GTK_IS_COMBO_BOX (ppriv->msg_format)) {
                GtkWidget *caption;
                caption = modest_toolkit_utils_create_vcaptioned (title_size_group,
@@ -293,7 +296,8 @@ create_updating_page (ModestHildon2GlobalSettingsDialog *self)
         * so it can't know how to manage its memory. */ 
        ppriv->connect_via_list = _modest_global_settings_dialog_get_connected_via ();
        ppriv->connect_via = modest_toolkit_factory_create_selector (modest_runtime_get_toolkit_factory (),
-                                                                    ppriv->connect_via_list, g_int_equal);
+                                                                    ppriv->connect_via_list, g_int_equal,
+                                                                    TRUE);
        if (GTK_IS_COMBO_BOX (ppriv->connect_via)) {
                GtkWidget *caption;
                caption = modest_toolkit_utils_create_vcaptioned (title_size_group,
@@ -315,7 +319,7 @@ create_updating_page (ModestHildon2GlobalSettingsDialog *self)
         * so it can't know how to manage its memory. */ 
        ppriv->update_interval_list = _modest_global_settings_dialog_get_update_interval ();
        ppriv->update_interval = modest_toolkit_factory_create_selector (modest_runtime_get_toolkit_factory (),
-                                                                        ppriv->update_interval_list, g_int_equal);
+                                                                        ppriv->update_interval_list, g_int_equal, TRUE);
        if (GTK_IS_COMBO_BOX (ppriv->update_interval)) {
                GtkWidget *caption;
                caption = modest_toolkit_utils_create_vcaptioned (title_size_group,
index 0f75875..d72e4b3 100644 (file)
@@ -50,7 +50,7 @@ struct _ModestSelectorPickerPrivate {
        GEqualFunc id_equal_func;
 
        gint value_max_chars;
-       
+       gboolean center_aligned;
 };
 #define MODEST_SELECTOR_PICKER_GET_PRIVATE(o)      (G_TYPE_INSTANCE_GET_PRIVATE((o), \
                                                                                MODEST_TYPE_SELECTOR_PICKER, \
@@ -168,10 +168,16 @@ create_touch_selector (ModestSelectorPicker *self, GtkTreeModel *model)
 {
        GtkCellRenderer *renderer;
        GtkWidget *selector;
+       ModestSelectorPickerPrivate *priv;
 
        renderer = gtk_cell_renderer_text_new ();
        g_object_set (G_OBJECT (renderer), "ellipsize", PANGO_ELLIPSIZE_END, NULL);
 
+       priv = MODEST_SELECTOR_PICKER_GET_PRIVATE(self);
+       if (priv->center_aligned) {
+               g_object_set (G_OBJECT (renderer), "alignment", PANGO_ALIGN_CENTER, NULL);
+       }
+
        selector = hildon_touch_selector_new ();
        hildon_touch_selector_append_column (HILDON_TOUCH_SELECTOR (selector), GTK_TREE_MODEL (model),
                                             renderer, "text", COLUMN_DISPLAY_NAME, NULL);
@@ -205,7 +211,8 @@ modest_selector_picker_set_pair_list (ModestSelectorPicker *self, ModestPairList
 GtkWidget*
 modest_selector_picker_new (HildonSizeType size,
                            HildonButtonArrangement arrangement,
-                           ModestPairList *pairs, GEqualFunc id_equal_func)
+                           ModestPairList *pairs, GEqualFunc id_equal_func,
+                           gboolean center_aligned)
 {
        GtkTreeModel *model;
        GObject *obj;
@@ -219,6 +226,7 @@ modest_selector_picker_new (HildonSizeType size,
 
        priv = MODEST_SELECTOR_PICKER_GET_PRIVATE(obj);
        priv->value_max_chars = -1;
+       priv->center_aligned = center_aligned;
        
        model = get_model (pairs);
        if (model) {
index f66d2c3..a64d2c6 100644 (file)
@@ -80,7 +80,8 @@ GType        modest_selector_picker_get_type    (void) G_GNUC_CONST;
 GtkWidget*   modest_selector_picker_new         (HildonSizeType size,
                                                 HildonButtonArrangement arrangement,
                                                 ModestPairList* pairs,
-                                                GEqualFunc id_equal_func);
+                                                GEqualFunc id_equal_func,
+                                                gboolean center_aligned);
 
 /**
  * modest_selector_picker_set_pair_list:
index df54c4a..b8d483c 100644 (file)
@@ -213,7 +213,7 @@ create_updating_page (ModestDefaultGlobalSettingsDialog *self)
        ppriv->accounts_list = get_accounts_list ();
        ppriv->default_account_selector = modest_toolkit_factory_create_selector (modest_runtime_get_toolkit_factory (),
                                                                                  ppriv->accounts_list,
-                                                                                 g_str_equal);
+                                                                                 g_str_equal, TRUE);
        if (ppriv->accounts_list == NULL) {
                gtk_widget_set_sensitive (GTK_WIDGET (ppriv->default_account_selector), FALSE);
        } else {
@@ -250,7 +250,7 @@ create_updating_page (ModestDefaultGlobalSettingsDialog *self)
         * so it can't know how to manage its memory. */
        ppriv->msg_format_list = _modest_global_settings_dialog_get_msg_formats ();
        ppriv->msg_format = modest_toolkit_factory_create_selector (modest_runtime_get_toolkit_factory (),
-                                                                   ppriv->msg_format_list, g_int_equal);
+                                                                   ppriv->msg_format_list, g_int_equal, TRUE);
        if (GTK_IS_COMBO_BOX (ppriv->msg_format)) {
                GtkWidget *caption;
                caption = modest_toolkit_utils_create_vcaptioned (title_size_group,
@@ -298,7 +298,7 @@ create_updating_page (ModestDefaultGlobalSettingsDialog *self)
         * so it can't know how to manage its memory. */ 
        ppriv->connect_via_list = _modest_global_settings_dialog_get_connected_via ();
        ppriv->connect_via = modest_toolkit_factory_create_selector (modest_runtime_get_toolkit_factory (),
-                                                                    ppriv->connect_via_list, g_int_equal);
+                                                                    ppriv->connect_via_list, g_int_equal, TRUE);
        if (GTK_IS_COMBO_BOX (ppriv->connect_via)) {
                GtkWidget *caption;
                caption = modest_toolkit_utils_create_vcaptioned (title_size_group,
@@ -320,7 +320,7 @@ create_updating_page (ModestDefaultGlobalSettingsDialog *self)
         * so it can't know how to manage its memory. */ 
        ppriv->update_interval_list = _modest_global_settings_dialog_get_update_interval ();
        ppriv->update_interval = modest_toolkit_factory_create_selector (modest_runtime_get_toolkit_factory (),
-                                                                        ppriv->update_interval_list, g_int_equal);
+                                                                        ppriv->update_interval_list, g_int_equal, TRUE);
        if (GTK_IS_COMBO_BOX (ppriv->update_interval)) {
                GtkWidget *caption;
                caption = modest_toolkit_utils_create_vcaptioned (title_size_group,
index ea6db37..0a2b46b 100644 (file)
@@ -921,7 +921,7 @@ init_window (ModestMsgEditWindow *obj)
         * that uses it, because the ModestSelectorPicker uses the ID opaquely, 
         * so it can't know how to manage its memory. */ 
        priv->from_field    = modest_toolkit_factory_create_selector (modest_runtime_get_toolkit_factory (),
-                                                                     NULL, g_str_equal);
+                                                                     NULL, g_str_equal, FALSE);
        modest_selector_set_value_max_chars (priv->from_field, MAX_FROM_VALUE);
        if (GTK_IS_COMBO_BOX (priv->from_field)) {
                from_caption = modest_toolkit_utils_create_captioned (title_size_group, NULL,
index 42de49b..a24b370 100644 (file)
@@ -144,7 +144,8 @@ static GtkWidget * modest_toolkit_factory_create_security_options_view_default (
                                                                                GtkSizeGroup *value_size_group);
 static GtkWidget * modest_toolkit_factory_create_text_view_default            (ModestToolkitFactory *self);
 static GtkWidget * modest_toolkit_factory_create_selector_default             (ModestToolkitFactory *self,
-                                                                              ModestPairList *pairs, GEqualFunc id_equal_func);
+                                                                              ModestPairList *pairs, GEqualFunc id_equal_func,
+                                                                              gboolean center);
 static GtkWidget * modest_toolkit_factory_create_details_dialog_with_header_default   (ModestToolkitFactory *self, GtkWindow *parent,
                                                                               TnyHeader *header, gboolean get_size);
 static GtkWidget * modest_toolkit_factory_create_details_dialog_with_folder_default  (ModestToolkitFactory *self, GtkWindow *parent,
@@ -847,21 +848,21 @@ modest_is_text_view (GtkWidget *widget)
 
 GtkWidget *
 modest_toolkit_factory_create_selector (ModestToolkitFactory *self,
-                                       ModestPairList *pairs, GEqualFunc id_equal_func)
+                                       ModestPairList *pairs, GEqualFunc id_equal_func, gboolean center)
 {
-       return MODEST_TOOLKIT_FACTORY_GET_CLASS (self)->create_selector (self, pairs, id_equal_func);
+  return MODEST_TOOLKIT_FACTORY_GET_CLASS (self)->create_selector (self, pairs, id_equal_func, center);
 }
 
 static GtkWidget *
 modest_toolkit_factory_create_selector_default (ModestToolkitFactory *self,
-                                               ModestPairList *pairs, GEqualFunc id_equal_func)
+                                               ModestPairList *pairs, GEqualFunc id_equal_func, gboolean center)
 {
 #ifdef USE_SELECTOR_COMBOBOX
        return modest_combo_box_new (pairs, id_equal_func);
 #else
        return modest_selector_picker_new (MODEST_EDITABLE_SIZE, 
                                           HILDON_BUTTON_ARRANGEMENT_HORIZONTAL,
-                                          pairs, id_equal_func);
+                                          pairs, id_equal_func, center);
 #endif
 }
 
index 0eecfaf..54b1237 100644 (file)
@@ -57,7 +57,7 @@ struct                                          _ModestToolkitFactoryClass
                                                     gboolean full, GtkSizeGroup *title_size_group, GtkSizeGroup *value_size_group);
        GtkWidget * (*create_text_view) (ModestToolkitFactory *self);
        GtkWidget * (*create_selector) (ModestToolkitFactory *self,
-                                       ModestPairList *pairs, GEqualFunc id_equal_func);
+                                       ModestPairList *pairs, GEqualFunc id_equal_func, gboolean center);
        GtkWidget * (*create_details_dialog_with_header) (ModestToolkitFactory *self, GtkWindow *parent,
                                                          TnyHeader *header, gboolean get_size);
        GtkWidget * (*create_details_dialog_with_folder) (ModestToolkitFactory *self, GtkWindow *parent,
@@ -122,7 +122,7 @@ modest_toolkit_factory_create_text_view (ModestToolkitFactory *self);
 
 GtkWidget *
 modest_toolkit_factory_create_selector (ModestToolkitFactory *self,
-                                       ModestPairList *pairs, GEqualFunc id_equal_func);
+                                       ModestPairList *pairs, GEqualFunc id_equal_func, gboolean center);
 
 GtkWidget *
 modest_toolkit_factory_create_details_dialog_with_header (ModestToolkitFactory *self, GtkWindow *parent,