Im

elements.Im (Class)

Immediate mode UI system for Ceramic inspired by Dear ImGui.

Im provides a stateless, code-driven UI API that creates and manages UI elements on-the-fly. Unlike traditional retained-mode UI systems where you create and maintain UI objects, Im allows you to declare UI in a procedural way:

Im.begin();

if (Im.button("Click me!")) {
    trace("Button clicked!");
}

Im.textField("Name", namePointer);
Im.slider("Volume", volumePointer, 0, 100);

Im.end();

Key features:

  • Immediate mode paradigm - UI is rebuilt every frame
  • Automatic layout with rows and columns
  • Built-in controls: buttons, text fields, sliders, checkboxes, etc.
  • Window management with docking and tabs
  • Theme support with runtime customization
  • Cross-platform compatibility through Ceramic

The system uses pointers (functions that get/set values) to bind controls to data, allowing the UI to automatically reflect and modify application state.

Static Members

dialogs
editDir(?title: String, value: StringPointer, ?placeholder: String): Bool

Creates a directory picker field.

Shows a text field with a browse button that opens a directory selection dialog. Only available when dialogs plugin is enabled.

Name Type Default Description
title String (optional) Optional label for the field
value StringPointer Pointer to the directory path string
placeholder String (optional) Text shown when field is empty
Returns Description
Bool True if the directory changed this frame

dialogs
editFile(?title: String, value: StringPointer, ?placeholder: String, ?filters: Null<ceramic.DialogsFileFilter>): Bool

Creates a file picker field.

Shows a text field with a browse button that opens a file selection dialog. Only available when dialogs plugin is enabled.

Name Type Default Description
title String (optional) Optional label for the field
value StringPointer Pointer to the file path string
placeholder String (optional) Text shown when field is empty
filters Null<ceramic.DialogsFileFilter> (optional) File type filters for the dialog
Returns Description
Bool True if the file path changed this frame

elements
YES: String

elements
NO: String

elements
OK: String

elements
defaultTheme: Theme

elements
currentTheme: Theme

elements
current: WindowData

elements
initIfNeeded(): Void

Initializes the Im system if not already initialized.

This method ensures that:

  • The global context view exists
  • A default theme is created
  • The Im system is ready for use

This is automatically called by most Im methods, but can be called manually if early initialization is needed.


elements
extractId(key: String): String

Extracts the ID portion from a window key.

Window keys can contain both an ID and a title. This method extracts just the ID portion, which is used for window lookup and persistence.

Currently returns the key as-is, but may parse complex keys in the future (e.g., "id###title" format).

Name Type Description
key String The window key to extract ID from
Returns Description
String The extracted ID

elements
extractTitle(key: String): String

Extracts the title portion from a window key.

Window keys can contain both an ID and a title. This method extracts just the title portion, which is displayed in the window header.

Currently returns the key as-is, but may parse complex keys in the future (e.g., "id###title" format).

Name Type Description
key String The window key to extract title from
Returns Description
String The extracted title

elements
depth(depth: Float): Void

Sets the rendering depth for the entire Im UI layer.

This affects the z-order of all Im windows and controls relative to other visuals in the scene. Higher values render on top.

Must be called before any windows are created to take effect.

Name Type Description
depth Float The depth value to set

elements
get(key: String): Window

Gets a window by its key.

Returns the Window instance if it exists, or null if no window with the given key has been created yet.

This is useful for checking if a window is open or accessing its properties from outside the begin/end block.

Name Type Description
key String The window key
Returns Description
Window The Window instance or null

elements
hits(x: Float, y: Float): Bool

Return true if any window is hitten given point.

Name Type Description
x Float X position (logical screen metric)
y Float Y position (logical screen metric)
Returns Description
Bool Bool

elements
usesScanCode(scanCode: ceramic.ScanCode): Bool

Returns true if there is a currently focused field that uses the given scan code

Name Type Description
scanCode ceramic.ScanCode The scan code to test
Returns Description
Bool true if this scan code is used

elements
usesKeyCode(keyCode: ceramic.KeyCode): Bool

Returns true if there is a currently focused field that uses the given key code

Name Type Description
keyCode ceramic.KeyCode The key code to test
Returns Description
Bool true if this key code is used

