Commit 80e87c94 authored by James Henstridge's avatar James Henstridge Committed by James Henstridge

add marshal function types.

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.
parent 1e3b62fd
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,
......
......@@ -432,37 +432,45 @@ gtk_ctree_class_init (GtkCTreeClass *klass)
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,
......@@ -6116,3 +6124,31 @@ gtk_ctree_drag_data_received (GtkWidget *widget,
}
}
}
/* 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;
}
......@@ -52,6 +52,8 @@ extern "C" {
#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,
......@@ -432,6 +434,12 @@ void gtk_ctree_sort_recursive (GtkCTree *ctree,
#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 */
......
......@@ -43,10 +43,12 @@ VOID:BOOLEAN
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
......
......@@ -43,10 +43,12 @@ VOID:BOOLEAN
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
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment