Index
Modules:
midio_ui/events
,
midio_ui/gui/animation/animation
,
midio_ui/gui/animation/easings
,
midio_ui/gui/behaviors
,
midio_ui/gui/behaviors/onClicked
,
midio_ui/gui/behaviors/onDrag
,
midio_ui/gui/behaviors/onHover
,
midio_ui/gui/behaviors/onPointer
,
midio_ui/gui/circle
,
midio_ui/gui/container
,
midio_ui/gui/data_binding
,
midio_ui/gui/debug/debug_tree
,
midio_ui/gui/debug_draw
,
midio_ui/gui/dock
,
midio_ui/gui/drawing_primitives
,
midio_ui/gui/dsl
,
midio_ui/gui/element
,
midio_ui/gui/element_bounds_changed_event
,
midio_ui/gui/element_events
,
midio_ui/gui/element_observables
,
midio_ui/gui/layout_observables
,
midio_ui/gui/native_element
,
midio_ui/gui/path
,
midio_ui/gui/rectangle
,
midio_ui/gui/rendering
,
midio_ui/gui/stack
,
midio_ui/gui/tag
,
midio_ui/gui/text
,
midio_ui/gui/types
,
midio_ui/gui/update_manager
,
midio_ui/guid
,
midio_ui/main
,
midio_ui/number
,
midio_ui/observables/observable_collection
,
midio_ui/observables/observables
,
midio_ui/rect
,
midio_ui/thickness
,
midio_ui/utils
,
midio_ui/vec
.
API symbols
`$`:
element: `$`(p: Element): string
element: `$`(p: ElemProps): string
`+`:
vec: `+`[T](self: Vec2[T]; other: Vec2[T]): Vec2[T]
`-`:
vec: `-`[T: Number](self: Vec2[T]): Vec2[T]
vec: `-`[T](self: Vec2[T]; other: Vec2[T]): Vec2[T]
`[]`:
rect: `[]`[T: Number](self: Rect[T]; i: range[0 .. 3]): T
abs:
vec: abs[T: Number](self: Vec2[T]): Vec2[T]
actualWorldPosition:
element: actualWorldPosition(self: Element): Vec2[float]
add:
events: add[T](self: var EventEmitter[T]; listener: EventHandler[T]): void
behaviors: add(element: Element; behavior: Behavior): void
observable_collection: add[T](self: CollectionSubject[T]; item: T): void
thickness: add[T: Number](self: Thickness[T]; other: Thickness[T]): Thickness[T]
vec: add[T: Number](self: Vec2[T]; other: Vec2[T]): Vec2[T]
addChild:
element: addChild(self: Element; child: Element): void
AddedSubscriber:
observable_collection: AddedSubscriber
addTag:
tag: addTag(element: Element; tag: Tag): void
addUpdateListenerIfNotPresent:
update_manager: addUpdateListenerIfNotPresent(listener: EventHandler[float]): void
addX:
vec: addX[T: Number](self: Vec2[T]; other: T): Vec2[T]
addY:
vec: addY[T: Number](self: Vec2[T]; other: T): Vec2[T]
Align:
dsl: Align
align=:
dsl: align=(props: ElemProps; value: Align): void
angle:
vec: angle[T: Number](self: Vec2[T]): T
Animator:
animation: Animator
applyLayoutConstraints:
element: applyLayoutConstraints(element: Element; constraints: Vec2[float]): Vec2[float]
arrange:
element: arrange(self: Element; rect: Rect): void
element: arrange(self: LayoutManager; elem: Element; rect: Bounds): void
arrangeOverride:
element: arrangeOverride(self: Element; finalSize: Vec2[float]): Vec2[float]
Backward:
PlayDirection.Backward
Behavior:
behaviors: Behavior
behaviors:
behaviors: behaviors(element: Element): seq[Behavior]
behaviorSubject:
observables: behaviorSubject[T](source: Observable[T]): Subject[T]
observables: behaviorSubject[T](value: T): Subject[T]
bindChildCollection:
dsl: bindChildCollection(self: Element; subj: CollectionSubject[Element]): void
dsl: bindChildCollection(self: Element; obs: Observable[seq[Element]]): void
dsl: bindChildCollection(self: Element; items: seq[Element]): void
dsl: bindChildCollection(self: Element; item: Subject[Element]): void
dsl: bindChildCollection(self: Element; item: Subject[Option[Element]]): void
dsl: bindChildCollection(self: Element; subj: Subject[seq[Element]]): void
bindCollection:
data_binding: bindCollection[T](prop: seq[T]; collection: ObservableCollection[T]): untyped
bindLayoutProp:
data_binding: bindLayoutProp[T](element: Element; prop: untyped; observable: Observable[T]): untyped
bindProp:
data_binding: bindProp[T](prop: typed; observable: Observable[T]): untyped
bindPropWithInvalidation:
dsl: bindPropWithInvalidation[T](elem: Element; prop: typed; observable: Observable[T]): untyped
border:
rectangle: border(strokeColor: Color; strokeWidth: Option[float] = none(); radius: Option[CornerRadius] = none()): Element
bottom:
dock: bottom(element: Element): Docking
Bottom:
Align.Bottom
bottom:
rect: bottom[T: Number](self: Rect[T]): T
thickness: bottom[T: Number](self: Thickness[T]): T
BottomLeft:
Align.BottomLeft
BottomRight:
Align.BottomRight
Bounds:
types: Bounds
boundsInWorldSpace:
element: boundsInWorldSpace(self: Element): Option[Bounds]
boundsOfClosestElementWithClipToBounds:
types: boundsOfClosestElementWithClipToBounds(self: Element): Option[Bounds]
capturePointer:
element_events: capturePointer(self: Element): void
Center:
Align.Center
center:
rect: center(self: Rect[float]): Vec2[float]
choose:
utils: choose(cond: bool; a, b: untyped): untyped
circle:
drawing_primitives: circle(self: Element; colorInfo: Option[ColorInfo]; strokeInfo: Option[StrokeInfo]; center: Point; radius: float): Primitive
dsl: circle(attributesAndChildren: varargs[untyped]): untyped
CircleInfo:
types: CircleInfo
CircleProps:
circle: CircleProps
close:
drawing_primitives: close(): PathSegment
CollapsablePanel:
debug_tree: CollapsablePanel(attributesAndChildren`gensym16751171: varargs[untyped]): untyped
CollapsablePanelProps:
debug_tree: CollapsablePanelProps
CollectionSubject:
observable_collection: CollectionSubject
Color:
types: Color
ColorInfo:
types: ColorInfo
combineLatest:
observable_collection: combineLatest[A, B, R](a: ObservableCollection[A]; b: ObservableCollection[B]; mapper: (A, B) -> R): ObservableCollection[R]
observables: combineLatest[A, B, R](a: Observable[A]; b: Observable[B]; mapper: (A, B) -> R): Observable[ R]
complete:
observables: complete[T](self: Subject[T]): void
component:
dsl: component(head: untyped; body: untyped): untyped
constrain:
vec: constrain[T: Number](self: Vec2[T]; constraint: Vec2[T]): Vec2[T]
container:
container: container(props: ElemProps = ElemProps(); children: seq[Element] = @[]): Element
container: container(margin: Thickness[float]; children: seq[Element] = @[]): Element
container: container(margin: Thickness[float]; children: varargs[Element] = @[]): Element
container: container(children: varargs[Element] = @[]): Element
dsl: container(attributesAndChildren: varargs[untyped]): untyped
containerLayout:
container: containerLayout(): Layout
contains:
events: contains[T](self: EventEmitter[T]; listener: EventHandler[T]): bool
Context:
main: Context
CornerRadius:
types: CornerRadius
create:
observables: create[T](onSubscribe: (Subscriber[T]) -> Subscription): Observable[T]
observables: create[T](values: seq[T]): Observable[T]
createAnimator:
animation: createAnimator(duration: float): Animator[float]
animation: createAnimator[T](duration: float; `from`: T; to: T): Animator[T]
createCircle:
circle: createCircle(props: CircleProps = CircleProps(); elemProps: ElemProps = ElemProps(); children: seq[Element] = @[]): Element
circle: createCircle(color: Color; radius: float): Element
circle: createCircle(color: Color; pos: Vec2[float]; radius: float): Element
createCollapsablePanel:
debug_tree: createCollapsablePanel(props: CollapsablePanelProps; elemProps`gensym16751172: ElemProps; children: seq[Element]): Element
createDebugElem:
debug_tree: createDebugElem(props: DebugElemProps; elemProps`gensym17050479: ElemProps; children: seq[Element]): Element
createDebugTree:
debug_tree: createDebugTree(props: DebugTreeProps; elemProps`gensym17240202: ElemProps; children: seq[Element]): Element
createDebugTreeImpl:
debug_tree: createDebugTreeImpl(props: DebugTreeImplProps; elemProps`gensym17140185: ElemProps; children: seq[Element]): Element
createDock:
dock: createDock(props: ElemProps; children: seq[Element]): Element
dock: createDock(elemProps: ElemProps; children: varargs[Docking] = @[]): Element
dock: createDock(dockings: seq[Docking]; elemProps: ElemProps = ElemProps()): Element
dock: createDock(margin: Thickness[float]; children: varargs[Docking] = @[]): Element
dock: createDock(children: varargs[Docking] = @[]): Element
createElementEvent:
element_events: createElementEvent(name: untyped; T: typedesc): untyped
createEvent:
events: createEvent(name: untyped; T: typedesc): untyped
createPanel:
element: createPanel(props: ElemProps; children: seq[Element]): Element
element: createPanel(props: ElemProps; children: varargs[Element]): Element
element: createPanel(margin: Thickness[float]; children: varargs[Element]): Element
element: createPanel(children: varargs[Element]): Element
createPath:
drawing_primitives: createPath(self: Element; colorInfo: Option[ColorInfo]; strokeInfo: Option[StrokeInfo]; segments: seq[PathSegment]): Primitive
drawing_primitives: createPath(self: Element; colorInfo: Option[ColorInfo]; strokeInfo: Option[StrokeInfo]; segments: varargs[PathSegment]): Primitive
path: createPath(props: PathProps = PathProps(); elemProps: ElemProps = ElemProps(); children: seq[Element] = @[]): Element
createRectangle:
rectangle: createRectangle(props: RectProps = RectProps(); elemProps: ElemProps = ElemProps(); children: seq[Element] = @[]): Element
createStack:
stack: createStack(stackProps: StackProps; props: ElemProps = ElemProps(); children: seq[Element] = @[]): Element
createText:
text: createText(text: string; fontSize: float; margin: Thickness[float] = thickness()): Element
text: createText(props: TextProps = TextProps(); elemProps: ElemProps = ElemProps()): Element
createTextInput:
native_element: createTextInput(text: string; onChange: TextChanged): Element
native_element: createTextInput(props: TextInputProps): Element
createTextPrimitive:
drawing_primitives: createTextPrimitive(elem: Element; text: string; pos: Point = vec2(0.0, 0.0); color: string = "white"; fontSize: float = 12.0; font: string = "system-ui"; textBaseline: string = "top"; alignment: string = "left"): Primitive
curveTo:
drawing_primitives: curveTo(cpx: float; cpy: float; x: float; y: float): PathSegment
debugDrawRect:
debug_draw: debugDrawRect(rect: Rect[float]): void
DebugElem:
debug_tree: DebugElem(attributesAndChildren`gensym17050478: varargs[untyped]): untyped
DebugElemProps:
debug_tree: DebugElemProps
DebugTree:
debug_tree: DebugTree(attributesAndChildren`gensym17240201: varargs[untyped]): untyped
DebugTreeImpl:
debug_tree: DebugTreeImpl(attributesAndChildren`gensym17140184: varargs[untyped]): untyped
DebugTreeImplProps:
debug_tree: DebugTreeImplProps
DebugTreeProps:
debug_tree: DebugTreeProps
deflate:
rect: deflate[T: Number](self: Rect[T]; thickness: Thickness): Rect
vec: deflate[T: Number](self: Vec2[T]; thickness: Thickness[T]): Vec2[T]
deleteWhere:
utils: deleteWhere[T](sequence: var seq[T]; predicate: (T) -> bool): void
directionTo:
vec: directionTo[T: Number](self: Vec2[T]; other: Vec2[T]): Vec2[T]
dispatchKeyDown:
main: dispatchKeyDown(keyCode: int; key: string): void
dispatchOnRooted:
element: dispatchOnRooted(self: Element): void
dispatchOnUnrooted:
element: dispatchOnUnrooted(self: Element): void
dispatchPointerDown:
element_events: dispatchPointerDown(self: Element; arg: PointerArgs): void
dispatchPointerMove:
element_events: dispatchPointerMove(self: Element; arg: PointerArgs): void
main: dispatchPointerMove(x: float; y: float): void
dispatchPointerPress:
main: dispatchPointerPress(x: float; y: float): void
dispatchPointerRelease:
main: dispatchPointerRelease(x: float; y: float): void
dispatchPointerUp:
element_events: dispatchPointerUp(self: Element; arg: PointerArgs): void
dispatchUpdate:
behaviors: dispatchUpdate(self: Element; dt: float): bool
update_manager: dispatchUpdate(dt: float): void
main: dispatchUpdate(dt: float): void
dispatchWindowSizeChanged:
main: dispatchWindowSizeChanged(newSize: Vec2[float]): void
distanceTo:
vec: distanceTo[T: Number](self: Vec2[T]; other: Vec2[T]): T
divide:
vec: divide[T: Number](self: Vec2[T]; val: Number): Vec2[T]
vec: divide[T: Number](self: Vec2[T]; other: Vec2[T]): Vec2[T]
dock:
dsl: dock(attributesAndChildren: varargs[untyped]): untyped
DockChildren:
dock: DockChildren
DockDirection:
dock: DockDirection
Docking:
dock: Docking
docking:
dsl: docking(dir: DockDirection; element: Element): untyped
Drawable:
types: Drawable
easeInBack:
easings: easeInBack(x: float): float
easeInCirc:
easings: easeInCirc(x: float): float
easeInCubic:
easings: easeInCubic(x: float): float
easeInElastic:
easings: easeInElastic(x: float): float
easeInOutBack:
easings: easeInOutBack(x: float): float
easeInOutCirc:
easings: easeInOutCirc(x: float): float
easeInOutCubic:
easings: easeInOutCubic(x: float): float
easeInOutElastic:
easings: easeInOutElastic(x: float): float
easeInOutQuad:
easings: easeInOutQuad(x: float): float
easeInOutQuart:
easings: easeInOutQuart(x: float): float
easeInOutQuint:
easings: easeInOutQuint(x: float): float
easeInOutSine:
easings: easeInOutSine(x: float): float
easeInQuad:
easings: easeInQuad(x: float): float
easeInQuart:
easings: easeInQuart(x: float): float
easeInQuint:
easings: easeInQuint(x: float): float
easeInSine:
easings: easeInSine(x: float): float
easeOutBack:
easings: easeOutBack(x: float): float
easeOutCirc:
easings: easeOutCirc(x: float): float
easeOutCubic:
easings: easeOutCubic(x: float): float
easeOutElastic:
easings: easeOutElastic(x: float): float
easeOutQuad:
easings: easeOutQuad(x: float): float
easeOutQuart:
easings: easeOutQuart(x: float): float
easeOutQuint:
easings: easeOutQuint(x: float): float
easeOutSine:
easings: easeOutSine(x: float): float
Element:
types: Element
ElemProps:
types: ElemProps
ellipse:
drawing_primitives: ellipse(self: Element; colorInfo: Option[ColorInfo]; strokeInfo: Option[StrokeInfo]; center: Point; radius: Vec2[float]): Primitive
EllipseInfo:
types: EllipseInfo
emit:
events: emit[T](self: var EventEmitter[T]; data: T): void
emitlayoutPerformed:
element: emitlayoutPerformed(args`gensym14260644: Bounds): void
emitOnBoundsChanged:
element_bounds_changed_event: emitOnBoundsChanged(self: Element): void
emitter:
events: emitter[T](): EventEmitter[T]
equals:
rect: equals[T: Number](self: Rect[T]; other: Rect[T]): bool
vec: equals[T: Number](self: Vec2[T]; other: Vec2[T]): bool
EventEmitter:
events: EventEmitter
EventHandler:
events: EventHandler
expandNiceAttributeSyntax:
dsl: expandNiceAttributeSyntax(attributesAndChildren: NimNode): ExpandedNiceSyntax
extract:
observables: extract[T](self: Observable[T]; prop: untyped): untyped
extractBindings:
dsl: extractBindings(element: untyped; targetProp: untyped; propType: typed; attributes: typed): untyped
extractChildren:
dsl: extractChildren(childrenOrBehaviors: typed; childrenIdent: untyped; behaviorsIdent: untyped): untyped
extractProps:
dsl: extractProps(propType: typed; attributes: typed): untyped
fill:
rectangle: fill(color: Color; radius: CornerRadius): Element
rectangle: fill(color: Color; elemProps: ElemProps = ElemProps()): Element
fillColor:
drawing_primitives: fillColor(color: Color): ColorInfo
filter:
observables: filter[T](self: Observable[T]; predicate: (T) -> bool): Observable[T]
find:
utils: find[T](sequence: seq[T]; predicate: (T) -> bool): Option[tuple[item: T, index: int]]
flushDebugDrawings:
debug_draw: flushDebugDrawings(): seq[Primitive]
Forward:
PlayDirection.Forward
genGuid:
guid: genGuid(): Guid
getDocking:
dock: getDocking(elem: Element): Option[DockDirection]
getRoot:
element: getRoot(self: Element): Element
Guid:
guid: Guid
hash:
types: hash(element: Element): Hash
hasPointerCapture:
element_events: hasPointerCapture(self: Element): bool
hasTag:
tag: hasTag(element: Element; tag: Tag): bool
height:
rect: height[T: Number](self: Rect[T]): T
heightVec:
vec: heightVec[T: Number](self: Vec2[T]): Vec2[T]
Horizontal:
StackDirection.Horizontal
HorizontalAlignment:
types: HorizontalAlignment
infinity:
vec: infinity[T: Number](): Vec2[T]
inflate:
rect: inflate[T: Number](self: Rect[T]; thickness: Thickness): Rect
vec: inflate[T: Number](self: Vec2[T]; thickness: Thickness[T]): Vec2[T]
init:
main: init(size: Vec2[float]; scale: Vec2[float]; measureTextFunction: (string, float, string, string) -> Vec2[float]; render: () -> Element): Context
initLayoutManager:
element: initLayoutManager(): LayoutManager
intersects:
rect: intersects[T: Number](a: Rect[T]; b: Rect[T]): bool
invalidateLayout:
element: invalidateLayout(self: Element): void
isBetween:
utils: isBetween(a: float; b: float; t: float; offset: float = 0): bool
isPointInside:
element: isPointInside(self: Element; point: Vec2[float]): bool
isRoot:
element: isRoot(self: Element): bool
isRooted:
element: isRooted(self: Element): bool
KeyArgs:
element_events: KeyArgs
keyDownEmitter:
element_events: keyDownEmitter
Layout:
types: Layout
left:
dock: left(element: Element): Docking
Left:
Align.Left
left:
rect: left[T: Number](self: Rect[T]): T
thickness: left[T: Number](self: Thickness[T]): T
length:
vec: length[T: Number](self: Vec2[T]): T
lerp:
vec: lerp[T: Number](a: T; b: T; t: float): T
vec: lerp[T: Number](self: Vec2[T]; other: Vec2[T]; t: float): Vec2[T]
lineTo:
drawing_primitives: lineTo(x: float; y: float): PathSegment
log:
element: log(self: Element; msg: string): void
map:
animation: map[T, R](self: Animator[T]; mapper: (T -> R)): Animator[R]
observable_collection: map[T, R](self: ObservableCollection[T]; mapper: (T) -> R): ObservableCollection[R]
observable_collection: map[T; R](self: CollectionSubject[T]; mapper: (T) -> R): ObservableCollection[R]
observables: map[T, R](self: Observable[T]; mapper: (T) -> R): Observable[R]
margin:
element: margin(p: Element): Thickness[float]
max:
vec: max[T: Number](self: Vec2[T]; other: Vec2[T]): Vec2[T]
measure:
element: measure(self: Element; availableSize: Vec2[float]): void
element: measure(self: LayoutManager; elem: Element; availableSize: Vec2[float]): void
measureCircle:
circle: measureCircle(self: Element; availableSize: Vec2[float]; props: CircleProps): Vec2[ float]
measureOverride:
element: measureOverride(self: Element; availableSize: Vec2[float]): Vec2[float]
measureText:
text: measureText
merge:
observables: merge[A](a: Observable[A]; b: Observable[A]): Observable[A]
observables: merge[A](observables: Observable[Observable[A]]): Observable[A]
min:
vec: min[T: Number](self: Vec2[T]; other: Vec2[T]): Vec2[T]
moveTo:
drawing_primitives: moveTo(x: float; y: float): PathSegment
mul:
vec: mul[T: Number](self: Vec2[T]; other: T): Vec2[T]
vec: mul[T: Number](self: Vec2[T]; otherX: T; otherY: T): Vec2[T]
vec: mul[T: Number](self: Vec2[T]; other: Vec2[T]): Vec2[T]
neg:
vec: neg[T: Number](self: Vec2[T]): Vec2[T]
newElement:
element: newElement(props: ElemProps = ElemProps(); children: seq[Element] = @[]; layout: Option[Layout] = none(); drawable: Option[Drawable] = none(); onRooted: Option[proc (i0: Element): void] = none(); onUnrooted: Option[proc (i0: Element): void] = none()): Element
next:
observables: next[T](self: Subject[T]; transformer: (T) -> T): void
observables: next[T](self: Subject[T]; newVal: T): void
nonNegative:
vec: nonNegative[T: Number](self: Vec2[T]): Vec2[T]
NoProps:
dsl: NoProps
normalized:
vec: normalized[T: Number](self: Vec2[T]): Vec2[T]
Number:
number: Number
numListeners:
events: numListeners[T](self: EventEmitter[T]): int
Observable:
observables: Observable
ObservableCollection:
observable_collection: ObservableCollection
observableCollection:
observable_collection: observableCollection[T](source: ObservableCollection[T]): CollectionSubject[T]
observable_collection: observableCollection[T](values: seq[T] = @[]): CollectionSubject[T]
observeBounds:
element_observables: observeBounds(e: Element): Observable[Rect[float]]
observelayoutPerformed:
element: observelayoutPerformed(): Observable[Bounds]
observepointerClicked:
element_events: observepointerClicked(self`gensym15325009: Element): Observable[PointerArgs]
observepointerEntered:
element_events: observepointerEntered(self`gensym15095009: Element): Observable[PointerArgs]
observepointerExited:
element_events: observepointerExited(self`gensym15295009: Element): Observable[PointerArgs]
observepointerMoved:
element_events: observepointerMoved(self`gensym15310009: Element): Observable[PointerArgs]
observepointerPressed:
element_events: observepointerPressed(self`gensym15340009: Element): Observable[PointerArgs]
observepointerReleased:
element_events: observepointerReleased(self`gensym15355009: Element): Observable[PointerArgs]
observeWorldPosition:
layout_observables: observeWorldPosition(self: Element): Observable[Vec2[float]]
onBoundsChanged:
element_bounds_changed_event: onBoundsChanged(self: Element; handler: BoundsChangedHandler): void
onClicked:
onClicked: onClicked(handler: (elem: Element) -> void): Behavior
onDrag:
onDrag: onDrag(moved: (Vec2[float] -> void)): Behavior
onDragAbsolute:
onDrag: onDragAbsolute(moved: (Vec2[float] -> void)): Behavior
onHover:
onHover: onHover(entered: (Element) -> void): Behavior
onHover: onHover(entered: (Element) -> void; exited: (Element) -> void): Behavior
onlayoutPerformed:
element: onlayoutPerformed(handler`gensym14260643: (Bounds) -> void): void
onpointerClicked:
element_events: onpointerClicked(self`gensym15325003: Element; handler`gensym15325004: (PointerArgs) -> void): void
onpointerEntered:
element_events: onpointerEntered(self`gensym15095003: Element; handler`gensym15095004: (PointerArgs) -> void): void
onpointerExited:
element_events: onpointerExited(self`gensym15295003: Element; handler`gensym15295004: (PointerArgs) -> void): void
onPointerMoved:
onPointer: onPointerMoved(handler: (elem: Element, pos: Point) -> void): Behavior
onpointerMoved:
element_events: onpointerMoved(self`gensym15310003: Element; handler`gensym15310004: (PointerArgs) -> void): void
onpointerPressed:
element_events: onpointerPressed(self`gensym15340003: Element; handler`gensym15340004: (PointerArgs) -> void): void
onpointerReleased:
element_events: onpointerReleased(self`gensym15355003: Element; handler`gensym15355004: (PointerArgs) -> void): void
onPressed:
onPointer: onPressed(handler: (elem: Element) -> void): Behavior
onReleased:
onPointer: onReleased(handler: (elem: Element) -> void): Behavior
panel:
dsl: panel(attributesAndChildren: varargs[untyped]): untyped
path:
dsl: path(attributesAndChildren: varargs[untyped]): untyped
PathProps:
path: PathProps
PathSegment:
types: PathSegment
PathSegmentKind:
types: PathSegmentKind
performOutstandingLayoutsAndMeasures:
element: performOutstandingLayoutsAndMeasures(rect: Bounds): void
playBack:
animation: playBack[T](self: Animator[T]; callback: (() -> void) = nil): void
PlayDirection:
animation: PlayDirection
playToEndThenBack:
animation: playToEndThenBack[T](self: Animator[T]; callback: (() -> void) = nil): void
Point:
types: Point
PointerArgs:
element_events: PointerArgs
pointerArgs:
element_events: pointerArgs(element: Element; x, y: float): PointerArgs
element_events: pointerArgs(element: Element; pos: Vec2[float]): PointerArgs
pointerCaptured:
element_events: pointerCaptured(self: Element): bool
pointerCapturedBySomeoneElse:
element_events: pointerCapturedBySomeoneElse(self: Element): bool
pointerCapturedEmitter:
element_events: pointerCapturedEmitter
pointerCaptureReleasedEmitter:
element_events: pointerCaptureReleasedEmitter
Points:
types: Points
pos:
element: pos(props: ElemProps): Option[Vec2[float]]
pos=:
element: pos=(props: ElemProps; value: Vec2[float]): void
Primitive:
types: Primitive
PrimitiveKind:
types: PrimitiveKind
printTree:
element: printTree(self: Element; prefix: string = ""): void
Rect:
rect: Rect
rect:
rect: rect[T: Number](val: T): Rect[T]
rect: rect[T: Number](l: T; t: T; r: T; b: T): Rect[T]
rect: rect[T: Number](pos: Vec2[T]; size: Vec2[T]): Rect[T]
rectangle:
drawing_primitives: rectangle(bounds: Bounds; colorInfo: Option[ColorInfo]; strokeInfo: Option[StrokeInfo]): Primitive
drawing_primitives: rectangle(self: Element; colorInfo: Option[ColorInfo]; strokeInfo: Option[StrokeInfo]): Primitive
dsl: rectangle(attributesAndChildren: varargs[untyped]): untyped
rectangle_impl:
dsl: rectangle_impl(attributes: untyped): untyped
RectangleInfo:
types: RectangleInfo
rectFromPoints:
rect: rectFromPoints[T: Number](p1: Vec2[T]; p2: Vec2[T]): Rect[T]
RectProps:
rectangle: RectProps
relativeTo:
element: relativeTo(self: Rect[float]; elem: Element): Rect[float]
element: relativeTo(self: Vec2[float]; elem: Element): Vec2[float]
releasePointer:
element_events: releasePointer(self: Element)
remove:
events: remove[T](self: var EventEmitter[T]; listener: EventHandler[T]): void
observable_collection: remove[T](self: CollectionSubject[T]; item: T): void
utils: remove[T](self: var seq[T]; item: T): void
removeChild:
element: removeChild(self: Element; child: Element): void
RemovedSubscriber:
observable_collection: RemovedSubscriber
removeUpdateListener:
update_manager: removeUpdateListener(listener: EventHandler[float]): void
render:
rendering: render(self: Element): seq[Primitive]
main: render(ctx: Context; dt: float): seq[Primitive]
renderText:
text: renderText(self: Element; props: TextProps): seq[Primitive]
reverse:
utils: reverse[T](a: seq[T]): T
right:
dock: right(element: Element): Docking
Right:
Align.Right
right:
rect: right[T: Number](self: Rect[T]): T
thickness: right[T: Number](self: Thickness[T]): T
rotate:
vec: rotate[T: Number](self: Vec2[T]; rad: Number): Vec2[T]
setChildren:
element: setChildren(self: Element; value: seq[Element]): void
setDocking:
dock: setDocking(elem: Element; dir: DockDirection): void
size:
element: size(props: ElemProps): Option[Vec2[float]]
size=:
element: size=(props: ElemProps; value: Vec2[float]): void
stack:
dsl: stack(attributesAndChildren: varargs[untyped]): untyped
StackDirection:
stack: StackDirection
StackProps:
stack: StackProps
start:
animation: start[T](self: Animator[T]; callback: (() -> void) = nil): void
StrokeInfo:
types: StrokeInfo
sub:
vec: sub[T: Number](self: Vec2[T]; other: Vec2[T]): Vec2[T]
subdivideHorizontal:
rect: subdivideHorizontal[T: Number](self: Rect[T]; atX: Number): SubdivisionH
subdivideVertical:
rect: subdivideVertical[T: Number](self: Rect[T]; atY: Number): SubdivisionV
Subject:
observables: Subject
subject:
observables: subject[T](): Subject[T]
subscribe:
observables: subscribe[T](self: Observable[T]; onNext: (T) -> void): Subscription
observables: subscribe[T](self: Observable[T]; onNext: (T) -> void; onCompleted: () -> void): Subscription
observables: subscribe[T](self: Observable[T]; onNext: (T) -> void; onCompleted: Option[proc (): void]; onError: Option[proc (i0: Error): void]): Subscription
observables: subscribe[T](self: Observable[T]; subscriber: Subscriber[T]): Subscription
observables: subscribe[T](self: Subject[T]; onNext: (T) -> void): Subscription
observables: subscribe[T](self: Subject[T]; subscriber: Subscriber[T]): Subscription
Subscriber:
observables: Subscriber
Subscription:
observables: Subscription
switch:
observables: switch[A](observables: Observable[Observable[A]]): Observable[A]
Tag:
tag: Tag
text:
dsl: text(attributesAndChildren: varargs[untyped]): untyped
TextChanged:
types: TextChanged
TextInfo:
types: TextInfo
textInput:
dsl: textInput(attributesAndChildren: varargs[untyped]): untyped
TextInputProps:
types: TextInputProps
TextProps:
types: TextProps
then:
observables: then[T](first: Observable[T]; second: Observable[T]): Observable[T]
Thickness:
thickness: Thickness
thickness:
thickness: thickness[T: Number](a: T): Thickness[T]
thickness: thickness[T: Number](a: T; b: T): Thickness[T]
thickness: thickness[T: Number](a: T; b: T; c: T; d: T): Thickness[T]
thickness: thickness(): Thickness[float]
toFloat:
utils: toFloat(x: int): float
toFloatOption:
utils: toFloatOption(x: int): Option[float]
toNimNode:
dsl: toNimNode(self: Attribute): NimNode
dsl: toNimNode(self: Binding): NimNode
dsl: toNimNode(self: seq[Attribute]): NimNode
dsl: toNimNode(self: seq[Binding]): NimNode
dsl: toNimNode(self: seq[ChildOrBehavior]): NimNode
toNimNodeList:
dsl: toNimNodeList(self: seq[NimNode]): NimNode
toObservable:
events: toObservable[T](emitter: var EventEmitter[T]): Observable[T]
observables: toObservable[T](subject: Subject[T]): Observable[T]
toOption:
utils: toOption[T](x: T): Option[T]
top:
dock: top(element: Element): Docking
Top:
Align.Top
top:
rect: top[T: Number](self: Rect[T]): T
thickness: top[T: Number](self: Thickness[T]): T
TopLeft:
Align.TopLeft
TopRight:
Align.TopRight
translate:
rect: translate[T: Number](self: Rect[T]; trans: Vec2[T]): Rect[T]
Vec2:
vec: Vec2
vec2:
vec: vec2[T: Number](x: T; y: T): Vec2[T]
Vertical:
StackDirection.Vertical
VerticalAlignment:
types: VerticalAlignment
Visibility:
types: Visibility
width:
rect: width[T: Number](self: Rect[T]): T
widthVec:
vec: widthVec[T: Number](self: Vec2[T]): Vec2
withHeight:
rect: withHeight[T: Number](self: Rect[T]; h: Number): Rect[T]
withPos:
rect: withPos[T: Number](self: Rect[T]; pos: Vec2[T]): Rect[T]
withSize:
rect: withSize[T: Number](self: Rect[T]; size: Vec2[T]): Rect[T]
withWidth:
rect: withWidth[T: Number](self: Rect[T]; w: Number): Rect[T]
withX:
rect: withX[T: Number](self: Rect[T]; x: T): Rect[T]
vec: withX[T: Number](self: Vec2[T]; x: Number): Vec2[T]
withY:
rect: withY[T: Number](self: Rect[T]; y: T): Rect[T]
vec: withY[T: Number](self: Vec2[T]; y: Number): Vec2[T]
x:
rect: x[T: Number](self: Rect[T]): Number
y:
rect: y[T: Number](self: Rect[T]): Number
zero:
vec: zero(): Vec2[float]