GUI API
✔ Supported Features
UI Hierarchy
Tab (index 0–4)
└─ Subtab
└─ Panel (small or large)
├─ Checkbox
│ ├─ Keybind (child)
│ └─ Color Picker(s) (child, up to 2)
│ └─ Button (child)
├─ Slider (double or int)
├─ Input Text Box
├─ Multi Select
├─ Single Select
├─ List
└─ Other elements…Element Creation Rules
🔥 Important Ordering Constraint
Child Element
Rule
Global Entry
ui.create_subtab(tab_index, name)
ui.create_subtab(tab_index, name)Parameters
Name
Type
Description
Returns
Example
Subtab API
subtab:add_panel(name, is_small)
subtab:add_panel(name, is_small)Parameters
Name
Type
Description
Returns
Example
Common
Panel Element APIs
Checkbox
panel:add_checkbox(name, initial_value, [draw_title], [find_protect], [draw_just_label])
panel:add_checkbox(name, initial_value, [draw_title], [find_protect], [draw_just_label])Parameters
Name
Type
Description
Returns
Example
Methods
Slider (Double)
panel:add_slider_double(name, postfix, value, min, max, step, [draw_title], [find_protect])
panel:add_slider_double(name, postfix, value, min, max, step, [draw_title], [find_protect])Parameters
Name
Type
Description
Returns
Methods
Slider (Int)
panel:add_slider_int(name, postfix, value, min, max, step, [draw_title], [find_protect])
panel:add_slider_int(name, postfix, value, min, max, step, [draw_title], [find_protect])Methods
Input Text Box
panel:add_input(name, initial_text, [draw_title], [find_protect])
panel:add_input(name, initial_text, [draw_title], [find_protect])Parameters
Name
Type
Description
Returns
Methods
Multi Select
panel:add_multi_select(name, options_table, is_expandable, [draw_title], [find_protect])
panel:add_multi_select(name, options_table, is_expandable, [draw_title], [find_protect])options_table Format
options_table FormatMethods
Single Select
panel:add_single_select(name, options_table, initial_index, is_expandable, [draw_title], [find_protect])
panel:add_single_select(name, options_table, initial_index, is_expandable, [draw_title], [find_protect])Methods
Keybind (Checkbox Child Only)
panel:add_keybind(name, vk_keycode, mode_string, [draw_title], [find_protect])
panel:add_keybind(name, vk_keycode, mode_string, [draw_title], [find_protect])Modes
Methods
Example
Color Picker (Checkbox Child)
panel:add_color(name, {r,g,b,a}, [find_protect])
panel:add_color(name, {r,g,b,a}, [find_protect])Parameters
Channel
Type
Range
Methods
Button
panel:add_button(name, callback_function)
panel:add_button(name, callback_function)Behavior
Example
Methods
List
panel:add_list(name, entries_table, [draw_title], [find_protect])
panel:add_list(name, entries_table, [draw_title], [find_protect])entries_table Format
entries_table FormatMethods
Visibility (set_active)
Full Example
Script Unload Behavior
Lookup API
ui.find_element(parent_tab_index, subtab_name, panel_name, element_name, type_string)
ui.find_element(parent_tab_index, subtab_name, panel_name, element_name, type_string)Parameters
Name
Type
Description
Valid type_string Values
type_string ValuesType String
Returns
Return Value
Condition
Returns
Usage Examples
🧾 Config API
ui.construct_config() → string
ui.construct_config() → stringExample
ui.apply_config(config_string)
ui.apply_config(config_string)Example
ui.is_active()
ui.is_active()🏷 Name Prefixing for Elements (##prefix_)
##prefix_)How It Works
Duplicate Names and Config Behavior
ui.find_element and Prefixes
ui.find_element and PrefixesWhen to Use Prefixing
🔒 Reference Tracking (Internal Behavior)
Last updated