Skip to content

UniGUI Wiki

Core / Reactive

  • Signal Binding: Connect widget properties to reusable typed signals with bidirectional updates.

Widgets / Containers

  • Border: Render-only decorative outline widget without child widgets.
  • Box: Standard styled container combining background color, texture, shader, border, radius, and child layout.

Core / Widgets / Containers

  • DockSide: Specifies which outer boundary edge (LEFT, RIGHT, TOP, BOTTOM) a child widget docks against in a DockPanel.

Widgets / Data

  • VirtualTableView: High-performance virtualized grid/table view widget supporting column resizing, reordering, sorting, and cell editing.

Core / Widgets / Data

  • VirtualTableColumn: Column configuration for VirtualTableView defining header text, width, alignments, and overflow mode.

Widgets / Display

  • TextWidget: Abstract foundation widget for text rendering components supporting plain strings, RichText, fonts, colors, and gradients.
  • Label: Text caption widget associated with an interactive focus target control or form input.
  • Text: Lightweight text display widget for static or dynamic strings and RichText.
  • TextBlock: Multiline paragraph text display widget supporting line wrapping, line height, and text alignments.
  • RichTextView: Formatted rich text widget rendering styled runs, inline icons, color spans, and links.
  • Separator: Horizontal or vertical divider line widget for visually grouping interface sections.
  • Shape: Vector geometric shape widget supporting rectangles, rounded rectangles, circles, ovals, and strokes.
  • Path: Vector path widget drawing complex custom 2D shapes, bezier curves, and polylines.
  • TextureWidget: Base widget for rendering textures, UV regions, nine-slice borders, and image handles.
  • ImageView: Texture display widget presenting static images, icons, or animated sprites with scale modes.
  • CanvasWidget: Procedural drawing surface widget invoking custom CanvasDrawCallback painting routines.
  • Sparkline: Compact mini trendline and telemetry chart widget with fill gradient and hover data points.
  • Chart: Data visualization chart widget supporting bar and line visualizations, axes, and interactive hover tooltips.

Core / Widgets / Display

  • CanvasDrawCallback: Functional interface for drawing custom 2D graphics into a CanvasWidget.

Core / Widgets / Feedback

  • OverlayHostAware: Interface for widgets that dynamically calculate their position and layout within an overlay host bounds.
  • WindowManager: Manager controlling floating window z-order, focus stack, active states, and desktop window arrangements.

Widgets / Interaction

  • Button: Standard interactive push button with composable surface, icon, text, and rich state transitions.
  • HoldButton: Confirmation button that requires holding down for a specified duration before triggering.
  • ToolButton: Compact square toolbar button with icon, tooltip label, and toolbar styling.
  • IconButton: Standalone graphic icon button without text.
  • ToggleButton: Two-state button that retains checked state upon clicking.
  • ToggleToolButton: Two-state toolbar button combining ToolButton styling with ToggleButton mechanics.
  • ToggleSwitch: Sliding switch control with smooth animated thumb transition and optional label.
  • Checkbox: Square checkbox control supporting two-state and tri-state (indeterminate) modes.
  • RadioButton: Circular option selector for mutually exclusive choices inside a RadioGroup.
  • TextInput: Base single-line text input with selection, caret navigation, clipboard integration, and reactive focus chrome.
  • TextField: Standard user-facing single-line editable text field component.
  • NumberField: Input field strictly accepting numeric values with range bounds, step increments, and drag adjustment.
  • PasswordField: Secure masked text input hiding characters with bullets or custom mask glyphs.
  • SearchField: Search input box with search icon, clear button, and debounced text change query dispatching.
  • TimeSpanField: Duration input field formatting time values like 1h 30m or 45s into java.time.Duration.
  • TextArea: Multi-line scrollable text editor with line wrapping, cursor navigation, selection, and scrollbar support.
  • Slider: Range slider control allowing continuous or stepped value adjustment with draggable thumb.
  • ScrollBar: Draggable scrollbar control for scrolling content along horizontal or vertical axes.
  • DropDownBox: Collapsible container widget with an expandable header button and popup or inline content host.
  • ComboBox: Selection control pairing a current selection button with a dropdown options list.
  • ColorPicker: Interactive color selection control providing RGBA sliders, hex input, and popup palette.
  • DatePicker: Date selection control featuring an ISO date text field and an interactive calendar popup.
  • TreeListPicker: Generic dropdown picker binding domain objects to displayed text options.
  • SearchableGridPickerWidget: Abstract searchable dialog picker displaying items in a virtualized grid with preview, filter, and tooltip.
  • CodeEditor: Rich code editor widget supporting syntax highlighting, diagnostics, line numbers, and autocompletion.
  • XmlCodeEditor: Specialized XML and UI layout code editor with schema validation, formatting, and tag autocompletion.
  • AdminConsole: Interactive developer and administrative console widget with command execution and log output.

