Interface ContainerWrapper

A nested container that is itself a UIElement (can be hidden/shown/destroyed) and a UIContainer.

interface ContainerWrapper {
    Hide(): void;
    Show(): void;
    Destroy(): void;
    Clear(): void;
    AddText(text: string): UIElement;
    AddButton(text: string, onClick: () => void): UIElement;
    AddSlider(
        id: string,
        min: number,
        max: number,
        label: string,
    ): ValueWrapper<number>;
    AddTextInput(
        id: string,
        label: string,
        defaultText?: string,
    ): ValueWrapper<string>;
    AddToggle(id: string, label: string): ValueWrapper<boolean>;
    AddDropdown(
        id: string,
        label: string,
        options: string[],
    ): ValueWrapper<string>;
    AddTextArea(
        id: string,
        label: string,
        defaultText?: string,
    ): ValueWrapper<string>;
    AddColorPicker(
        id: string,
        label: string,
        defaultColor?: string,
    ): ValueWrapper<string>;
    AddHotkeyCapture(
        id: string,
        label: string,
        defaultBind?: string,
    ): HotkeyCaptureWrapper;
    AddFilePicker(
        id: string,
        label: string,
        options?: { filters?: string[] },
    ): ValueWrapper<string>;
    AddDirectoryPicker(id: string, label: string): ValueWrapper<string>;
    AddListBox(
        id: string,
        label: string,
        items?: string[],
    ): ValueWrapper<string[]>;
    AddDataGrid(id: string, columns: DataGridColumn[]): DataGridWrapper;
    AddTabGroup(): TabGroupWrapper;
    AddRow(builder?: (row: ContainerWrapper) => void): ContainerWrapper;
    AddColumn(builder?: (col: ContainerWrapper) => void): ContainerWrapper;
}

Hierarchy (View Summary)

Methods

  • Hides the element without destroying it. Call Show() to make it visible again.

    Returns void

  • Makes a previously hidden element visible again.

    Returns void

  • Permanently removes the element from the UI panel.

    Returns void

  • Removes all child elements from this container.

    Returns void

  • Adds a read-only text label. Not persisted.

    Parameters

    • text: string

    Returns UIElement

    UI.AddText("Status: ready");
    
  • Adds a clickable button. Not persisted.

    Parameters

    • text: string
    • onClick: () => void

    Returns UIElement

    UI.AddButton("Run", () => { Console.Log("clicked"); });
    
  • Adds a numeric range slider. Value is persisted by id and restored on next run.

    Parameters

    • id: string
    • min: number
    • max: number
    • label: string

    Returns ValueWrapper<number>

    const s = UI.AddSlider("vol", 0, 100, "Volume"); s.GetValue();
    
  • Adds a single-line text input. Value is persisted by id and restored on next run. defaultText is only used when no saved value exists.

    Parameters

    • id: string
    • label: string
    • OptionaldefaultText: string

    Returns ValueWrapper<string>

    const name = UI.AddTextInput("name", "Your name", "Alice");
    
  • Adds a boolean toggle switch. Value is persisted by id and restored on next run.

    Parameters

    • id: string
    • label: string

    Returns ValueWrapper<boolean>

    const t = UI.AddToggle("on", "Enable");
    
  • Adds a dropdown selector. Value is persisted by id and restored on next run.

    Parameters

    • id: string
    • label: string
    • options: string[]

    Returns ValueWrapper<string>

    const d = UI.AddDropdown("mode", "Mode", ["Fast", "Slow"]);
    
  • Adds a multi-line text area. Value is persisted by id and restored on next run. defaultText is only used when no saved value exists.

    Parameters

    • id: string
    • label: string
    • OptionaldefaultText: string

    Returns ValueWrapper<string>

    const ta = UI.AddTextArea("notes", "Notes");
    
  • Adds a color picker. Value is persisted by id and restored on next run. defaultColor is only used when no saved value exists.

    Parameters

    • id: string
    • label: string
    • OptionaldefaultColor: string

    Returns ValueWrapper<string>

    const cp = UI.AddColorPicker("bg", "Background", "#FFFFFF");
    
  • Adds a hotkey capture field. The captured combo is persisted by id and restored on next run, including its active binding.

    Parameters

    • id: string
    • label: string
    • OptionaldefaultBind: string

    Returns HotkeyCaptureWrapper

    const hk = UI.AddHotkeyCapture("trigger", "Trigger", "Ctrl+F");
    
  • Adds a file picker dialog button. Selected path is persisted by id and restored on next run.

    Parameters

    • id: string
    • label: string
    • Optionaloptions: { filters?: string[] }

    Returns ValueWrapper<string>

    const fp = UI.AddFilePicker("img", "Image", { filters: ["png", "jpg"] });
    
  • Adds a directory picker dialog button. Selected path is persisted by id and restored on next run.

    Parameters

    • id: string
    • label: string

    Returns ValueWrapper<string>

    const dp = UI.AddDirectoryPicker("dir", "Output folder");
    
  • Adds a multi-select list box. Selected items are persisted by id and restored on next run.

    Parameters

    • id: string
    • label: string
    • Optionalitems: string[]

    Returns ValueWrapper<string[]>

    const lb = UI.AddListBox("tags", "Tags", ["alpha", "beta"]);