8 void OptionSelectorSlider(Widget parent,
float value, ScriptedWidgetEventHandler parent_menu,
bool disabled,
float min,
float max,
bool showEditbox =
false)
12 m_Root =
g_Game.GetWorkspace().CreateWidgets(
"gui/layouts/new_ui/option_slider.layout", parent);
16 m_Root =
g_Game.GetWorkspace().CreateWidgets(
"gui/layouts/new_ui/option_slider_editbox.layout", parent);
19 #ifdef PLATFORM_CONSOLE
24 #ifdef PLATFORM_CONSOLE
25 m_Parent = parent.GetParent().GetParent();
27 #ifdef PLATFORM_WINDOWS
36 m_ParentClass = parent_menu;
37 m_Slider = SliderWidget.Cast(
m_Root.FindAnyWidget(
"option_value"));
63 if (
m_ValueText.GetText() ==
"" && defaultValue > -1)
79 override bool OnChange(Widget w,
int x,
int y,
bool finished)
90 m_OptionChanged.Invoke(value);
99 m_Slider.SetCurrent(NormalizeInput(value));
120 TStringArray allowedCharacters = {
"0",
"1",
"2",
"3",
"4",
"5",
"6",
"7",
"8",
"9"};
121 for (
int i = 0; i < text.Length(); i++)
123 int foundIndex = allowedCharacters.Find(text.Get(i));
124 if (foundIndex == -1)
128 if (i > 0 && text.ToInt() == 0)
135 if (text.ToInt() > 100 || text.ToInt() < 0)
145 #ifndef PLATFORM_CONSOLE
169 #ifdef PLATFORM_CONSOLE
184 return super.OnFocusLost(w,
x,
y);
193 return super.IsFocusable(w);
198 #ifdef PLATFORM_CONSOLE
199 if (ButtonWidget.Cast(w))
201 ColorNormalConsole(w);
210 return super.OnMouseLeave(w, enterW,
x,
y);
215 OptionsMenuControls menuControls = OptionsMenuControls.Cast(m_ParentClass);
218 menuControls.SetActiveOption(
this);
224 OptionsMenuControls menuControls = OptionsMenuControls.Cast(m_ParentClass);
225 if (menuControls && menuControls.GetActiveOption())
228 if (!optionSlider || !optionSlider.IsValueTextVisible())
231 optionSlider.Update();
This Option Selector handles a Slider Marker, which basically has 2 sliders One slider is for selecti...
override bool OnDoubleClick(Widget w, int x, int y, int button)
void UpdateActiveOption()
bool IsValidEditboxValue(string text)
bool IsValueTextVisible()
override bool OnFocusLost(Widget w, int x, int y)
override bool IsFocusable(Widget w)
override bool OnFocus(Widget w, int x, int y)
EditBoxWidget m_ValueText
float GetRangePercantageByValue()
void OptionSelectorSlider(Widget parent, float value, ScriptedWidgetEventHandler parent_menu, bool disabled, float min, float max, bool showEditbox=false)
override bool OnMouseLeave(Widget w, Widget enterW, int x, int y)
void Refresh(float defaultValue=-1)
override bool OnChange(Widget w, int x, int y, bool finished)
array< string > TStringArray
override void SetValue(int value, bool fire_event=true)
class PlayerStatBase m_MinValue
int ARGB(int a, int r, int g, int b)