From: Alexander Larsson Date: Wed, 19 Aug 2009 15:21:18 +0000 (+0200) Subject: Add GObjectClass flag CLASS_HAS_PROPS_FLAG X-Git-Url: http://git.openbox.org/?a=commitdiff_plain;h=39a1fe5782c15873ab18b8d3d76adfcbd70dc6dd;p=dana%2Fcg-glib.git Add GObjectClass flag CLASS_HAS_PROPS_FLAG This is set if a class or any of its parents have installed any properties. https://bugzilla.gnome.org/show_bug.cgi?id=557100 --- diff --git a/gobject/gobject.c b/gobject/gobject.c index 454d8c2b..d7d5d560 100644 --- a/gobject/gobject.c +++ b/gobject/gobject.c @@ -113,6 +113,9 @@ ((G_DATALIST_GET_FLAGS (&(object)->qdata) & OBJECT_HAS_TOGGLE_REF_FLAG) != 0) #define OBJECT_FLOATING_FLAG 0x2 +#define CLASS_HAS_PROPS_FLAG 0x1 +#define CLASS_HAS_PROPS(class) \ + ((class)->flags & CLASS_HAS_PROPS_FLAG) /* --- signals --- */ enum { @@ -409,6 +412,9 @@ g_object_class_install_property (GObjectClass *class, { g_return_if_fail (G_IS_OBJECT_CLASS (class)); g_return_if_fail (G_IS_PARAM_SPEC (pspec)); + + class->flags |= CLASS_HAS_PROPS_FLAG; + if (pspec->flags & G_PARAM_WRITABLE) g_return_if_fail (class->set_property != NULL); if (pspec->flags & G_PARAM_READABLE)