diff options
author | James Henstridge <james@daa.com.au> | 2001-09-25 01:12:08 +0000 |
---|---|---|
committer | James Henstridge <jamesh@src.gnome.org> | 2001-09-25 01:12:08 +0000 |
commit | 80e87c941f634c85a61116207904d0200641d7a2 (patch) | |
tree | 0e17c3ba05397eafb6ca376d19a9c26b87d8f168 | |
parent | 1e3b62fd1305a651d279dcf3c2f5929273a8e7a7 (diff) | |
download | gtk+-80e87c941f634c85a61116207904d0200641d7a2.tar.gz |
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.
-rw-r--r-- | ChangeLog | 13 | ||||
-rw-r--r-- | ChangeLog.pre-2-0 | 13 | ||||
-rw-r--r-- | ChangeLog.pre-2-10 | 13 | ||||
-rw-r--r-- | ChangeLog.pre-2-2 | 13 | ||||
-rw-r--r-- | ChangeLog.pre-2-4 | 13 | ||||
-rw-r--r-- | ChangeLog.pre-2-6 | 13 | ||||
-rw-r--r-- | ChangeLog.pre-2-8 | 13 | ||||
-rw-r--r-- | gtk/gtkctree.c | 58 | ||||
-rw-r--r-- | gtk/gtkctree.h | 8 | ||||
-rw-r--r-- | gtk/gtkmarshal.list | 2 | ||||
-rw-r--r-- | gtk/gtkmarshalers.list | 2 |
11 files changed, 150 insertions, 11 deletions
@@ -1,3 +1,16 @@ +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, diff --git a/ChangeLog.pre-2-0 b/ChangeLog.pre-2-0 index 38dc70b5b7..ed0b5266ae 100644 --- a/ChangeLog.pre-2-0 +++ b/ChangeLog.pre-2-0 @@ -1,3 +1,16 @@ +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, diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 38dc70b5b7..ed0b5266ae 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,16 @@ +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, diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2 index 38dc70b5b7..ed0b5266ae 100644 --- a/ChangeLog.pre-2-2 +++ b/ChangeLog.pre-2-2 @@ -1,3 +1,16 @@ +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, diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index 38dc70b5b7..ed0b5266ae 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,16 @@ +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, diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 38dc70b5b7..ed0b5266ae 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,16 @@ +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, diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 38dc70b5b7..ed0b5266ae 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,16 @@ +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, diff --git a/gtk/gtkctree.c b/gtk/gtkctree.c index c250eeaba5..1fac2ce5cb 100644 --- a/gtk/gtkctree.c +++ b/gtk/gtkctree.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; +} diff --git a/gtk/gtkctree.h b/gtk/gtkctree.h index 6763ea9f1e..5f5594ba6e 100644 --- a/gtk/gtkctree.h +++ b/gtk/gtkctree.h @@ -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 */ diff --git a/gtk/gtkmarshal.list b/gtk/gtkmarshal.list index cf1dcf1351..186140fbaa 100644 --- a/gtk/gtkmarshal.list +++ b/gtk/gtkmarshal.list @@ -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 diff --git a/gtk/gtkmarshalers.list b/gtk/gtkmarshalers.list index cf1dcf1351..186140fbaa 100644 --- a/gtk/gtkmarshalers.list +++ b/gtk/gtkmarshalers.list @@ -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 |