com gtk/php-gtk: Add $obj->gtype property.. I think we've been missing a way to get at the actual GType of an object.: main/phpg_gobje ct.c
[email protected] (David Soria Parra) Tue, 28 Mar 2006 00:55:41 +0000
| Newsgroups | php.gtk.cvs |
|---|---|
| Message-ID | <[email protected]> |
Commit: 6c22c005183923dc317f6f7161b7db96f7e0474c Author: Andrei Zmievski <[email protected]> Tue, 28 Mar 2006 00:55:41 +0000 Parents: 7315af0db75afeeb44b1d705ef85a4a06074333a Branches: master Link: http://git.php.net/?p=gtk/php-gtk.git;a=commitdiff;h=6c22c005183923dc317f6f7161b7db96f7e0474c Log: Add $obj->gtype property.. I think we've been missing a way to get at the actual GType of an object. Changed paths: M main/phpg_gobject.c Diff: 6c22c005183923dc317f6f7161b7db96f7e0474c diff --git a/main/phpg_gobject.c b/main/phpg_gobject.c index 12199d8..67bb3e4 100644 --- a/main/phpg_gobject.c +++ b/main/phpg_gobject.c @@ -787,6 +787,18 @@ static zend_function_entry gobject_methods[] = { }; +PHPG_PROP_READER(GObject, gtype) +{ + ZVAL_LONG(return_value, G_OBJECT_TYPE(((phpg_gobject_t *)object)->obj)); + return SUCCESS; +} + +static prop_info_t gobject_props_info[] = { + { "gtype", PHPG_PROP_READ_FN(GObject, gtype), NULL }, + { NULL, NULL, NULL }, +}; + + void phpg_gobject_register_self(TSRMLS_D) { if (gobject_ce) return; @@ -798,7 +810,7 @@ void phpg_gobject_register_self(TSRMLS_D) phpg_gobject_handlers = php_gtk_handlers; phpg_gobject_handlers.del_ref = phpg_gobject_del_ref; - gobject_ce = phpg_register_class("GObject", gobject_methods, NULL, 0, NULL, NULL, G_TYPE_OBJECT TSRMLS_CC); + gobject_ce = phpg_register_class("GObject", gobject_methods, NULL, 0, gobject_props_info, NULL, G_TYPE_OBJECT TSRMLS_CC); phpg_register_int_constant(gobject_ce, "gtype", sizeof("gtype")-1, G_TYPE_OBJECT); }