elements
usesCmdOrCtrl(): Bool

Checks if any Command (Mac) or Control (Windows/Linux) key is being used.

This is useful for detecting platform-specific modifier keys for keyboard shortcuts. Returns true if any focused field is using these keys.

Returns Description
Bool True if Cmd/Ctrl keys are in use

elements
usesShift(): Bool

Checks if any Shift key is being used.

Returns true if any focused field is using either the left or right Shift key. Useful for detecting shift-modified shortcuts.

Returns Description
Bool True if Shift keys are in use

elements
begin(key: String, title: String, ?width: Float = WindowData.DEFAULT_WIDTH, ?height: Float = WindowData.DEFAULT_HEIGHT, ?pos: Null<haxe.PosInfos>): Window

Begins an Im window with separate key and title.

This starts the declaration of a new window or continues an existing one. All Im controls called after begin() will be added to this window until end() is called.

The key is used to identify the window across frames, while the title is displayed in the window header.

Name Type Default Description
key String Unique identifier for the window
title String Display title for the window header
width Float WindowData.DEFAULT_WIDTH Initial window width (default: 200)
height Float WindowData.DEFAULT_HEIGHT Initial window height (default: 400)
pos Null<haxe.PosInfos> (optional) Source position (auto-provided)
Returns Description
Window The Window instance

elements
beginTabs(selected: StringPointer): Bool

Begins a tab bar container.

Creates a horizontal tab bar where each tab() call adds a new tab. The selected tab is controlled by the StringPointer parameter.

Must be followed by one or more tab() calls and ended with endTabs().

Name Type Description
selected StringPointer Pointer to the currently selected tab ID
Returns Description
Bool True if the selected tab changed this frame

elements
endTabs(): Void

Ends a tab bar container.

Must be called after beginTabs() and all tab() declarations. Will assert if called without a matching beginTabs() or if no tabs were declared.


elements
tab(key: String): Bool

Declares a tab in the current tab bar.

Uses the key as both the tab ID and display title. Must be called between beginTabs() and endTabs().

Name Type Description
key String Tab identifier and display title
Returns Description
Bool True if this tab is currently selected

elements
beginRow(): Void

Begins a row layout for subsequent controls.

Controls added after beginRow() will be arranged horizontally in a single row until endRow() is called. The width of each control is determined by its flex value.

Nested rows are not supported - calling beginRow() while already in a row will trigger an assertion.

Im.beginRow();
Im.button("Left");    // Default flex=1
Im.flex(2);
Im.button("Middle");  // Takes up twice the space
Im.button("Right");   // Default flex=1
Im.endRow();
See: endRow, flex

elements
endRow(): Void

Ends the current row layout.

Must be called after beginRow() to complete the row. Resets the flex value to default (1) for subsequent controls.

See: beginRow

elements
beginChangeCheck(): Void

Begins tracking changes to control values.

After calling this method, any changes to control values (text fields, sliders, checkboxes, etc.) will be tracked. Call endChangeCheck() to check if any values changed.

Change checks can be nested - each begin/end pair tracks changes independently.

Im.beginChangeCheck();
Im.textField("Name", namePointer);
Im.slider("Volume", volumePointer, 0, 100);
if (Im.endChangeCheck()) {
    trace("Settings changed!");
    saveSettings();
}
See: endChangeCheck

elements
endChangeCheck(): Bool

Ends change tracking and returns if any changes occurred.

Must be called after beginChangeCheck(). Returns true if any control values changed between the begin/end calls.

Returns Description
Bool True if any tracked values changed

elements
labelPosition(?labelPosition: LabelPosition = DEFAULT_LABEL_POSITION): Void

Sets the label position for subsequent controls.

Controls where labels appear relative to their input fields:

  • LEFT: Label to the left of the field
  • RIGHT: Label to the right of the field
  • TOP: Label above the field
  • BOTTOM: Label below the field
Name Type Default Description
labelPosition LabelPosition DEFAULT_LABEL_POSITION The position to use (default: RIGHT)

elements
labelWidth(?labelWidth: Float = DEFAULT_LABEL_WIDTH): Void

Sets the width of labels for subsequent controls.

Can be specified as:

  • Absolute pixels: positive values
  • Percentage: use ViewSize.percent()
  • Auto-size: use ViewSize.auto()