Core / Widgets / Interaction

  • RadioGroup: Controller managing mutual exclusivity and selection state across multiple RadioButton instances.
  • CodeLanguagePreset: Enumeration of built-in language presets for syntax highlighting and validation.
  • CodeLanguagePresets: Factory registry supplying tokenizers and validators for language presets.
  • CodeTokenizer: Functional interface converting source code text into colored syntax tokens.
  • CodeToken: Immutable range token associating character indices with a TokenStyle.
  • TokenStyle: Visual styling descriptor for syntax tokens including foreground color.
  • CodeValidator: Functional interface performing static analysis and reporting code diagnostics.
  • CodeDiagnostic: Diagnostic report entry representing an error, warning, or hint at a specific code range.
  • CompletionProvider: Interface producing autocompletion proposals based on editor cursor context.
  • CompletionItem: Individual autocompletion suggestion with rich label, insertion text, and replacement range.
  • CompletionContext: Context record supplied to completion providers containing editor text and cursor position.
  • CodeTokenizationContext: Context record passed to syntax tokenizers containing source text and language ID.
  • CodeValidationContext: Context record passed to code validators containing document text and language ID.
  • AdminCommandRegistry: Central registry for console commands with argument completion, alias resolution, and handlers.

Core / Widgets / Map

  • MapMarkerHandle: Handle for fluent configuration of marker positioning, screen sizing, zoom scaling, pivot, and visibility on MapCanvas.
  • MapProjection: Axis-aligned linear projection engine converting between external world coordinates and MapCanvas internal map coordinates.

Core / Widgets / Navigation

  • BreadcrumbItem: Navigation item descriptor representing a step or crumb in a breadcrumb trail.
  • Menu: Floating popup or dropdown menu widget hosting a vertical stack of menu items, command triggers, and separators.
  • MenuItem: Selectable menu entry supporting regular actions, checkboxes, commands, keyboard shortcuts, or cascading submenus.
  • TreeViewNode: Hierarchical node item in a TreeView holding text, custom icon, expansion state, and child nodes.

Core / Debugging

  • DebugOverlaySettings: Configuration for placement, scaling, and sampling of the built-in performance overlay.

Core / Text

  • DefaultFontRegistry: Standard font registry loading TrueType and Type1 fonts from streams, files, or platform system fonts without Minecraft dependencies.

Core / Widgets / DnD

  • DragController: Drag gesture controller attachable to any widget via composition to initiate drag-and-drop operations with ghost previews, threshold handling, and autoscrolling.
  • DragDropEvent: Routed event delivered to the target drop zone when the pointer is released with an accepted payload.
  • DragGhost: Renderer for visual ghost representation of dragged elements displayed in the overlay layer beneath the cursor.
  • DragLeaveEvent: Routed event notified when the drag pointer exits a drop zone or when the gesture is aborted.
  • DragOutcome: Represents the terminal outcome of a drag-and-drop gesture in UniGUI: successfully dropped, dropped without target, or cancelled.
  • DragOverEvent: Routed event probing candidate drop zones beneath the pointer during drag movement and animation ticks.
  • DragPayload: Immutable transfer payload conveying identifier, type, preview text, and optional user object between drag source and drop target.
  • DragRoutedEvent: Abstract base class for routed drag-and-drop events conveying the active DragSession across widget hierarchies.
  • DragSession: Live state and controller of an active drag gesture, managing pointer coordinates, active drop target, ghost positioning, insertion indicators, and autoscrolling.
  • DropController: Drop target controller attachable to any widget via composition to filter payloads and handle drag enter, over, leave, and drop events.
  • ReorderController: Drag reordering controller attachable to container widgets (e.g. VBox, HBox, PanelWidget) supporting insertion lines and automated DOM reordering.

Widgets / Containers

  • DockPanel: Edge-docking layout container arranging child widgets along outer boundaries (left, right, top, bottom).

