rasa-0.1.12: A modular text editor

Safe HaskellNone
LanguageHaskell2010

Rasa.Internal.Listeners

Synopsis

Documentation

beforeEveryRender :: App a -> App ListenerId Source #

Registers an action to be performed BEFORE each render phase.

This is a good spot to add information useful to the renderer since all actions have been performed. Only cosmetic changes should occur during this phase.

dispatchBeforeRender :: App () Source #

Dispatch the BeforeRender action.

onEveryRender :: App a -> App ListenerId Source #

Registers an action to be performed during each render phase.

This phase should only be used by extensions which actually render something.

dispatchOnRender :: App () Source #

Dispatch the OnRender action.

afterEveryRender :: App a -> App ListenerId Source #

Registers an action to be performed AFTER each render phase.

This is useful for cleaning up extension state that was registered for the renderer, but needs to be cleared before the next iteration.

dispatchAfterRender :: App () Source #

Dispatch the AfterRender action.

onExit :: (HasEvents zoomed, Typeable (* -> *) m, Typeable * base, Monad m) => ActionT base zoomed m a -> ActionT base zoomed m () #

Registers an action to be run before shutdown. Any asynchronous combinators used in this block will NOT be run.

onKeypress :: (Keypress -> App result) -> App ListenerId Source #

Trigger an App on a Keypress

dispatchKeypress :: Keypress -> App () Source #

Dispatch a Keypress event.