com gtk/php-gtk: - Add '#' modifier to 'u' specifier so that the utf8 length can be obtained. - Make GtkTextBuffer::set_text () work. Note that PHP-GTK version has only one parameter: text itself. - Make Gt kTextView constructor be generated.: ext/gtk+/gtk .overrides ext/gtk+/gtktextview.overrides main/php_gt k_util.c

[email protected] (David Soria Parra) Sat, 01 Oct 2005 18:31:01 +0000
Newsgroups php.gtk.cvs
Message-ID <[email protected]>
Commit:    28aa7c2747a16c4c13ec324c17891a29d7f1a50c=0AAuthor:    Andrei Zmi=
evski <[email protected]>         Sat, 1 Oct 2005 18:31:01 +0000=0AParents:   =
03c1c7cafdb0a395039aedd33fbf497cf2bbb447=0ABranches:  master=0A=0ALink:    =
   http://git.php.net/?p=3Dgtk/php-gtk.git;a=3Dcommitdiff;h=3D28aa7c2747a16=
c4c13ec324c17891a29d7f1a50c=0A=0ALog:=0A- Add '#' modifier to 'u' specifier=
 so that the utf8 length can be=0A  obtained.=0A- Make GtkTextBuffer::set_t=
ext() work. Note that PHP-GTK version has=0A  only one parameter: text itse=
lf.=0A- Make GtkTextView constructor be generated.=0A=0AChanged paths:=0A  =
M  ext/gtk+/gtk.overrides=0A  M  ext/gtk+/gtktextview.overrides=0A  M  main=
/php_gtk_util.c=0A=0A=0ADiff:=0A28aa7c2747a16c4c13ec324c17891a29d7f1a50c=0A=
diff --git a/ext/gtk+/gtk.overrides b/ext/gtk+/gtk.overrides=0Aindex 20bed6=
e..bed3858 100644=0A--- a/ext/gtk+/gtk.overrides=0A+++ b/ext/gtk+/gtk.overr=
ides=0A@@ -160,7 +160,6 @@ ignore=0A     gtk_signal_n_emissions_by_name=0A =
    gtk_signal_query=0A     gtk_signal_set_funcs=0A-    gtk_text_view_new_w=
ith_buffer=0A     gtk_tooltips_data_get=0A     gtk_trace_referencing=0A    =
 gtk_type_check_class_cast=0A@@ -976,7 +975,7 @@ static void php_gtk_menu_p=
osition(GtkMenu *menu, int *x, int *y, int *push_in, g=0A     TSRMLS_FETCH(=
);=0A =0A     if (!zend_is_callable(cbd->callback, 0, &callback_name)) {=0A=
-        php_error(E_WARNING, "unable to call menu position callback '%s' s=
pecified in %s on line %d", callback_name, cbd->src_filename, cbd->src_line=
no);=0A+        php_error(E_WARNING, "unable to call menu position callback=
 '%s' specified in %s on line %ld", callback_name, cbd->src_filename, cbd->=
src_lineno);=0A         efree(callback_name);=0A         return;=0A     }=
=0Adiff --git a/ext/gtk+/gtktextview.overrides b/ext/gtk+/gtktextview.overr=
ides=0Aindex b1f9f70..e2ab4ee 100644=0A--- a/ext/gtk+/gtktextview.overrides=
=0A+++ b/ext/gtk+/gtktextview.overrides=0A@@ -1,5 +1,11 @@=0A /* vim: set f=
t=3Dcpp fdm=3Dmarker et: */=0A =0A+%% {{{ ignores=0A+%%=0A+ignore=0A+    gt=
k_text_view_new=0A+%% }}}=0A+=0A %% {{{ GtkTextBuffer=0A =0A %%=0A@@ -120,4=
 +126,30 @@ PHP_METHOD=0A     phpg_gboxed_new(&return_value, GTK_TYPE_TEXT_=
ITER, &iter, TRUE, TRUE TSRMLS_CC);=0A }=0A =0A+%%=0A+add-arginfo GtkTextBu=
ffer set_text=0A+static=0A+ZEND_BEGIN_ARG_INFO(ARGINFO_NAME, 0)=0A+    ZEND=
_ARG_INFO(0, text)=0A+    ZEND_ARG_INFO(0, length)=0A+ZEND_END_ARG_INFO();=
=0A+=0A+%%=0A+override gtk_text_buffer_set_text=0A+PHP_METHOD=0A+{=0A+    c=
har *text;=0A+    int text_len;=0A+    zend_bool free_text;=0A+=0A+    NOT_=
STATIC_METHOD();=0A+=0A+    if (!php_gtk_parse_args(ZEND_NUM_ARGS(), "u#", =
&text, &text_len, &free_text))=0A+        return;=0A+=0A+    gtk_text_buffe=
r_set_text(GTK_TEXT_BUFFER(PHPG_GOBJECT(this_ptr)), text, text_len);=0A+=0A=
+    if (free_text) g_free(text);=0A+}=0A+=0A %% }}}=0Adiff --git a/main/ph=
p_gtk_util.c b/main/php_gtk_util.c=0Aindex 761f412..20bf787 100644=0A--- a/=
main/php_gtk_util.c=0A+++ b/main/php_gtk_util.c=0A@@ -205,6 +205,10 @@ stat=
ic char *parse_arg_impl(zval **arg, va_list *va, char **spec, char *buf, in=
t=0A =09=09=09=09=09=09utf8 =3D phpg_to_utf8(Z_STRVAL_PP(arg), Z_STRLEN_PP(=
arg), &utf8_len, &free_utf8 TSRMLS_CC);=0A =09=09=09=09=09=09if (utf8) {=0A=
 =09=09=09=09=09=09=09*va_arg(*va, char **) =3D utf8;=0A+=09=09=09=09=09=09=
=09if (*spec_walk =3D=3D '#') {=0A+=09=09=09=09=09=09=09=09*va_arg(*va, int=
 *) =3D utf8_len;=0A+=09=09=09=09=09=09=09=09spec_walk++;=0A+=09=09=09=09=
=09=09=09}=0A =09=09=09=09=09=09=09*va_arg(*va, zend_bool *) =3D free_utf8;=
=0A =09=09=09=09=09=09} else {=0A =09=09=09=09=09=09=09return "string in su=
pported encoding";=0A