Gtk3::Stock->add: need an array ref to convert to GArray
- From: Hubert Mauchle <hmauchle magnet ch>
- To: gtk-perl-list gnome org
- Subject: Gtk3::Stock->add: need an array ref to convert to GArray
- Date: Wed, 29 Feb 2012 17:51:57 +0100
Hi all
I try to translate the C code of app_main_window.c (out of package gtk-demo)
into Perl.
Original code:
static GtkStockItem items[] = {
{ "demo-gtk-logo",
"_GTK!",
0, 0, NULL }
};
registered = TRUE;
/* Register our stock items */
gtk_stock_add (items, G_N_ELEMENTS (items));
Perl Code:
my $items = [
["demo-gtk-logo", "_GTK!", 0, 0] ,
];
$registered = 1;
# Register our stock items
Gtk3::Stock->add ($items);
This gives the error
"need an array ref to convert to GArray" when calling the function
Gtk3::Stock->add
Well, $items is an array reference and I don't see what's wrong with it.
In the documentation of Glib::Object::Introspection
in chapter "Converting a Perl variable to a GValue" I see:
...
my $type = ...; # somehow get the package name that
# corresponds to the correct GType
my $real_value =
Glib::Object::Introspection::GValueWrapper->new ($type, $value);
# now use Glib::Object::Introspection->invoke and
# substitute $real_value where you'd use $value
...
but this does not help. I always get an error "Could not find GType for
'<myType>'".
<myType> = GArray, GArray*, gpointer, Glib.Array, ...
What's the correct value for $type in my case?
Any hints are appreciated.
Thank you,
Hubert
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]