GtkFileChooser::get_filenames / get_uris override
| From: | Christian Weiske | Date: | Thu, 09 Mar 2006 07:49:43 +0000 |
| Subject: | GtkFileChooser::get_filenames / get_uris override | ||
| Groups: | php.gtk.dev | ||
| Request: | Send a blank email to php-gtk-dev+get-2550@lists.php.net to get a copy of this message | ||
Hello all,
Here is the override for gtkfilechooser::get_filenames() and get_uris()
I'm not sure if the values need to be converted from utf-8 to php.
--------------
%% {{{ GtkFileChooser
%%
override gtk_file_chooser_get_filenames
PHP_METHOD
{
GSList *files;
NOT_STATIC_METHOD();
if (!php_gtk_parse_args(ZEND_NUM_ARGS(), ""))
return;
array_init(return_value);
for (files =
gtk_file_chooser_get_filenames(GTK_FILE_CHOOSER(PHPG_GOBJECT(this_ptr)));
files; files = files->next) {
add_next_index_string(return_value, (char *) files->data, 1);
g_free(files->data);
}
g_slist_free(files);
}
%%
override gtk_file_chooser_get_uris
PHP_METHOD
{
GSList *files;
NOT_STATIC_METHOD();
if (!php_gtk_parse_args(ZEND_NUM_ARGS(), ""))
return;
array_init(return_value);
for (files =
gtk_file_chooser_get_uris(GTK_FILE_CHOOSER(PHPG_GOBJECT(this_ptr)));
files; files = files->next) {
add_next_index_string(return_value, (char *) files->data, 1);
g_free(files->data);
}
g_slist_free(files);
}
%% }}}
--------------
Simple test script:
<?php
$fc = new GtkFileChooserWidget(Gtk::FILE_CHOOSER_ACTION_OPEN);
$fc->set_select_multiple(true);
$wnd = new GtkWindow();
$wnd->connect_simple('destroy', array('Gtk', 'main_quit'));
function printFilename($fc) {
echo $fc->get_filename() . "\r\n";
}
function printFilenames($fc) {
var_dump($fc->get_filenames());
}
$btn = new GtkButton('get_filename', false);
$btn->connect_simple('clicked', 'printFilename', $fc);
$btn2 = new GtkButton('get_filenames', false);
$btn2->connect_simple('clicked', 'printFilenames', $fc);
$vbox = new GtkVBox();
$vbox->pack_start($fc);
$vbox->pack_start($btn, false, false);
$vbox->pack_start($btn2, false, false);
$wnd->add($vbox);
$wnd->show_all();
Gtk::main();
?>
--
Regards/MfG,
Christian Weiske
Attachment: [application/pgp-signature] OpenPGP digital signature signature.asc
Attachment: [application/pgp-signature] OpenPGP digital signature signature.asc