-
Notifications
You must be signed in to change notification settings - Fork 7
Toggle
Refaltor77 edited this page Mar 29, 2026
·
1 revision
Checkbox, switch, or radio button element.
use refaltor\ui\elements\Toggle;
$toggle = Toggle::create("my_toggle");$toggle->setToggleName("toggle_music"); // Identifier
$toggle->setToggleDefaultState(true); // Default on/off
$toggle->setResetOnFocusLost(false); // Reset when losing focus
$toggle->setEnableDirectionalToggling(true); // D-pad toggling$toggle->setToggleOnButton("button.menu_select"); // Button to toggle on
$toggle->setToggleOffButton("button.menu_select"); // Button to toggle offDefine which child elements display for each state:
$toggle->setCheckedControl("checked_image");
$toggle->setUncheckedControl("unchecked_image");
$toggle->setCheckedHoverControl("checked_hover_image");
$toggle->setUncheckedHoverControl("unchecked_hover_image");
$toggle->setCheckedLockedControl("checked_locked_image");
$toggle->setUncheckedLockedControl("unchecked_locked_image");
$toggle->setCheckedLockedHoverControl("checked_locked_hover");
$toggle->setUncheckedLockedHoverControl("unchecked_locked_hover");Make toggles mutually exclusive:
$toggle->setRadioToggleGroup("difficulty_group"); // Group name
$toggle->setToggleTabIndex(0); // Tab order
$toggle->setToggleGroupDefaultTab("easy"); // Default tab$toggle->setSoundName("random.click");
$toggle->setSoundVolume(1.0);
$toggle->setSoundPitch(1.0);$musicToggle = Toggle::create("music_toggle")
->setToggleName("toggle_music")
->setToggleDefaultState(true)
->setSoundName("random.click")
->setSize(150, 30);// Easy
$easy = Toggle::create("easy_radio")
->setToggleName("difficulty_easy")
->setRadioToggleGroup("difficulty")
->setToggleTabIndex(0)
->setToggleDefaultState(true)
->setSize(80, 25);
// Normal
$normal = Toggle::create("normal_radio")
->setToggleName("difficulty_normal")
->setRadioToggleGroup("difficulty")
->setToggleTabIndex(1)
->setSize(80, 25);
// Hard
$hard = Toggle::create("hard_radio")
->setToggleName("difficulty_hard")
->setRadioToggleGroup("difficulty")
->setToggleTabIndex(2)
->setSize(80, 25);