- actionImpl
bool actionImpl(IO io, int hostID, InputActionID actionID, bool isActive)
Undocumented in source. Be warned that the author may not have intended to support it.
- afterDraw
void afterDraw(Rectangle outer, Rectangle inner)
Undocumented in source. Be warned that the author may not have intended to support it.
- afterResize
void afterResize(Vector2 )
Undocumented in source. Be warned that the author may not have intended to support it.
- beforeDraw
void beforeDraw(Rectangle outer, Rectangle inner)
HoverTransform saves all the pointers it receives from the host HoverIO
and creates local copies. It then transforms those, and checks its children for
matching nodes.
- beforeResize
void beforeResize(Vector2 )
Undocumented in source. Be warned that the author may not have intended to support it.
- blocksInput
bool blocksInput()
Undocumented in source. Be warned that the author may not have intended to support it.
- canScroll
bool canScroll(HoverPointer pointer)
Undocumented in source. Be warned that the author may not have intended to support it.
- destinationRectangle
Rectangle destinationRectangle()
- destinationRectangle
Rectangle destinationRectangle(Rectangle newValue)
Change the destination rectangle, disabling automatic destination selection.
- emitEvent
void emitEvent(HoverPointer pointer, InputEvent event)
Undocumented in source. Be warned that the author may not have intended to support it.
- fetch
inout(HoverPointer) fetch(int number)
Undocumented in source. Be warned that the author may not have intended to support it.
- focus
void focus()
Undocumented in source. Be warned that the author may not have intended to support it.
- focusImpl
bool focusImpl()
Undocumented in source. Be warned that the author may not have intended to support it.
- hoverImpl
bool hoverImpl(HoverPointer pointer)
Undocumented in source. Be warned that the author may not have intended to support it.
- hoverOf
inout(Hoverable) hoverOf(HoverPointer pointer)
Undocumented in source. Be warned that the author may not have intended to support it.
- hoverOf
inout(Hoverable) hoverOf(int pointerID)
Undocumented in source. Be warned that the author may not have intended to support it.
- inBoundsImpl
IsOpaque inBoundsImpl(Rectangle outer, Rectangle inner, Vector2 position)
Undocumented in source. Be warned that the author may not have intended to support it.
- isFocused
bool isFocused()
Undocumented in source. Be warned that the author may not have intended to support it.
- isHovered
bool isHovered(Hoverable hoverable)
Undocumented in source. Be warned that the author may not have intended to support it.
- isHovered
bool isHovered()
Undocumented in source. Be warned that the author may not have intended to support it.
- load
int load(HoverPointer pointer)
Undocumented in source. Be warned that the author may not have intended to support it.
- opApply
int opApply(int delegate(HoverPointer) @(safe) yield)
Undocumented in source. Be warned that the author may not have intended to support it.
- opApply
int opApply(int delegate(Hoverable) @(safe) yield)
Undocumented in source. Be warned that the author may not have intended to support it.
- opEquals
bool opEquals(Object other)
Undocumented in source. Be warned that the author may not have intended to support it.
- pointToHost
Vector2 pointToHost(Vector2 point)
Transform a point in destinationRectangle onto sourceRectangle.
- pointToLocal
Vector2 pointToLocal(Vector2 point)
Transform a point in sourceRectangle onto destinationRectangle.
- pointerToHost
inout(HoverPointer) pointerToHost(HoverPointer pointer)
Reverse pointer transform. Transform pointers from the local, transformed space, into the
space of the host.
- pointerToLocal
inout(HoverPointer) pointerToLocal(HoverPointer pointer)
Transform a pointer into a new position.
- scrollImpl
bool scrollImpl(HoverPointer pointer)
Undocumented in source. Be warned that the author may not have intended to support it.
- scrollOf
inout(HoverScrollable) scrollOf(HoverPointer pointer)
Undocumented in source. Be warned that the author may not have intended to support it.
- scrollOf
inout(HoverScrollable) scrollOf(int pointerID)
Undocumented in source. Be warned that the author may not have intended to support it.
- shallowScrollTo
Rectangle shallowScrollTo(const(Node) child, Rectangle parentBox, Rectangle childBox)
Undocumented in source. Be warned that the author may not have intended to support it.
- sourceRectangle
Rectangle sourceRectangle()
- sourceRectangle
Rectangle sourceRectangle(Rectangle newValue)
Change the source rectangle.
- next
Node next(Node value)
Set the next node in chain.
- next
inout(Node) next()
- nextChain
inout(NodeChain) nextChain()
- beforeResize
void beforeResize(Vector2 space)
Undocumented in source. Be warned that the author may not have intended to support it.
- afterResize
void afterResize(Vector2 space)
Undocumented in source. Be warned that the author may not have intended to support it.
- beforeDraw
void beforeDraw(Rectangle outer, Rectangle inner)
Undocumented in source. Be warned that the author may not have intended to support it.
- afterDraw
void afterDraw(Rectangle outer, Rectangle inner)
Undocumented in source. Be warned that the author may not have intended to support it.
- resizeImpl
void resizeImpl(Vector2 space)
Undocumented in source. Be warned that the author may not have intended to support it.
- drawImpl
void drawImpl(Rectangle outer, Rectangle inner)
Undocumented in source. Be warned that the author may not have intended to support it.
Implements HoverIO by transforming inputs from a "host" Hover I/O system. HoverTransform must be placed as a child of a host I/O system to function.
This node is most useful when Fluid's graphical output is transformed in post-processing. For example, Raylib users may render the user interface inside a render texture. In such situation, the mouse input would not match what is seen by the user.
HoverTransform creates a barrier between inside — its own children — and nodes outside. Inputs received from the host are transformed for all of its children, but remain unmodified outside. On the other hand, inputs created inside are untouched for other transformed nodes, but are inversely transformed for nodes outside.
Instead of managing its own set of HoverPointer instances, HoverTransform uses the host Hover I/O system for this task. For every pointer inside the host, a transformed version exists in this system. Conversely, a pointer created inside HoverTransform will have an inversely transformed version in the host system.
Note that the host system will not know that the transform has taken place. If a transformed node is hovered, the host will report that the *hover transform* node itself is hovered. To see which node is hovered, use HoverTransform's hoverOf.