Delayers handle delaying of actions; the main purpose is to delay graph redrawing actions during complex updates.
- data Delayer
- newDelayer :: IO Delayer
- class HasDelayer object where
- delay :: HasDelayer object => object -> IO a -> IO a
- data DelayedAction
- newDelayedAction :: IO () -> IO DelayedAction
- delayedAct :: Delayer -> DelayedAction -> IO ()
- cancelDelayedAct :: Delayer -> DelayedAction -> IO ()
- class HasAddDelayer eventSource where
- addDelayer :: Delayer -> eventSource -> eventSource
- class HasAddDelayerIO eventSource where
- addDelayerIO :: Delayer -> eventSource -> IO eventSource
Documentation
delay :: HasDelayer object => object -> IO a -> IO aSource
carry out the given action preventing the Delayer from doing anything.
delayedAct :: Delayer -> DelayedAction -> IO ()Source
cancelDelayedAct :: Delayer -> DelayedAction -> IO ()Source
If this DelayedAction is queued, remove it from the queue.
class HasAddDelayer eventSource whereSource
Instances of HasAddDelayer are event sources to which you can attach a delayer, to indicate you are currently not interested in events.
addDelayer :: Delayer -> eventSource -> eventSourceSource
class HasAddDelayerIO eventSource whereSource
Like HasAddDelayer, but allows an IO action.
addDelayerIO :: Delayer -> eventSource -> IO eventSourceSource
HasAddDelayerIO (ListDrawer a pos) |