2008-11-27 Claudio Saavedra <csaavedra@igalia.com>
+ * src/hildon-touch-selector.c: (hildon_touch_selector_class_init): Add a new
+ ::columns-changed signal.
+ (hildon_touch_selector_append_column): Emit ::columns-changed.
+ (hildon_touch_selector_remove_column): Emit ::columns-changed.
+
+ Add a ::columns-changed signal, emitted when the number of columns in a
+ HildonTouchSelector changes.
+
+2008-11-27 Claudio Saavedra <csaavedra@igalia.com>
+
* src/hildon-picker-dialog.c: (+setup_interaction_mode),
(_hildon_picker_dialog_set_selector): Factor out the code
to set up the dialog interaction mode.
G_STRUCT_OFFSET (HildonTouchSelectorClass, changed),
NULL, NULL,
g_cclosure_marshal_VOID__INT, G_TYPE_NONE, 1, G_TYPE_INT);
+
+ /**
+ * HildonTouchSelector::columns-changed:
+ * @selector: the object which received the signal
+ *
+ * The ::columns-changed signal is emitted when the number
+ * of columns in the #HildonTouchSelector change.
+ *
+ */
+ hildon_touch_selector_signals[COLUMNS_CHANGED] =
+ g_signal_new ("columns-changed",
+ G_OBJECT_CLASS_TYPE (class),
+ G_SIGNAL_RUN_LAST, 0,
+ NULL, NULL,
+ g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
+
/* properties */
g_object_class_install_property (gobject_class, PROP_HAS_MULTIPLE_SELECTION,
return NULL;
}
+ g_signal_emit (selector, hildon_touch_selector_signals[COLUMNS_CHANGED], 0);
+
return new_column;
}
priv->columns = g_slist_remove (priv->columns, current_column);
g_object_unref (current_column);
+ g_signal_emit (selector, hildon_touch_selector_signals[COLUMNS_CHANGED], 0);
+
return TRUE;
}