com gtk/php-gtk: Merged GtkListItem() and GtkListItem::new _with_label(): ext/gtk+/gtk.overrides
[email protected] (David Soria Parra) Sun, 05 Feb 2006 08:56:35 +0000
| Newsgroups | php.gtk.cvs |
|---|---|
| Message-ID | <[email protected]> |
Commit: 013f1a96c16a973bac46f0e69bc017b0db50517b Author: Christian Weiske <[email protected]> Sun, 5 Feb 2006 08:56:35 +0000 Parents: 80b3c121ca776d616f31d1f1420ec15ad55f00f9 Branches: master Link: http://git.php.net/?p=gtk/php-gtk.git;a=commitdiff;h=013f1a96c16a973bac46f0e69bc017b0db50517b Log: Merged GtkListItem() and GtkListItem::new_with_label() Changed paths: M ext/gtk+/gtk.overrides Diff: 013f1a96c16a973bac46f0e69bc017b0db50517b diff --git a/ext/gtk+/gtk.overrides b/ext/gtk+/gtk.overrides index c432757..690f1f0 100644 --- a/ext/gtk+/gtk.overrides +++ b/ext/gtk+/gtk.overrides @@ -47,6 +47,7 @@ ignore gtk_image_menu_item_new_with_mnemonic gtk_init gtk_init_check + gtk_list_item_new_with_label gtk_menu_item_new_with_label gtk_menu_item_new_with_mnemonic gtk_radio_menu_item_new_with_label @@ -1626,6 +1627,48 @@ PHP_METHOD %% }}} +%% {{{ GtkListItem + +%% +add-arginfo GtkListItem __construct +static +ZEND_BEGIN_ARG_INFO_EX(ARGINFO_NAME, 0, 0, 0) + ZEND_ARG_INFO(0, label) +ZEND_END_ARG_INFO(); + +%% override gtk_list_item_new +PHP_METHOD(GtkListItem, __construct) +{ + char *label; + zend_bool free_label; + GObject *wrapped_obj; + + if (!php_gtk_parse_args(ZEND_NUM_ARGS(), "|u", &label, &free_label)) { + PHPG_THROW_CONSTRUCT_EXCEPTION(GtkListItem); + } + + phpg_warn_deprecated("use GtkTreeView" TSRMLS_CC); + + if (ZEND_NUM_ARGS() == 1) { + wrapped_obj = (GObject *) gtk_list_item_new_with_label(label); + if (free_label) g_free(label); + } else { + wrapped_obj = (GObject *) g_object_newv(phpg_gtype_from_zval(this_ptr), 0, NULL); + } + + if (!wrapped_obj) { + PHPG_THROW_CONSTRUCT_EXCEPTION(GtkListItem); + } + + phpg_gobject_new(&return_value, wrapped_obj TSRMLS_CC); + if (ZEND_NUM_ARGS() == 1) { + g_object_unref(wrapped_obj); /* phpg_gobject_new() increments reference count */ + } +} + +%% }}} + + %% {{{ GtkMenu %% add-arginfo GtkMenu popup