+2001-09-24 James Henstridge <james@daa.com.au>
+
+ * gtk/gtkmarshal.list (VOID): add marshal function types.
+
+ * gtk/gtkctree.c (gtk_ctree_class_init): make arguments have type
+ GTK_TYPE_CTREE_NODE|G_SIGNAL_TYPE_STATIC_SCOPE rather than
+ GTK_TYPE_POINTER.
+ (gtk_ctree_node_get_type): implement boxed type for GtkCTreeNodes
+ with no-op copy/free functions.
+
+ * gtk/gtkctree.h (gtk_ctree_node_get_type): add prototype for
+ GtkCTreeNode get_type function.
+
2001-09-24 Havoc Pennington <hp@redhat.com>
* gtk/gtktextiter.c, gtk/gtktextbuffer.c, gtk/gtktextbtree.c,
+2001-09-24 James Henstridge <james@daa.com.au>
+
+ * gtk/gtkmarshal.list (VOID): add marshal function types.
+
+ * gtk/gtkctree.c (gtk_ctree_class_init): make arguments have type
+ GTK_TYPE_CTREE_NODE|G_SIGNAL_TYPE_STATIC_SCOPE rather than
+ GTK_TYPE_POINTER.
+ (gtk_ctree_node_get_type): implement boxed type for GtkCTreeNodes
+ with no-op copy/free functions.
+
+ * gtk/gtkctree.h (gtk_ctree_node_get_type): add prototype for
+ GtkCTreeNode get_type function.
+
2001-09-24 Havoc Pennington <hp@redhat.com>
* gtk/gtktextiter.c, gtk/gtktextbuffer.c, gtk/gtktextbtree.c,
+2001-09-24 James Henstridge <james@daa.com.au>
+
+ * gtk/gtkmarshal.list (VOID): add marshal function types.
+
+ * gtk/gtkctree.c (gtk_ctree_class_init): make arguments have type
+ GTK_TYPE_CTREE_NODE|G_SIGNAL_TYPE_STATIC_SCOPE rather than
+ GTK_TYPE_POINTER.
+ (gtk_ctree_node_get_type): implement boxed type for GtkCTreeNodes
+ with no-op copy/free functions.
+
+ * gtk/gtkctree.h (gtk_ctree_node_get_type): add prototype for
+ GtkCTreeNode get_type function.
+
2001-09-24 Havoc Pennington <hp@redhat.com>
* gtk/gtktextiter.c, gtk/gtktextbuffer.c, gtk/gtktextbtree.c,
+2001-09-24 James Henstridge <james@daa.com.au>
+
+ * gtk/gtkmarshal.list (VOID): add marshal function types.
+
+ * gtk/gtkctree.c (gtk_ctree_class_init): make arguments have type
+ GTK_TYPE_CTREE_NODE|G_SIGNAL_TYPE_STATIC_SCOPE rather than
+ GTK_TYPE_POINTER.
+ (gtk_ctree_node_get_type): implement boxed type for GtkCTreeNodes
+ with no-op copy/free functions.
+
+ * gtk/gtkctree.h (gtk_ctree_node_get_type): add prototype for
+ GtkCTreeNode get_type function.
+
2001-09-24 Havoc Pennington <hp@redhat.com>
* gtk/gtktextiter.c, gtk/gtktextbuffer.c, gtk/gtktextbtree.c,
+2001-09-24 James Henstridge <james@daa.com.au>
+
+ * gtk/gtkmarshal.list (VOID): add marshal function types.
+
+ * gtk/gtkctree.c (gtk_ctree_class_init): make arguments have type
+ GTK_TYPE_CTREE_NODE|G_SIGNAL_TYPE_STATIC_SCOPE rather than
+ GTK_TYPE_POINTER.
+ (gtk_ctree_node_get_type): implement boxed type for GtkCTreeNodes
+ with no-op copy/free functions.
+
+ * gtk/gtkctree.h (gtk_ctree_node_get_type): add prototype for
+ GtkCTreeNode get_type function.
+
2001-09-24 Havoc Pennington <hp@redhat.com>
* gtk/gtktextiter.c, gtk/gtktextbuffer.c, gtk/gtktextbtree.c,
+2001-09-24 James Henstridge <james@daa.com.au>
+
+ * gtk/gtkmarshal.list (VOID): add marshal function types.
+
+ * gtk/gtkctree.c (gtk_ctree_class_init): make arguments have type
+ GTK_TYPE_CTREE_NODE|G_SIGNAL_TYPE_STATIC_SCOPE rather than
+ GTK_TYPE_POINTER.
+ (gtk_ctree_node_get_type): implement boxed type for GtkCTreeNodes
+ with no-op copy/free functions.
+
+ * gtk/gtkctree.h (gtk_ctree_node_get_type): add prototype for
+ GtkCTreeNode get_type function.
+
2001-09-24 Havoc Pennington <hp@redhat.com>
* gtk/gtktextiter.c, gtk/gtktextbuffer.c, gtk/gtktextbtree.c,
+2001-09-24 James Henstridge <james@daa.com.au>
+
+ * gtk/gtkmarshal.list (VOID): add marshal function types.
+
+ * gtk/gtkctree.c (gtk_ctree_class_init): make arguments have type
+ GTK_TYPE_CTREE_NODE|G_SIGNAL_TYPE_STATIC_SCOPE rather than
+ GTK_TYPE_POINTER.
+ (gtk_ctree_node_get_type): implement boxed type for GtkCTreeNodes
+ with no-op copy/free functions.
+
+ * gtk/gtkctree.h (gtk_ctree_node_get_type): add prototype for
+ GtkCTreeNode get_type function.
+
2001-09-24 Havoc Pennington <hp@redhat.com>
* gtk/gtktextiter.c, gtk/gtktextbuffer.c, gtk/gtktextbtree.c,
GTK_RUN_FIRST,
GTK_CLASS_TYPE (object_class),
GTK_SIGNAL_OFFSET (GtkCTreeClass, tree_select_row),
- gtk_marshal_VOID__POINTER_INT,
- GTK_TYPE_NONE, 2, GTK_TYPE_POINTER, GTK_TYPE_INT);
+ gtk_marshal_VOID__BOXED_INT,
+ GTK_TYPE_NONE, 2,
+ GTK_TYPE_CTREE_NODE | G_SIGNAL_TYPE_STATIC_SCOPE,
+ GTK_TYPE_INT);
ctree_signals[TREE_UNSELECT_ROW] =
gtk_signal_new ("tree_unselect_row",
GTK_RUN_FIRST,
GTK_CLASS_TYPE (object_class),
GTK_SIGNAL_OFFSET (GtkCTreeClass, tree_unselect_row),
- gtk_marshal_VOID__POINTER_INT,
- GTK_TYPE_NONE, 2, GTK_TYPE_POINTER, GTK_TYPE_INT);
+ gtk_marshal_VOID__BOXED_INT,
+ GTK_TYPE_NONE, 2,
+ GTK_TYPE_CTREE_NODE | G_SIGNAL_TYPE_STATIC_SCOPE,
+ GTK_TYPE_INT);
ctree_signals[TREE_EXPAND] =
gtk_signal_new ("tree_expand",
GTK_RUN_LAST,
GTK_CLASS_TYPE (object_class),
GTK_SIGNAL_OFFSET (GtkCTreeClass, tree_expand),
- gtk_marshal_VOID__POINTER,
- GTK_TYPE_NONE, 1, GTK_TYPE_POINTER);
+ gtk_marshal_VOID__BOXED,
+ GTK_TYPE_NONE, 1,
+ GTK_TYPE_CTREE_NODE | G_SIGNAL_TYPE_STATIC_SCOPE);
ctree_signals[TREE_COLLAPSE] =
gtk_signal_new ("tree_collapse",
GTK_RUN_LAST,
GTK_CLASS_TYPE (object_class),
GTK_SIGNAL_OFFSET (GtkCTreeClass, tree_collapse),
- gtk_marshal_VOID__POINTER,
- GTK_TYPE_NONE, 1, GTK_TYPE_POINTER);
+ gtk_marshal_VOID__BOXED,
+ GTK_TYPE_NONE, 1,
+ GTK_TYPE_CTREE_NODE | G_SIGNAL_TYPE_STATIC_SCOPE);
ctree_signals[TREE_MOVE] =
gtk_signal_new ("tree_move",
GTK_RUN_LAST,
GTK_CLASS_TYPE (object_class),
GTK_SIGNAL_OFFSET (GtkCTreeClass, tree_move),
- gtk_marshal_VOID__POINTER_POINTER_POINTER,
- GTK_TYPE_NONE, 3, GTK_TYPE_POINTER,
- GTK_TYPE_POINTER, GTK_TYPE_POINTER);
+ gtk_marshal_VOID__BOXED_BOXED_BOXED,
+ GTK_TYPE_NONE, 3,
+ GTK_TYPE_CTREE_NODE | G_SIGNAL_TYPE_STATIC_SCOPE,
+ GTK_TYPE_CTREE_NODE | G_SIGNAL_TYPE_STATIC_SCOPE,
+ GTK_TYPE_CTREE_NODE | G_SIGNAL_TYPE_STATIC_SCOPE);
ctree_signals[CHANGE_FOCUS_ROW_EXPANSION] =
gtk_signal_new ("change_focus_row_expansion",
GTK_RUN_LAST | GTK_RUN_ACTION,
}
}
}
+
+/* dummy boxed type definition, used so that the GtkCTreeNode signal
+ * arguments have a reasonable type.
+ */
+gpointer
+ctree_node_copy (gpointer boxed)
+{
+ return boxed;
+}
+
+void
+ctree_node_free (gpointer boxed)
+{
+ /* nothing */
+}
+
+GType
+gtk_ctree_node_get_type (void)
+{
+ static GType our_type = 0;
+
+ if (our_type == 0)
+ our_type = g_boxed_type_register_static ("GtkCTreeNode",
+ (GBoxedCopyFunc)ctree_node_copy,
+ (GBoxedFreeFunc)ctree_node_free);
+
+ return our_type;
+}
#define GTK_CTREE_NODE_PREV(_pnode_) ((GtkCTreeNode *)(((GList *)(_pnode_))->prev))
#define GTK_CTREE_FUNC(_func_) ((GtkCTreeFunc)(_func_))
+#define GTK_TYPE_CTREE_NODE (gtk_ctree_node_get_type ())
+
typedef enum
{
GTK_CTREE_POS_BEFORE,
#define gtk_ctree_set_reorderable(t,r) gtk_clist_set_reorderable((GtkCList*) (t),(r))
+/* GType for the GtkCTreeNode. This is a boxed type, although it uses
+ * no-op's for the copy and free routines. It is defined in order to
+ * provide type information for the signal arguments
+ */
+GType gtk_ctree_node_get_type (void) G_GNUC_CONST;
+
#ifdef __cplusplus
}
#endif /* __cplusplus */
VOID:BOOLEAN,BOOLEAN,BOOLEAN
VOID:BOXED
VOID:BOXED,BOXED
+VOID:BOXED,BOXED,BOXED
VOID:BOXED,BOXED,POINTER
VOID:BOXED,POINTER
VOID:BOXED,OBJECT
VOID:BOXED,STRING,INT
+VOID:BOXED,INT
VOID:BOXED,UINT
VOID:BOXED,UINT,FLAGS
VOID:BOXED,UINT,UINT
VOID:BOOLEAN,BOOLEAN,BOOLEAN
VOID:BOXED
VOID:BOXED,BOXED
+VOID:BOXED,BOXED,BOXED
VOID:BOXED,BOXED,POINTER
VOID:BOXED,POINTER
VOID:BOXED,OBJECT
VOID:BOXED,STRING,INT
+VOID:BOXED,INT
VOID:BOXED,UINT
VOID:BOXED,UINT,FLAGS
VOID:BOXED,UINT,UINT