summaryrefslogtreecommitdiff
path: root/gtk/gtklistitemfactoryprivate.h
diff options
context:
space:
mode:
authorBenjamin Otte <otte@redhat.com>2019-06-10 00:17:44 +0200
committerMatthias Clasen <mclasen@redhat.com>2020-05-30 19:26:45 -0400
commit824326a02928321db0e751b98dbbee25a4c031bf (patch)
tree45d83c8c0080e019c2cb4e58eedad362341b6a7f /gtk/gtklistitemfactoryprivate.h
parent10b967ae1f65ec269cde4b5c83b0dd777bf46301 (diff)
downloadgtk+-824326a02928321db0e751b98dbbee25a4c031bf.tar.gz
listitemfactory: vfuncify
No functional changes other than a new indirection.
Diffstat (limited to 'gtk/gtklistitemfactoryprivate.h')
-rw-r--r--gtk/gtklistitemfactoryprivate.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/gtk/gtklistitemfactoryprivate.h b/gtk/gtklistitemfactoryprivate.h
index 34582257bc..98ca4b350e 100644
--- a/gtk/gtklistitemfactoryprivate.h
+++ b/gtk/gtklistitemfactoryprivate.h
@@ -49,6 +49,34 @@ struct _GtkListItemFactory
struct _GtkListItemFactoryClass
{
GObjectClass parent_class;
+
+ /* setup @list_item so it can be bound */
+ void (* setup) (GtkListItemFactory *self,
+ GtkListItem *list_item);
+ /* undo the effects of GtkListItemFactoryClass::setup() */
+ void (* teardown) (GtkListItemFactory *self,
+ GtkListItem *list_item);
+
+ /* bind @list_item to the given @item, which is in @position and @selected state */
+ void (* bind) (GtkListItemFactory *self,
+ GtkListItem *list_item,
+ guint position,
+ gpointer item,
+ gboolean selected);
+ /* unbind the current item and bind a new one */
+ void (* rebind) (GtkListItemFactory *self,
+ GtkListItem *list_item,
+ guint position,
+ gpointer item,
+ gboolean selected);
+ /* like GtkListItemFactoryClass::rebind(), but the item didn't change */
+ void (* update) (GtkListItemFactory *self,
+ GtkListItem *list_item,
+ guint position,
+ gboolean selected);
+ /* undo the effects of GtkListItemFactoryClass::bind() */
+ void (* unbind) (GtkListItemFactory *self,
+ GtkListItem *list_item);
};
GType gtk_list_item_factory_get_type (void) G_GNUC_CONST;