Name Type Default Description
labelWidth Float DEFAULT_LABEL_WIDTH The width to use (default: 35%)

elements
textAlign(?textAlign: Anonymous = DEFAULT_TEXT_ALIGN): Void

Sets the text alignment for subsequent text controls.

Affects text(), labels, and other text-based controls.

Name Type Default Description
textAlign Anonymous DEFAULT_TEXT_ALIGN The alignment to use (LEFT, CENTER, RIGHT)

elements
disabled(disabled: Bool): Void

Sets whether subsequent controls should be disabled.

Disabled controls are rendered with reduced opacity and don't respond to user interaction.

Name Type Description
disabled Bool True to disable controls, false to enable

elements
flex(flex: Int): Void

Sets the flex value for the next control in a row.

When in a row layout (between beginRow/endRow), flex determines the relative width of controls. A control with flex=2 will be twice as wide as a control with flex=1.

Only applies to the next control added.

Name Type Description
flex Int The flex value (default: 1)

elements
textColor(): Void

Resets the text color to the default theme color.

Removes any custom text color override, allowing subsequent text to use the theme's default text color.


elements
background(): Void

Resets the background color to the default theme color.

Removes any custom background color override, allowing subsequent controls to use the theme's default background color.


elements
tint(): Void

Resets the tint color to default (no tint).

Removes any color tinting applied to subsequent controls, returning them to their original theme colors.


elements
bold(bold: Bool): Void

Sets whether subsequent text should be rendered in bold.

Affects text(), labels, and other text-based controls. The actual bold rendering depends on the font's bold variant being available.

Name Type Description
bold Bool True for bold text, false for normal

elements
assets(?assets: ceramic.Assets): Void

Sets the asset manager to use for loading images and other resources.

When set, Im will use this asset manager for loading images referenced by asset ID. If not set, Im will use the default asset manager.

Name Type Default Description
assets ceramic.Assets (optional) The asset manager to use, or null to use default

elements
theme(theme: Theme): Void

Sets the theme to use for subsequent controls.

The theme controls colors, fonts, and other visual properties of Im controls. Pass null to revert to the default theme.

Changes to the theme affect all controls created after this call within the current frame.

Name Type Description
theme Theme The theme to use, or null for default

elements
position(x: Float, y: Float, ?anchorX: Float = 0, ?anchorY: Float = 0, ?roundXY: Bool = true): Void

Sets the position of the current window.

Positions the window at the specified coordinates with optional anchor points. The window becomes non-movable when positioned manually.

Must be called between begin() and end().

Name Type Default Description
x Float X position in screen coordinates
y Float Y position in screen coordinates
anchorX Float 0 Horizontal anchor (0=left, 0.5=center, 1=right)
anchorY Float 0 Vertical anchor (0=top, 0.5=center, 1=bottom)
roundXY Bool true Whether to round coordinates to whole pixels

elements
scrollbar(visibility: ScrollbarVisibility): Void

Sets the scrollbar visibility for the current window.

Controls when scrollbars appear in the window:

  • AUTO: Show when content overflows
  • ALWAYS: Always visible
  • NEVER: Never show scrollbars

Must be called between begin() and end().

Name Type Description
visibility ScrollbarVisibility The scrollbar visibility mode

elements
focus(): Void

Requests focus for the current window.

The window will be brought to front and receive input focus. Must be called between begin() and end().


elements
expanded(): Void

Marks the current window as expanded.

Expanded windows start maximized and cannot be collapsed. Must be called between begin() and end().


Sets whether the current window should display a header.

The header contains the window title and optional close button. Windows without headers cannot be dragged by the title bar.

Name Type Description
header Bool True to show header, false to hide

elements
overlay(): Bool

Makes the window display with a modal overlay.

An overlay darkens the background and blocks interaction with other windows. Returns true if the overlay (outside the window) was clicked this frame.

Returns Description
Bool True if the overlay background was clicked

elements
titleAlign(titleAlign: Anonymous): Void

Sets the alignment of the window title in the header.

Only applies to windows with headers enabled.

Name Type Description
titleAlign Anonymous The text alignment (LEFT, CENTER, RIGHT)

elements
closable(?isOpen: Null<BoolPointer>): Bool

