I have a GObject question that I hope someone can help me with. I imagine this has been asked before, but a quick search of the mailing-list archives didn't turn up any answers. Regarding a GObject's constructor properties, is there a mechanism in GObject or a generally accepted idiom for *requiring* certain properties to be supplied at object construction? I'm aware of the G_PARAM_CONSTRUCT and G_PARAM_CONSTRUCT_ONLY flags, but as far as I can tell these flags only indicate that a property *may* be passed to a constructor. They don't guarantee that the property *will* be present when the constructor() method is called. At the moment I'm working around this by overriding the constructor() method, chaining up, and then checking that certain private fields corresponding to the required constructor properties have been set correctly. (In my case the properties are other GObjects, so I check for NULL pointers.) If I detect a missing constructor property, I use g_error() to produce a fatal error message. I'd prefer that this error be recoverable, such that g_object_new() returns NULL to the caller, but I don't know how to properly abort the GObject construction phase. It would be ideal if GObject did these checks for me, so that all I'd have to do is specify which "G_PARAM_CONSTRUCT" properties I want to be required. Any advice? Matthew Barnes matthew@xxxxxxxxxx _______________________________________________ gtk-list@xxxxxxxxx http://mail.gnome.org/mailman/listinfo/gtk-list