A blank component, roughly an alias for , used in cases where
a dummy or placeholder is needed (e.g. within designer)
A platform-native checkbox element
A Clap describes either a “click” (mousedown followed by mouseup), OR a
“tap” with one finger (singular fingerdown event).
Claps are a useful alternative to most kinds of Click or Tap events,
when you want the same behavior for both to be contained in one place.
User clicks a mouse button over an element.
User right-clicks an element to open the context menu.
User double-clicks a mouse button over an element.
User clicks a mouse button over an element.
A platform-native dropdown list
A basic 2D vector ellipse
A primitive that gathers children underneath a single render node with a shared base transform,
like [
Group], except
Frame has the option of clipping rendering outside
of its bounds.
Gathers a set of children underneath a single render node:
useful for composing transforms and simplifying render trees.
An Image (decoded by chassis), drawn to the bounds specified
by size, transformed by transform
User is pressing a key.
User presses a key that displays a character (alphanumeric or symbol).
User has released a key.
Common properties in keyboard events.
User presses a mouse button over an element.
Common properties in mouse events.
User moves the mouse while it is over an element.
User moves the mouse away from an element.
User moves the mouse onto an element.
User releases a mouse button over an element.
A basic 2D vector path for arbitrary Bézier / line-segment chains
Raw Percent type, which we use for serialization and dynamic traversal. At the time
of authoring, this type is not used directly at runtime, but is intended for into coercion
into downstream types, e.g. ColorChannel, Rotation, and Size. This allows us to be “dumb”
about how we parse %, and allow the context in which it is used to pull forward a specific
type through into inference.
A typed wrapper over a UntypedProperty that casts to/from an untyped
property on get/set
A platform-native radio set list
A basic 2D vector rectangle
Scroll occurs when a frame is translated vertically or horizontally
Can be both by touch, mouse or keyboard
The contained delta_x and delta_y describe the horizontal and vertical translation of
the frame
A combination of a clipping area (nearly identical to a Frame,) and an
inner panel that can be scrolled on zero or more axes. Scroller coordinates with each chassis to
create native scrolling containers, which pass native scroll events back to Engine. In turn,
Scroller translates its children to reflect the current scroll position.
When both scrolling axes are disabled, Scroller acts exactly like a Frame, with a possibly-
transformed Group surrounding its contents.
A scrolling container for arbitrary content.
A platform-native Slider control
Contains the index value for slot, either a literal or an expression.
Stacker lays out a series of nodes either
vertically or horizontally (i.e. a single row or column) with a specified gutter in between
each node. Stackers can be stacked inside of each other, horizontally
and vertically, along with percentage-based positioning and Transform2D.anchor to compose any rectilinear 2D layout.
Renders text in a platform-native way
A platform-native text input field
Represents a single touch point.
A TouchEnd occurs when the user stops touching an element.
The contained touches represent a list of touch points.
A TouchMove occurs when the user moves while touching an element.
The contained touches represent a list of touch points.
A TouchStart occurs when the user touches an element.
The contained touches represent a list of touch points.
A sugary representation of an Affine transform+, including
anchor and align as layout-computed properties.
User scrolls the mouse wheel over an element.