Makes the window closable with a close button.

Adds a close button to the window header. If an isOpen pointer is provided, it will be set to false when the window is closed.

Name Type Default Description
isOpen Null<BoolPointer> (optional) Optional pointer to control window open state
Returns Description
Bool True if the window was closed this frame

elements
list(?height: Float = -1, items: ArrayPointer, ?selected: Null<IntPointer>, ?sortable: Bool = false, ?lockable: Bool = false, ?trashable: Bool = false, ?duplicable: Bool = false): ListStatus

Creates a list view with standard-sized items.

Displays a scrollable list of items with optional features:

  • Selection tracking through the selected pointer
  • Drag-and-drop sorting
  • Item locking/unlocking
  • Item deletion
  • Item duplication
Name Type Default Description
height Float -1 List height in pixels (-1 for auto)
items ArrayPointer Pointer to the array of items to display
selected Null<IntPointer> (optional) Pointer to the selected item index
sortable Bool false Enable drag-and-drop reordering
lockable Bool false Enable lock/unlock toggle per item
trashable Bool false Enable delete button per item
duplicable Bool false Enable duplicate button per item
Returns Description
ListStatus Status flags indicating what changed

elements
select(?title: String, value: StringPointer, list: Array<String>, ?nullValueText: String): Bool
Name Type Default
title String (optional)
value StringPointer
list Array<String>
nullValueText String (optional)
Returns
Bool

elements
check(?title: String, value: BoolPointer, ?alignLabel: Bool = false): CheckStatus

Creates a checkbox control.

Displays a checkbox that toggles a boolean value. The checkbox shows a checkmark when true and is empty when false.

Name Type Default Description
title String (optional) Optional label for the checkbox
value BoolPointer Pointer to the boolean value
alignLabel Bool false Align label using standard label width
Returns Description
CheckStatus Status flags indicating checked state and if changed

elements
editColor(?title: String, value: IntPointer): Bool

Creates a color picker field.

Shows a color preview that opens a color picker dialog when clicked. The color value is stored as an integer in ARGB format.

Name Type Default Description
title String (optional) Optional label for the field
value IntPointer Pointer to the color value
Returns Description
Bool True if the color changed this frame

elements
editText(?title: String, value: StringPointer, ?multiline: Bool = false, ?placeholder: String, ?autocompleteCandidates: Array<String>, ?focused: Bool = false, ?autocompleteOnFocus: Bool = true): EditTextStatus

Creates a text input field.

Supports single-line or multi-line text editing with optional placeholder text and autocomplete suggestions.

Name Type Default Description
title String (optional) Optional label for the field
value StringPointer Pointer to the string value
multiline Bool false Enable multi-line editing
placeholder String (optional) Text shown when field is empty
autocompleteCandidates Array<String> (optional) List of autocomplete suggestions
focused Bool false Request focus on this field
autocompleteOnFocus Bool true Show autocomplete when focused
Returns Description
EditTextStatus Status flags indicating edit state

elements
editInt(?title: String, value: IntPointer, ?placeholder: String, ?minValue: Int, ?maxValue: Int): Bool

Creates an integer input field.

Allows numeric input with optional min/max constraints. Non-numeric input is automatically filtered out.

Name Type Default Description
title String (optional) Optional label for the field
value IntPointer Pointer to the integer value
placeholder String (optional) Text shown when field is empty
minValue Int (optional) Minimum allowed value
maxValue Int (optional) Maximum allowed value
Returns Description
Bool True if the value changed this frame

elements
editFloat(?title: String, value: FloatPointer, ?placeholder: String, ?minValue: Float, ?maxValue: Float, ?round: Int): Bool

Creates a float input field.

Allows decimal numeric input with optional min/max constraints and rounding precision.

Name Type Default Description
title String (optional) Optional label for the field
value FloatPointer Pointer to the float value
placeholder String (optional) Text shown when field is empty
minValue Float (optional) Minimum allowed value
maxValue Float (optional) Maximum allowed value
round Int (optional) Rounding precision (e.g., 100 = 2 decimals)
Returns Description
Bool True if the value changed this frame

elements
slideInt(?title: String, value: IntPointer, minValue: Int, maxValue: Int): Bool

Creates an integer slider control.

