GNOME Bugzilla – Bug 546739
Introspection should know precise signal parameter types
Last modified: 2015-02-07 16:55:13 UTC
GType can't identify some types, so it reports generic types for some signal properties. For instance, there's no way with the current GType system to discover that the GtkWidget::enter-notify-event signal actually has a GdkEventCrossing* parameter rather than a GdkEvent* parameter. All these *-event signals have this problem. There's a similar problem with pointer arguments. For instance, int* must be registered as a generic gpointer. It would be nice if the new introspection system could provide this information.
For the first, it would be possible to add an annotation which would act as advisory data on things like signals. However we couldn't hide the fact that the parameter is C side actually a GdkEvent - this would have to be additional information. As for int*, there is a facility for marking parameters as (out) or (inout).
i suggested an (actual-type) annotation in bug 561264 comment 1 which could be used here too.
*** Bug 561711 has been marked as a duplicate of this bug. ***
2009-01-12 Johan Dahlin <jdahlin@async.com.br> Bug 546739 – Introspection should know precise signal parameter types * giscanner/annotationparser.py: * tests/scanner/annotation-1.0-expected.gir: * tests/scanner/annotation-1.0-expected.tgir: * tests/scanner/annotation.c (annotation_object_class_init): Annotations are parsed for signals, the (type) annotation is introduced.
[Mass-moving gobject-introspection tickets to its own Bugzilla product - see bug 708029. Mass-filter your bugmail for this message: introspection20150207 ]