after getting the entry widget events to work as i wanted, i started looking at
some other things to do, and my first attempt failed with this :
Couldn't match expected type `Gtk.Signal
(Gtk.Signal self0 (Gtk.EventM Gtk.EExpose
Bool)) (t0 -> IO ())'
with actual type `GtkGL.GLDrawingArea'
In the second argument of `Gtk.on', namely `glCanvas'
In the expression: Gtk.on Gtk.exposeEvent glCanvas
In a stmt of a 'do' block:
Gtk.on Gtk.exposeEvent glCanvas $ \ _ -> putStrLn "foo"
Gtk.on Gtk.exposeEvent glCanvas $ putStrLn "foo"
glCanvas is
glCanvas <- GtkGL.glDrawingAreaNew glconfig
I looked up the type of Gtk.on and exposeEvent :
exposeEvent
:: WidgetClass self => Signal self (EventM EExpose Bool)
on
:: object
-> Signal object callback -> callback -> IO (ConnectId object)
There are numerous problems starting with the type of 'callback' that I can't
seem to trace in the documentation. And I can't figure out why callback is
repeated...
unfortunately it's not obvious what's going on. The type of the entry widget
callback is much simpler, and quite a bit different, so I it's of little help.
I'm having a hard time finding appropriate examples because everything seems to
use the deprecated convention of on{eventType}, e.g. onExposeEvent or
onButtonPress.
I was hoping someone could teach me to fish and parse out the type for me and
provide a simple example.
Just pointing me to up-to-date examples would almost certainly be good enough,
but I really need to understand the convention here, since I suspect as I try
to attach events to other widget types I will see these sorts of problems again.
Thanks,
Brian
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe