This module provides support for user interface circuits.
UI circuits are systems of UI items (for example, widgets). They are similar to ordinary circuits as provided by FRP.Grapefruit.Circuit but have the additional feature of providing parts of user interfaces.
The type of user interface circuits.
item parameter is a phantom parameter which says which kind of items the circuit
contains. It should be an instance of
Converts an ordinary circuit into a user interface circuit that contains no items.
|:: UIBackend uiBackend|
the user interface backend to use
|-> (forall era. UICircuit Window uiBackend era i (DSignal era o))|
the circuit to run
the input of the ciruit
|-> IO o|
an action running the circuit and returning the value of the output signal’s first occurence
Runs a user interface circuit.
run quits when the output signal of the circuit has a first occurence. The universal
quantification of the circuit’s era parameter ensures that the circuit does not use
signals which are produced outside the circuit and therefore avoids era mismatches.