Core / Widgets / Docking

  • DockArea: Target destination zone for docking operations: edge splits (LEFT, RIGHT, TOP, BOTTOM), tab groupings (CENTER, TAB), or detached floating windows (FLOAT).
  • DockColor: Semantic color roles used throughout DockTheme to style tabs, split bars, floating window chrome, and drop preview zones.
  • DockDragController: Handles drag-and-drop interactions for docking tabs within DockingRoot, computing drop previews, live tear-offs, and docking intents.
  • DockDropIntent: Resolved docking drop intention capturing the target area, preview bounds, and source/target pane identifiers.
  • DockingManager: Non-visual layout controller managing the hierarchical docking tree, pane additions, splits, tab reordering, and snapshot serialization/restoration.
  • DockLayoutSnapshot: Immutable snapshot representing the recursive docking layout tree and active pane selection for serialization and layout persistence.
  • DockLayoutSnapshotCodec: Compact string serializer and deserializer (DLS1 format) for persisting docking layouts across application restarts.
  • DockNode: Hierarchical docking tree node: either a LEAF containing tabbed DockPanes or a SPLIT node dividing two children horizontally or vertically.
  • DockPane: Descriptor representing an individual dockable pane hosting arbitrary widget content, tab title, icon, dirty state, and close guards.
  • DockPaneKind: Classification of a docking pane: DOCUMENT (primary central workspace content) or TOOL (dockable side utility tool window).
  • DockPolicy: Docking integration policy for windows: FULL (bidirectional docking and hosting), GUEST_ONLY (can dock into hosts but accepts no drops), or DISABLED.
  • DockSplitOrientation: Split layout orientation between adjacent dock nodes: HORIZONTAL (side-by-side) or VERTICAL (stacked top/bottom).
  • DockTheme: Styling theme for the docking system configuring palette colors (DockColor), tab geometry, split handles, shadows, and window resize grips.
  • ResizeGripStyle: Styling and rendering interface for bottom-right window resize grips, including preset TRIANGLE and LINES patterns.

Widgets / Docking

  • DockingRoot: Root visual widget for the IDE docking system hosting dock tree nodes, tab strips, split handles, drop previews, and tear-off floating window integrations.

Core / Render

  • DrawList: Retained frame command buffer recording backend-neutral draw primitives, managing command recycling pools, and providing multi-channel layering.
  • DrawScope: Safe draw-list facade for widget renderers that translates high-level drawing calls into backend-neutral commands, manages transform pivot adjustments, and provides zero-allocation immediate primitives.

Widgets / Effects

  • PostProcessingLayer: Widget wrapper applying post-processing shader effects and rendering scales to its child content.

Core / Events

  • EventEmitter: Contract for objects that can subscribe to and dispatch typed events.
  • EventScope: Scoped lifecycle manager for event subscriptions.
  • FastEventBus: Ultra-fast, lock-free, zero-allocation event bus without reflection or hash-maps.

Widgets / Feedback

  • ContextMenu: Floating context menu container managing hierarchical items, action callbacks, and auto-dismiss behavior.
  • LoadingIndicator: Highly configurable loading animation widget supporting ring, bar, pulse, and dots indicator modes.
  • NotificationView: Rich notification card widget rendering severity icons, titles, messages, action buttons, and auto-dismiss progress.
  • OverlayLayer: Full-screen overlay root managing modal backdrops, dialogs, popups, and layer-based hit testing.
  • Popup: Anchored floating popup widget that positions itself relative to target widgets or screen coordinates.
  • ProgressBar: Linear progress bar widget displaying determinate or indeterminate completion state.
  • Spinner: Rotating progress spinner animation widget for indicating ongoing background operations.
  • Toast: Non-intrusive brief notification banner supporting status icons, formatted text, and timed auto-dismiss.
  • Tooltip: Hover-activated floating information bubble displaying helper text, rich layout, and delay timers.
  • WindowWidget: Desktop-style floating window widget supporting title bar, dragging, resizing, collapse, modal dialogs, and docking integrations.

Widgets / Containers

  • FlexBox: CSS-like flex container configured directly via LayoutStyle flexbox properties.