Provides a draggable slider for selecting integer values within a specified range. More intuitive than text input for ranges.

Name Type Default Description
title String (optional) Optional label for the slider
value IntPointer Pointer to the integer value
minValue Int Minimum slider value
maxValue Int Maximum slider value
Returns Description
Bool True if the value changed this frame

elements
slideFloat(?title: String, value: FloatPointer, minValue: Float, maxValue: Float, ?round: Int = 1000): Bool

Creates a float slider control.

Provides a draggable slider for selecting float values within a specified range with configurable precision.

Name Type Default Description
title String (optional) Optional label for the slider
value FloatPointer Pointer to the float value
minValue Float Minimum slider value
maxValue Float Maximum slider value
round Int 1000 Rounding precision (e.g., 100 = 2 decimals)
Returns Description
Bool True if the value changed this frame

elements
visual(?title: String, visual: ceramic.Visual, ?scaleToFit: Bool = false, ?alignLabel: Bool = false, ?useFilter: Bool = true): Void

Displays a custom visual element.

Embeds any Ceramic Visual object within the Im layout. The visual can be scaled to fit within constraints or displayed at its natural size.

Name Type Default Description
title String (optional) Optional label for the visual
visual ceramic.Visual The Visual object to display
scaleToFit Bool false Scale the visual to fit available space
alignLabel Bool false Align label using standard label width
useFilter Bool true Apply texture filtering when scaling

elements
image(?title: String, tile: ceramic.TextureTile, ?scaleToFit: Bool = false, ?alignLabel: Bool = false, ?textureFilter: Anonymous): ceramic.Quad

Displays an image from a texture tile.

Shows a TextureTile (sub-region of a texture) within the Im layout.

Name Type Default Description
title String (optional) Optional label for the image
tile ceramic.TextureTile The texture tile to display
scaleToFit Bool false Scale image to fit available space
alignLabel Bool false Align label using standard label width
textureFilter Anonymous (optional) Texture filtering mode (LINEAR/NEAREST)
Returns Description
ceramic.Quad The Quad visual displaying the image

elements
margin(): Void

Adds a standard margin space.

Inserts negative spacing to reduce the gap between form items. Useful for tightening layouts.


elements
space(?height: Float = DEFAULT_SPACE_HEIGHT): Void

Adds vertical spacing.

Inserts empty vertical space between controls. Use negative values to reduce spacing. Default uses theme spacing.

Name Type Default Description
height Float DEFAULT_SPACE_HEIGHT Space height in pixels (default: theme spacing)

elements
separator(?height: Float = DEFAULT_SEPARATOR_HEIGHT): Void

Adds a horizontal line separator.

Draws a horizontal line to visually separate sections. The line color is determined by the current theme.

Name Type Default Description
height Float DEFAULT_SEPARATOR_HEIGHT Total height including padding (default: 7)

elements
button(title: String, enabled: Bool): Bool

Creates a button with explicit enabled state.

Name Type Description
title String The button label
enabled Bool Whether the button is clickable
Returns Description
Bool True if the button was clicked this frame

elements
pointSize(?pointSize: Int = 12): Void

Sets the font point size for subsequent text.

Affects text(), labels, and all text-based controls until changed again or the frame ends.

Name Type Default Description
pointSize Int 12 Font size in points (default: 12)

elements
preRenderedSize(?preRenderedSize: Int = -1): Void

Sets the pre-rendered font size for bitmap fonts.

When using bitmap fonts, this specifies which pre-rendered size to use. Set to -1 to use automatic size selection.

Name Type Default Description
preRenderedSize Int -1 The bitmap font size to use, or -1 for auto

elements
text(value: String, ?align: Anonymous): Void

Displays static text.

Renders a text label using the current theme settings. The text is not selectable or editable.

Name Type Default Description
value String The text to display
align Anonymous (optional) Optional text alignment override

elements
end(): Void

Ends the current window declaration.

Must be called after begin() and all window content has been added. This finalizes the window layout and renders all controls.

Will assert if called without a matching begin().


elements
focusedWindow(): Window

Gets the currently focused Im window.

Returns the Window that currently has input focus, or null if no Im window is focused. Useful for checking if the Im UI is capturing input.

Returns Description
Window The focused Window or null

