diff options
author | Tim Janik <timj@gimp.org> | 1998-02-19 07:18:42 +0000 |
---|---|---|
committer | Tim Janik <timj@src.gnome.org> | 1998-02-19 07:18:42 +0000 |
commit | 0ef453b82c2d486d7913517e2b72571b90de312a (patch) | |
tree | 4311d3c65dc22a71dcd759a7771987d31dc7bab1 /gtk/gtkobject.h | |
parent | a4b322cccce97c4d75f32949d036861d0aa69bdb (diff) | |
download | gtk+-0ef453b82c2d486d7913517e2b72571b90de312a.tar.gz |
present the argument access masks on their announcement.
Thu Feb 19 06:56:52 1998 Tim Janik <timj@gimp.org>
* gtkbox.c:
* gtkbutton.c:
* gtkcontainer.c:
* gtkframe.c:
* gtklabel.c:
* gtkobject.c:
* gtkwidget.c:
* gtkwindow.c:
present the argument access masks on their announcement.
* gtk/gtkobject.h:
* gtk/gtkobject.c:
(gtk_object_add_arg_type): take an additional argument describing
the access mask of the new arg. this can be of GTK_ARG_READABLE,
GTK_ARG_WRITABLE or GTK_ARG_READWRITE (the latter is an alias for
the two previous ones).
(gtk_object_query_args): provide an access_mask array if desired.
* gtk/gtkwidget.c (gtk_widget_real_realize):
realized the assumtion that widget is a NO_WINDOW widget
in actuall code.
* gtkwindow.c:
slight changes to gtk_window_configure_event that will make
the resizing behaviour a little less odd.
sigh, for some (buggy) reason, there are still container resizes
triggered by manual resizing to very small window sizes.
the cointainer resizes will cause gtk_real_window_move_resize to
be invoked, which makes the app look like it wants to fight the users
resizing action. ;(
Diffstat (limited to 'gtk/gtkobject.h')
-rw-r--r-- | gtk/gtkobject.h | 32 |
1 files changed, 23 insertions, 9 deletions
diff --git a/gtk/gtkobject.h b/gtk/gtkobject.h index fadea418ee..cb7473becc 100644 --- a/gtk/gtkobject.h +++ b/gtk/gtkobject.h @@ -65,18 +65,28 @@ extern "C" { #define GTK_OBJECT_TYPE(obj) (GTK_OBJECT (obj)->klass->type) #define GTK_OBJECT_SIGNALS(obj) (GTK_OBJECT (obj)->klass->signals) #define GTK_OBJECT_NSIGNALS(obj) (GTK_OBJECT (obj)->klass->nsignals) - + /* GtkObject only uses the first 4 bits of the flags field. * GtkWidget uses the remaining bits. Though this is a kinda nasty * break up, it does make the size of GtkWidget smaller. */ enum - { - GTK_DESTROYED = 1 << 0, - GTK_FLOATING = 1 << 1, - GTK_RESERVED_1 = 1 << 2, - GTK_RESERVED_2 = 1 << 3 - }; +{ + GTK_DESTROYED = 1 << 0, + GTK_FLOATING = 1 << 1, + GTK_RESERVED_1 = 1 << 2, + GTK_RESERVED_2 = 1 << 3 +}; + +/* GtkArg access bits for gtk_object_add_arg_type + */ +enum +{ + GTK_ARG_READABLE = 1 << 0, + GTK_ARG_WRITABLE = 1 << 1, +}; +#define GTK_ARG_READWRITE (GTK_ARG_READABLE | GTK_ARG_WRITABLE) + /* Macros for extracting the object_flags from GtkObject. */ @@ -236,15 +246,19 @@ void gtk_object_setv (GtkObject *object, /* Allocate a GtkArg array of size nargs that hold the * names and types of the args that can be used with - * gtk_object_set/gtk_object_get. + * gtk_object_set/gtk_object_get. if (*acess_masks!=NULL) + * the pointer will be set to point to a newly allocated + * guint array that holds the access masks of the args. * It is the callers response to do a - * g_free (returned_args). + * g_free (returned_args); g_free (*acess_masks). */ GtkArg* gtk_object_query_args (GtkType class_type, + guint **acess_masks, guint *nargs); void gtk_object_add_arg_type (const gchar *arg_name, GtkType arg_type, + guint access_mask, guint arg_id); GtkType gtk_object_get_arg_type (const gchar *arg_name); |