Core / Widgets / Graph

  • HeaderModule: Standard modular node title bar with an icon, title, and collapse control.
  • NodeGraphAlign: Alignment modes for arranging selected node items against their shared bounds.
  • NodeGraphClipboard: Immutable buffer of selected registered node types and their internal wires for copy and paste.
  • NodeGraphConnection: Represents a directional or bidirectional connection between two ports in a NodeGraph.
  • NodeGraphConnectionPolicy: Strategy interface defining rules and compatibility validation for forming connections between ports.
  • NodeGraphConnectionSnapshot: Serializable snapshot describing a connection between two node ports.
  • NodeGraphConnectionValidation: Validation result for proposed connections between node ports.
  • NodeGraphHistory: Undo and redo history for graph edits grouped into named transactions.
  • NodeGraphItem: Node item container placed in a NodeGraph canvas hosting a content widget and pin ports.
  • NodeGraphItemSnapshot: Serializable snapshot capturing node item position, dimensions, capabilities, and ports.
  • NodeGraphPort: Pin/port descriptor on a NodeGraphItem connecting lines to other nodes.
  • NodeGraphPortKind: Connection direction for a node-graph port: INPUT, OUTPUT, or BIDIRECTIONAL.
  • NodeGraphPortRef: Identifies a specific port belonging to an item in a node graph.
  • NodeGraphPortSide: Visual placement edge for a node-graph port: LEFT, RIGHT, TOP, or BOTTOM.
  • NodeGraphPortSnapshot: Serializable snapshot representing the state, geometry offset, and configuration of a node port.
  • NodeGraphRegion: A movable, resizable comment frame that groups nodes and regions on a graph canvas.
  • NodeGraphRegionSnapshot: Serializable region state containing its label, comment, color, bounds, and interaction flags.
  • NodeGraphSelectionMode: Selection interaction modes for items and connections in a node graph: NONE, SINGLE, or MULTIPLE.
  • NodeGraphSnapshot: Comprehensive serializable snapshot representing the entire node graph state, viewport, items, and connections.
  • NodeGraphViewport: Viewport transform state for node graph pan position and zoom factor.
  • NodeGraphWidgetResolver: Factory callback to restore item content widgets when deserializing a node graph snapshot.
  • NodeLayoutContext: Layout services supplied to a node module for measuring widgets, placing them, and anchoring ports.
  • NodeModule: Composable vertical layout module that owns widgets and ports inside a modular node.
  • NodePaintContext: Drawing services and node state supplied to a custom module background painter.
  • NodePaletteModel: Widget-free state model for node category browsing, ranked search, selection, and scrolling.
  • NodeStyle: Per-node colors and geometry settings for modular graph nodes.
  • NodeType: Reusable node-kind definition with identity, palette metadata, port sketches, and a node factory.
  • NodeTypeRegistry: Catalog of node types used by palettes, search, and restoring modular graph items.
  • PortRowModule: Standard modular node row for input/output ports, labels, flow pins, and inline input editors.
  • PortShape: Marker geometries used to distinguish port types on the graph canvas.
  • PortType: Immutable definition of a graph port's id, display name, color, marker shape, and flow behavior.
  • PortTypeRegistry: Port type catalog with colors, shapes, and directed data-conversion compatibility rules.
  • RerouteModule: Compact pass-through node module for bending and branching graph wires.
  • SeparatorModule: Small horizontal divider module for separating groups of rows inside a node.
  • ValueEditor: Typed default-value editor contract for a node input, including UI, value access, and serialization.
  • ValueEditors: Factory of ready-made value editors for common node input types.
  • WidgetModule: Node module that embeds one arbitrary widget as a full-width row.

Core / Widgets / Graph / Runtime

  • GraphExecutionException: Runtime exception raised when graph execution cannot complete safely.
  • GraphExecutor: Runs a widget-free graph model by following execution-flow wires and evaluating data inputs on demand.
  • GraphIssue: Validation diagnostic with severity, affected node and optional port, and a user-facing message.
  • GraphModel: Immutable, widget-free snapshot of nodes, ports, input values, and wires for validation or execution.
  • GraphResult: Result of a graph execution, including executed step count and the latest outputs of exec nodes.
  • GraphValidator: Static checks for missing required inputs, invalid pure-data cycles, and unreachable execution nodes.
  • NodeBehavior: Functional contract describing how a node computes values or executes a flow step.
  • NodeContext: UI-free execution context for reading node inputs, publishing outputs, and controlling flow.

