Fixes leak 16/26
[modest] / src / hildon2 / modest-selector-picker.c
index 5fb4d86..a8331da 100644 (file)
@@ -104,7 +104,7 @@ modest_selector_picker_finalize (GObject *obj)
 }
 
 static gchar *
-touch_selector_print_func (HildonTouchSelector *selector)
+touch_selector_print_func (HildonTouchSelector *selector, gpointer userdata)
 {
        GtkTreeIter iter;
        if (hildon_touch_selector_get_selected (HILDON_TOUCH_SELECTOR (selector), 0, &iter)) {
@@ -155,7 +155,7 @@ create_touch_selector (GtkTreeModel *model)
                                             renderer, "text", COLUMN_DISPLAY_NAME, NULL);
 
        hildon_touch_selector_set_model (HILDON_TOUCH_SELECTOR(selector), 0, model);
-       hildon_touch_selector_set_print_func (HILDON_TOUCH_SELECTOR (selector), touch_selector_print_func);
+       hildon_touch_selector_set_print_func (HILDON_TOUCH_SELECTOR (selector), (HildonTouchSelectorPrintFunc) touch_selector_print_func);
 
        return selector;
 }
@@ -180,7 +180,9 @@ modest_selector_picker_set_pair_list (ModestSelectorPicker *self, ModestPairList
 
 
 GtkWidget*
-modest_selector_picker_new (ModestPairList *pairs, GEqualFunc id_equal_func)
+modest_selector_picker_new (HildonSizeType size,
+                           HildonButtonArrangement arrangement,
+                           ModestPairList *pairs, GEqualFunc id_equal_func)
 {
        GtkTreeModel *model;
        GObject *obj;
@@ -188,8 +190,8 @@ modest_selector_picker_new (ModestPairList *pairs, GEqualFunc id_equal_func)
        GtkTreeIter iter;
 
        obj  = G_OBJECT(g_object_new(MODEST_TYPE_SELECTOR_PICKER,
-                                    "size", HILDON_SIZE_AUTO,
-                                    "arrangement", HILDON_BUTTON_ARRANGEMENT_VERTICAL,
+                                    "size", size,
+                                    "arrangement", arrangement,
                                     NULL));
        priv = MODEST_SELECTOR_PICKER_GET_PRIVATE(obj);
        
@@ -198,8 +200,9 @@ modest_selector_picker_new (ModestPairList *pairs, GEqualFunc id_equal_func)
                GtkWidget *selector;
 
                selector = create_touch_selector (model);
-               gtk_tree_model_get_iter_first (GTK_TREE_MODEL (model), &iter);
-               hildon_touch_selector_select_iter (HILDON_TOUCH_SELECTOR (selector), 0, &iter, TRUE);
+               if (gtk_tree_model_get_iter_first (GTK_TREE_MODEL (model), &iter)) {
+                       hildon_touch_selector_select_iter (HILDON_TOUCH_SELECTOR (selector), 0, &iter, TRUE);
+               }
                g_object_unref (model);
 
                hildon_picker_button_set_selector (HILDON_PICKER_BUTTON (obj), HILDON_TOUCH_SELECTOR (selector));