Implement a few more constructors.

This commit is contained in:
Andrei Zmievski
2005-04-04 04:07:34 +00:00
parent 57d49c9489
commit ff3d15aa50
3 changed files with 68 additions and 5 deletions
+2
View File
@@ -2434,6 +2434,8 @@
(c-name "GtkToggleButton")
(gtype-id "GTK_TYPE_TOGGLE_BUTTON")
(fields
'("gboolean" "active")
'("gboolean" "inconsistent")
'("gboolean" "draw_indicator")
)
)
+4 -1
View File
@@ -3231,7 +3231,10 @@
(caller-owns-return "1")
(return-type "GtkWidget*")
(parameters
'("const-GdkColor*" "color")
'("const-GdkColor*" "color" (default "NULL"))
)
(properties
'("color" (optional))
)
)
+62 -4
View File
@@ -18,6 +18,7 @@ ignore-glob
*_get_type
gtk_arg_*
gtk_args_*
gtk_check_button_new_*
gtk_init_add_*
gtk_marshal_*
gtk_quit_add_*
@@ -25,11 +26,12 @@ ignore-glob
gtk_radio_tool_button_new_*
gtk_signal_*
gtk_timeout_add_*
gtk_toggle_button_new_*
%%
ignore
gtk_button_new_with_label
gtk_button_new_with_mnemonic
gtk_color_button_new
gtk_dialog_new
gtk_exit
gtk_false
@@ -308,8 +310,8 @@ PHP_METHOD
}
if (text) {
wrapped_obj = (GObject *)g_object_new(GTK_TYPE_BUTTON, "label", text,
"use-underline", use_underline, NULL);
wrapped_obj = (GObject *)g_object_new(phpg_gtype_from_zval(this_ptr), "label",
text, "use-underline", use_underline, NULL);
} else {
wrapped_obj = (GObject *)g_object_new(phpg_gtype_from_zval(this_ptr), NULL);
}
@@ -332,7 +334,7 @@ PHP_METHOD
PHPG_THROW_EXCEPTION(phpg_construct_exception, "could not construct GtkButton object");
}
wrapped_obj = (GObject *)g_object_new(GTK_TYPE_BUTTON, "label", stock,
wrapped_obj = (GObject *)g_object_new(phpg_gtype_from_zval(this_ptr), "label", stock,
"use-stock", TRUE, "use-underline", TRUE, NULL);
if (!wrapped_obj) {
@@ -343,6 +345,34 @@ PHP_METHOD
}
%% }}}
%% {{{ GtkCheckButton
%%
override gtk_check_button_new
PHP_METHOD
{
GObject *wrapped_obj;
gchar *text = NULL;
zend_bool use_underline = 0;
if (!php_gtk_parse_args(ZEND_NUM_ARGS(), "|sb", &text, &use_underline)) {
PHPG_THROW_CONSTRUCT_EXCEPTION(GtkCheckButton);
}
if (text) {
wrapped_obj = (GObject *)g_object_new(phpg_gtype_from_zval(this_ptr), "label",
text, "use-underline", use_underline, NULL);
} else {
wrapped_obj = (GObject *)g_object_new(phpg_gtype_from_zval(this_ptr), NULL);
}
if (!wrapped_obj) {
PHPG_THROW_CONSTRUCT_EXCEPTION(GtkCheckButton);
}
phpg_gobject_set_wrapper(this_ptr, wrapped_obj TSRMLS_CC);
}
%% }}}
%% {{{ GtkDialog
%%
override gtk_dialog_new_with_buttons
@@ -807,6 +837,34 @@ PHPG_PROP_READER
}
%% }}}
%% {{{ GtkToggleButton
%%
override gtk_toggle_button_new
PHP_METHOD
{
GObject *wrapped_obj;
gchar *text = NULL;
zend_bool use_underline = 0;
if (!php_gtk_parse_args(ZEND_NUM_ARGS(), "|sb", &text, &use_underline)) {
PHPG_THROW_CONSTRUCT_EXCEPTION(GtkToggleButton);
}
if (text) {
wrapped_obj = (GObject *)g_object_new(phpg_gtype_from_zval(this_ptr), "label",
text, "use-underline", use_underline, NULL);
} else {
wrapped_obj = (GObject *)g_object_new(phpg_gtype_from_zval(this_ptr), NULL);
}
if (!wrapped_obj) {
PHPG_THROW_CONSTRUCT_EXCEPTION(GtkToggleButton);
}
phpg_gobject_set_wrapper(this_ptr, wrapped_obj TSRMLS_CC);
}
%% }}}
%% {{{ GtkWidget
%%
override gtk_widget_intersect