Widgets / Graph

  • GraphView: Static or interactive diagram graph widget displaying connected nodes, edges, labels, and tooltips with custom renderers.
  • NodeBuilder: Fluent builder for assembling modular node items from headers, ports, editors, widgets, and custom modules.
  • NodeGraph: Interactive 2D node graph canvas supporting movable nodes, pin connections, pan, zoom, grid snapping, and selection.
  • NodePalette: Searchable overlay for browsing registered node types and creating nodes from a graph editor.
  • RegionEditor: Floating overlay editor for a graph region title or multiline comment.

Widgets / Containers

  • GridBox: Multi-column grid container placing children into uniform cells or custom track templates.
  • HBox: Horizontal linear container placing children left-to-right with uniform spacing.

Core / Layout

  • LayoutStyle: Rules a parent uses to measure and place a widget: size, spacing, flex, grid, position, and overflow.

Widgets / Containers

  • LinearBox: One-dimensional flex container arranging children sequentially along a main axis without wrapping.

Widgets / Map

  • MapCanvas: Interactive 2D map widget extending WorldCanvas with map sizing, texture and grid layers, coordinate projection, and marker handles.
  • MapMarker: Neutral base marker shell for MapCanvas supporting custom content, text labels, selection, and highlighting.

Widgets / Navigation

  • Accordion: Vertical accordion container managing a stack of collapsible ExpandablePanel sections with optional single-panel open constraint.
  • Breadcrumb: Interactive navigation trail widget displaying hierarchical breadcrumb items with customizable separators and selection handling.
  • Carousel: Paged carousel container supporting horizontal or vertical card paging, animated slide transitions, navigation buttons, and indicator dots.
  • ExpandablePanel: Collapsible panel container with header bar, toggle chevron, and smooth expansion/collapse height animation.
  • MenuBar: Top-level horizontal menu bar hosting dropdown menus with command binding, keyboard accelerators, and popup coordination.
  • NavigationView: Sidebar navigation with collapsible categories of selectable items and a full-width accent selection.
  • PageView: Retained page container that keeps exactly one page visible at a time.
  • TabControl: Tabbed navigation container with a scrollable header bar and switched content area.
  • ToolBar: Compact command toolbar with grouped buttons, separators, and command manager integration.
  • TreeList: Specialized TreeView for hierarchical path navigation and directory listing.
  • TreeView: Hierarchical tree container rendering collapsable nodes with custom icons, inline editing, and selection.

Core / Textures

  • NineSlice: Nine-patch scalable texture definition dividing an image into 4 unscaled corners, 4 single-axis edges, and 1 center area.

Core / Render

  • Paint: Styling descriptor for draw commands that configures color, stroke width, fill/stroke modes, Porter-Duff blending, and dashed lines.

Widgets / Containers

  • PanelRowWidget: Two-sided row container organizing widgets into left-aligned and right-aligned groups.
  • PanelWidget: Base container for multi-child widgets managing hierarchy, deferred mutations, and rendering order.

Examples / Demos

  • Retro Terminal: A complete CRT-style command terminal built from UniGUI widgets, a custom AdminConsole, and a chained post-processing effect.

Core / Render

  • RibbonMesh: Procedural textured ribbon mesh generator along polylines for rendering roads, cables, traces, pipelines, and graph edges.
  • RibbonOptions: Immutable value object configuring polyline ribbon mesh generation, corner miters, joint dots, and UV texture transforms.

Core / Text

  • RichText: Immutable multi-style rich text model supporting styled runs, fonts, brushes, gradients, and inline content spans.

Widgets / Containers

  • ScrollView: Scrollable viewport container hosting a single content widget with horizontal and vertical scroll support.
  • SettingRow: Specialized settings row holding a label on the left and an interactive control on the right.

Core / Shaders

  • ShaderDrawOptions: Backend-facing configuration for shader draw commands governing blending, built-in uniforms, and vertex offsets.
  • ShaderHandle: Identifier and container for UI shaders, referencing external resource paths or embedding GLSL source code.
  • ShaderUniforms: Mutable collection of named shader parameters (floats, ints, vectors, colors) passed to GPU programs.

Widgets / Containers

  • SplitPanel: Two-pane container separated by an interactive draggable splitter for dynamic resizing.
  • StackPanel: Overlay container stacking all children within a shared rectangular slot.

