Re: Gtk2::Notebook and switch-page signal
- From: muppet <scott asofyet org>
- To: Kiss Gabor (Bitman) <kissg ssg ki iif hu>
- Cc: gtk-perl-list gnome org
- Subject: Re: Gtk2::Notebook and switch-page signal
- Date: Thu, 27 Jan 2011 20:08:52 -0500
On Jan 27, 2011, at 3:26 AM, Kiss Gabor (Bitman) wrote:
What exactly are you trying to do? If you want to switch to a page you
should use $notebook->set_current_page ($page_num).
The page is already selected that is not a problem.
However I want to trigger the signal handler function.
I thought I don't call it directly.
I checked: set_current_page() does not emit switch-page signal
if page is already selected. I should have switch to another
page then back. I'm afraid this should be avoided.
Anyway the original question is: could somebody explain what
gpointer mean in "switch-page(Gtk2::Notebook, gpointer, Glib::UInt)"? :-)
Long ago when gtk+ was new, many signal arguments were made a void* type because in C you can just cast the
pointer to what it's supposed to be. This was problematic for bindings, but only when people actually tried
to use that functionailty, so many of them were overlooked.
For this signal, in git master, the gpointer argument is now a proper GTK_TYPE_WIDGET representing the new
selected child, suggesting someone attempted to fix this.
You may be able to get a usable thing by doing
$child = Glib::Object->new_from_pointer ($the_gpointer_value);
if you really want to try using it. However, if it breaks, you get the keep the pieces.
One problem with the signal documentation is that we get the signal signatures by asking the library at
runtime for the types of the parameters. This information doesn't include parameter names, and doesn't
explain which signals are private and which are public. Many of the very old things in gtk+ have signals
when they actually just wanted virtual functions, so they're not always intended for application usage.
--
Yvonne: Let's do that one again so i can win.
Zella: No.
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]