elements
allow(owner: ceramic.Entity): Void

Allows events from a specific entity owner.

When Im windows are focused, they block events from other entities by default. Use this to whitelist specific entities whose events should still be processed. The entity is automatically removed from the allowed list when destroyed.

Name Type Description
owner ceramic.Entity The entity to allow events from

elements
filter(owner: ceramic.Entity): Void

Removes an entity from the allowed owners list.

Events from this entity will be blocked again when Im windows are focused. Also removes the destroy listener if the entity still exists.

Name Type Description
owner ceramic.Entity The entity to remove from allowed list

elements
confirm(title: String, message: String, ?cancelable: Bool = true, ?yes: String, ?no: String, ?width: Float = DIALOG_WIDTH, ?height: Float = WindowData.DEFAULT_HEIGHT, ?key: String): ConfirmStatus

Shows a confirmation dialog (synchronous version).

Displays a modal dialog with Yes/No buttons. The dialog can be canceled by clicking outside if cancelable is true.

This version returns immediately with the current status. Use the returned ConfirmStatus to check if the user made a choice.

Name Type Default Description
title String Dialog window title
message String Message to display
cancelable Bool true Allow closing by clicking outside
yes String (optional) Custom "Yes" button text
no String (optional) Custom "No" button text
width Float DIALOG_WIDTH Dialog width in pixels
height Float WindowData.DEFAULT_HEIGHT Dialog height in pixels
key String (optional) Optional unique key for persistent dialogs
Returns Description
ConfirmStatus Current dialog status

elements
info(title: String, message: String, ?cancelable: Bool = false, ?ok: String, ?width: Float = DIALOG_WIDTH, ?height: Float = WindowData.DEFAULT_HEIGHT, ?key: String): InfoStatus

Shows an information dialog (synchronous version).

Displays a modal dialog with an OK button. The dialog can be canceled by clicking outside if cancelable is true.

This version returns immediately with the current status. Use the returned InfoStatus to check if the user clicked OK.

Name Type Default Description
title String Dialog window title
message String Message to display
cancelable Bool false Allow closing by clicking outside
ok String (optional) Custom "OK" button text
width Float DIALOG_WIDTH Dialog width in pixels
height Float WindowData.DEFAULT_HEIGHT Dialog height in pixels
key String (optional) Optional unique key for persistent dialogs
Returns Description
InfoStatus Current dialog status

elements
prompt(title: String, message: String, value: StringPointer, ?placeholder: String, ?cancelable: Bool = false, ?ok: String, ?cancel: String, ?width: Float = DIALOG_WIDTH, ?height: Float = WindowData.DEFAULT_HEIGHT, ?key: String): PromptStatus

Shows a text input dialog (synchronous version).

Displays a modal dialog with a text field and OK/Cancel buttons. The dialog can be canceled by clicking outside if cancelable is true.

This version returns immediately with the current status. The text value is read from and written to the provided StringPointer.

Name Type Default Description
title String Dialog window title
message String Message to display
value StringPointer Pointer to the text value
placeholder String (optional) Placeholder text for empty field
cancelable Bool false Allow closing by clicking outside
ok String (optional) Custom "OK" button text
cancel String (optional) Custom "Cancel" button text
width Float DIALOG_WIDTH Dialog width in pixels
height Float WindowData.DEFAULT_HEIGHT Dialog height in pixels
key String (optional) Optional unique key for persistent dialogs
Returns Description
PromptStatus Current dialog status

elements
choice(title: String, message: String, ?cancelable: Bool = false, choices: Array<String>, ?width: Float = DIALOG_WIDTH, ?height: Float = WindowData.DEFAULT_HEIGHT, ?key: String): ChoiceStatus

Shows a multiple choice dialog (synchronous version).

Displays a modal dialog with multiple buttons for each choice. The dialog can be canceled by clicking outside if cancelable is true.

This version returns immediately with the current status. Use the returned ChoiceStatus to check which choice was selected.

Name Type Default Description
title String Dialog window title
message String Message to display
cancelable Bool false Allow closing by clicking outside
choices Array<String> Array of choice button labels
width Float DIALOG_WIDTH Dialog width in pixels
height Float WindowData.DEFAULT_HEIGHT Dialog height in pixels
key String (optional) Optional unique key for persistent dialogs
Returns Description
ChoiceStatus Current dialog status with selected index