Core / Styling

  • Style: Read-only typed style values with widget-state overrides and explicit fallback behavior.
  • MutableStyle: Fluent mutable style builder with typed properties and state-specific overrides.
  • StyleDefinition: Immutable named style rule with selectors, renderer configuration, properties, and event animations.
  • StylePack: Editable theme containing reusable style rules, widget bindings, tokens, and animation presets.
  • ThemeTokens: Immutable design-token snapshot for palette, shapes, typography, and spacing.

Widgets / Containers

  • SurfaceWidget: Container with a composable Surface: background colors, multi-layer textures, shaders, borders, and corner radius.

Core / Text

  • TextEngine: Core text layout, line-wrapping, dimension measurement, and inline-content rendering engine.
  • TextOverflowMode: Enumeration configuring visual clipping, truncation, shrinking, or marquee scrolling when text exceeds available bounds.

Core / Textures

  • TextureGroup: Ordered composite collection of TextureLayer instances rendered sequentially within shared base bounds.
  • TextureHandle: Backend-neutral texture resource interface providing dimensions, sampling options, and native object access.
  • TextureRegion: Immutable UV sub-rectangle of a parent texture, used to draw sprites from texture atlases.
  • AnimatedTexture: Mutable sprite-sheet texture whose frame advances with game ticks, selected from a uniform cell grid.
  • TextureOptions: Immutable texture sampling configuration defining min/mag filtering, UV wrapping, mipmaps, and premultiplied alpha.

Core / Debugging

  • UiDebugSnapshot: Read-only per-frame timings, render counts, and texture-cache metrics.

Core / PostEffects

  • UiLayerBounds: Dimensions, position, and resolution scale for an offscreen post-processing layer target.
  • UiPostEffectBlendMode: Blending behavior for a post-processing shader pass.
  • UiPostEffectChain: Immutable pipeline reference for post-processing UI layers.
  • UiPostEffectDefinition: Immutable specification of a post-processing effect with ordered shader passes.
  • UiPostEffectPass: Single shader pass configuration within a post-processing pipeline.
  • UiPostEffectRegistry: Registry repository storing named post-effect definitions.
  • UiPostEffectRenderer: Rendering dispatcher with automatic fallback for post-processing UI layers.
  • UiPostEffectUniforms: Container for post-processing shader uniforms with static values and dynamic suppliers.
  • UiPostEffects: Built-in catalog of standard post-processing effects and embedded shader sources.

Core / Screens

  • UiRenderPolicy: Frame-rate and invalidation policy controlling how frequently retained UI trees are rebuilt and rendered.
  • UniHudRender: Minecraft-independent entry point for registering and managing in-game HUD layers.
  • UniRenderLayer: Minecraft-independent configuration for an overlay or HUD UI layer.
  • UniRenderLayerRegistration: Backend-neutral handle for a registered render layer.
  • UniRenderTarget: Host rendering hook target for a neutral UniGUI render layer.
  • UniScreen: Minecraft-independent description of a standalone screen/GUI window in UniGUI.
  • UniScreenOverlayRender: Minecraft-independent entry point for overlays rendered on top of active GUI screens.

Widgets / Containers

  • VBox: Vertical linear container stacking children top-to-bottom with uniform spacing.
  • View: Card-like visual container embedding a header Label and a vertical VBox content area.

Widgets / Data

  • VirtualListView: Virtualized presentation of large item sets as a responsive grid or list.

Core / Widgets

  • WidgetBase: Shared widget foundation for layout, StylePack lookup, state, rendering, events, and animation.

Widgets

  • Widget: Base contract for any UI tree element: lifecycle, layout, rendering, input, and styling.

Core / Widgets / World

  • AnchorLayer: Layer managing screen-space UI widgets pinned to 3D/2D world coordinates inside WorldCanvas.
  • AnchorWidget: Spatial anchor pinning a screen-space UI widget to 3D/2D world coordinates with zoom scaling, pivot, and viewport culling.
  • RibbonLayer: World canvas layer rendering textured or solid ribbon lines, paths, and waypoint routes in world coordinates.
  • WorldLayer: Functional contract for background or decorative rendering layers drawn inside WorldCanvas.

Widgets / World

  • WorldCanvas: Infinite 2D/3D world canvas supporting camera pan and zoom, coordinate transformations, background world layers, and pinned screen-space anchor widgets.

Widgets / Containers

  • WrapPanel: Flow container wrapping children to a new row or column when space is exceeded.