[fpc-pascal] FPC and GTK2: signal handlers
Jan Je/lowicki
Jasj at OZI.AR.WROC.PL
Wed Apr 20 11:26:38 CEST 2005
Hello all,
I am porting some pascal code from gtk 1.2 to 2.x using fpc 1.9.8.
Is there any difference between meaning of return values
of signal callbacks in GTK+ 1.2 and 2.x?
I have troubles when I try to to GtkEntry a sevice, that would check
whether some special key values were pressed, proceed specified
action for them and next allow the default key-press handler to do
its job:
g_signal_connect(entry, 'key_press_event', @myhandler, nil);
where
function myhandler(w: pGTKWidget; e: pGDKEvent;
data: pointer): boolean; cdecl;
begin
case e^.keyval of
....
end;
result := false;
end;
In my opinion, returnig with FALSE should allow next callbacks
connected to the same widget/event to be called; nevertheless they
are not called in my tests, including the default handler
(gtk_combo_entry_key_press(), I guess).
Setting TRUE or FALSE as result of myhandler cannot change anything.
On the other side, when using g_signal_connect_after, the default
handler stops the cascade on some key values, that are important
for me (like Enter) -- although it allows user services on other keys.
It looks like the result value influenced spreading the signal.
I would like to run all the cascade of callbacks attached to single
widget/event pairwhen I need, including default services.
Is there any way to do it in GTK2 as easily as it was in GTK1.2?
With regards,
Jan Jelowicki
jasj at ozi.ar.wroc.pl
-------------------------------------------------------------------
Wroclaw University of Agriculture Akademia Rolnicza we Wroclawiu
Department of Mathematics Katedra Matematyki
-------------------------------------------------------------------
More information about the fpc-pascal
mailing list