definition module Gtk.Signal from System._Pointer import :: Pointer from Gdk.Events import :: GdkEvent from Gtk.State import :: GtkM, :: GtkState from Gtk.Tune import class tune from Gtk.Types import :: GtkPropagate, :: GtkTimeout from Gtk.Widgets import class gtkWidget class signalHandler h where signalName :: !h -> String signalHandler :: !h -> SignalHandlerInternal :: SignalHandler = E.h: SignalHandler h & signalHandler h :: GSignalHandler = ActivateHandler !(GtkM ()) | ChangedHandler !(GtkM ()) | ClickedHandler !(GtkM ()) | DeleteEventHandler !(GdkEvent -> GtkM GtkPropagate) | DestroyHandler !(GtkM ()) | KeyPressHandler !(GdkEvent -> GtkM GtkPropagate) | NextMatchHandler !(GtkM ()) | PreviousMatchHandler !(GtkM ()) | SearchChangedHandler !(GtkM ()) | StopSearchHandler !(GtkM ()) instance signalHandler GSignalHandler :: SignalHandlerInternal = SHI_Void !(GtkM ()) | SHI_Pointer_Bool !(Pointer -> GtkM Bool) | SHI_Int_Int_Bool !(Int Int -> GtkM Bool) | SHI_Int_Int_Pointer_Pointer_Bool !(Int Int Pointer Pointer -> GtkM Bool) installSignalHandler :: !h !w -> GtkM w | signalHandler h & gtkWidget w instance tune w SignalHandler | gtkWidget w instance tune w GSignalHandler | gtkWidget w saveState :: GtkM () retrieveState :: GtkM GtkState //* Wrap functionality in `saveState` and `retrieveState` if it can be re-entrant. withPossibleCallback :: !(GtkM a) -> GtkM a handleSignal :: !Int !{#Int} -> Int // only for foreign export addTimeout :: !GtkTimeout !(GtkM Bool) -> GtkM () handleTimeout :: !Int -> Int // only for foreign export