elements
handle(): Handle

Generates a unique handle for storing values.

Handles provide a way to store values that persist across frames without explicitly creating pointers. The handle is unique per source location and occurrence within a frame.

Used internally by the pointer macros (Im.bool(), Im.int(), etc.) to create implicit storage locations.

Returns Description
Handle A unique handle identifier

elements
readInt(intPointer: IntPointer): Int
Name Type
intPointer IntPointer
Returns
Int

elements
writeInt(intPointer: IntPointer, value: Int): Void
Name Type
intPointer IntPointer
value Int

elements
readFloat(floatPointer: FloatPointer): Float
Name Type
floatPointer FloatPointer
Returns
Float

elements
writeFloat(floatPointer: FloatPointer, value: Float): Void
Name Type
floatPointer FloatPointer
value Float

elements
readString(stringPointer: StringPointer): String
Name Type
stringPointer StringPointer
Returns
String

elements
writeString(stringPointer: StringPointer, value: String): Void
Name Type
stringPointer StringPointer
value String

elements
readArray(arrayPointer: ArrayPointer): Array<Dynamic>
Name Type
arrayPointer ArrayPointer
Returns
Array<Dynamic>

elements
writeArray(arrayPointer: ArrayPointer, value: Array<Dynamic>): Void
Name Type
arrayPointer ArrayPointer
value Array<Dynamic>

elements
readEnumValue(enumValuePointer: EnumValuePointer): Dynamic
Name Type
enumValuePointer EnumValuePointer
Returns
Dynamic

elements
writeEnumValue(enumValuePointer: EnumValuePointer, value: Dynamic): Void
Name Type
enumValuePointer EnumValuePointer
value Dynamic

elements
readBool(boolPointer: BoolPointer): Bool
Name Type
boolPointer BoolPointer
Returns
Bool

elements
writeBool(boolPointer: BoolPointer, value: Bool): Void
Name Type
boolPointer BoolPointer
value Bool

elements
bool(?value: Bool): Dynamic
Name Type Default
value Bool (optional)
Returns
Dynamic

elements
int(?value: Int): IntPointer
Name Type Default
value Int (optional)
Returns
IntPointer

elements
color(?value: ceramic.Color): Dynamic
Name Type Default
value ceramic.Color (optional)
Returns
Dynamic

elements
string(?value: String): Dynamic
Name Type Default
value String (optional)
Returns
Dynamic

elements
float(?value: Float): Dynamic
Name Type Default
value Float (optional)
Returns
Dynamic

elements
array(?value: Dynamic): Dynamic
Name Type Default
value Dynamic (optional)
Returns
Dynamic

elements
enumValue(value: Dynamic): EnumValuePointer
Name Type
value Dynamic
Returns
EnumValuePointer

elements
enumAbstract(value: Dynamic): Dynamic
Name Type
value Dynamic
Returns
Dynamic

spine
spine(?title: String, spineData: ceramic.SpineData, ?animation: String, ?skin: String, ?time: Float = -1, ?scaleToFit: Bool = false, ?alignLabel: Bool = false): ceramic.Spine
Name Type Default
title String (optional)
spineData ceramic.SpineData
animation String (optional)
skin String (optional)
time Float -1
scaleToFit Bool false
alignLabel Bool false
Returns
ceramic.Spine

Private Members

elements
DESTROY_ASSET_AFTER_X_FRAMES: Int

elements
DEFAULT_SPACE_HEIGHT: Float

elements
DEFAULT_LABEL_WIDTH: Float

elements
DEFAULT_SEPARATOR_HEIGHT: Float

elements
DEFAULT_LABEL_POSITION: LabelPosition

elements
DEFAULT_TEXT_ALIGN: Anonymous

elements
INT_MIN_VALUE: Int

elements
INT_MAX_VALUE: Int

elements
FLOAT_MIN_VALUE: Float

elements
FLOAT_MAX_VALUE: Float

elements
DIALOG_WIDTH: Float

elements
DIALOG_OVERFLOW_HEIGHT: Float

elements
updateWindowsDepth(): Void

elements
displayPendingDialogIfNeeded(): Void