úÎ4¤3#     3Common wires to be used to support input in netwire(c) Pavel Krajcevski, 2014MITKrajcevski@gmail.com experimentalPOSIXNone68?This monad describes computations that involve keyboard input. 2Returns true if the given key is currently pressed*Resets the pressed state of the given key.]Key typeclass. This is used to constrain the type of Monad used | to provide keyboard input.<This monad describes computations that involve mouse input. ƒSets the cursor mode for all subsequent computations. Note, that many | implementations require some sort of "poll" to read the IO1Returns true if the given mouse button is pressed,Resets the pressed state of the mouse buttonGet the current cursor location :Get the amount of scrolling done in the x and y directions ~The mouse cursor mode. This mode is usually dependent on whether or not the mouse is in the bounds of the application window. <The mouse cursor is enabed and visible over the application 4The mouse cursor is hidden when over the application -Reset the cursor to zero between computationsThe mouse cursor is disabledcMouse button typeclass. This is used to constrain the type of Monad used | to provide mouse input.›Ignores its input and returns the current normalized mouse coordinates. Regardless of window size, each of the returned coordinates will be in the range [-1, 1]. Depends: nowInhibits: neverHReturns the change in mouse coordinates between subsequent time instantsDepends: before nowInhibits: never’The mouse mickies are the offset from zero at each time instant. If this wire is being used, then it is assuming that the cursor mode is set to   Depends: nowInhibits: neverWBehaves like the identity wire when the mouse button is pressed and inhibits otherwise.Inhibits: when the mouse button is not pressedGIgnores its input and returns True whenever the mouse button is pressedInhibits: neverlBehaves like the identity wire for a signle instant when the mouse button is pressed and otherwise inhibits9Depends: the instant at which the mouse button is pressedKInhibits: when the mouse button is not pressed or after it has been pressed>The mouse scroll is the offset from zero at each time instant. Depends: nowInhibits: neverJThe amount that the mouse has scrolled over the course of the entire wire. Depends: nowInhibits: never›Behaves like the identity wire, and inhibits immediately after setting the cursor mode. Common uses of this wire are to switch it to the identity wire: - cursorMode CursorMode'Disabled --> mkId Inhibits: after nowNBehaves like the identity wire when the key is pressed and inhibits otherwise%Inhibits: when the key is not pressed>Ignores its input and returns True whenever the key is pressedInhibits: neverRBehaves like the identity wire when the key is not pressed and inhibits otherwise!Inhibits: when the key is pressedcBehaves like the identity wire for a signle instant when the key is pressed and otherwise inhibitsBInhibits: when the key is not pressed or after it has been pressed            netwire-input-0.0.4FRP.Netwire.Input MonadKeyboard keyIsPressed releaseKeyKey MonadMouse setCursorMode mbIsPressed releaseButtoncursorscroll CursorModeCursorMode'EnabledCursorMode'HiddenCursorMode'ResetCursorMode'Disabled MouseButton mouseCursor mouseDelta mouseMickies mousePressedisMousePressedmouseDebounced mouseScroll mouseScrolled cursorMode keyPressed isKeyPressed keyNotPressed keyDebounced