optionselectorlevelmarker.c 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. /**
  2. \brief This Option Selector handles a Slider Marker, which basically has 2 sliders
  3. One slider is for selecting the value, and the other slider is for displaying some other value/ information
  4. @param m_Slider2 other slider value, which can be used to convery some other info to the player
  5. */
  6. class OptionSelectorLevelMarker extends OptionSelectorSliderSetup
  7. {
  8. protected SliderWidget m_Slider2;
  9. void OptionSelectorLevelMarker(Widget parent, float value, ScriptedWidgetEventHandler parentMenu, bool disabled, float min, float max)
  10. {
  11. m_Root = GetGame().GetWorkspace().CreateWidgets("gui/layouts/new_ui/option_level_marker.layout", parent);
  12. #ifdef PLATFORM_CONSOLE
  13. m_Parent = parent.GetParent().GetParent();
  14. #else
  15. #ifdef PLATFORM_WINDOWS
  16. m_Parent = parent.GetParent();
  17. #endif
  18. #endif
  19. m_SelectorType = 1;
  20. m_ParentClass = parentMenu;
  21. m_Slider = SliderWidget.Cast(m_Root.FindAnyWidget("marker_value"));
  22. m_Slider2 = SliderWidget.Cast(m_Root.FindAnyWidget("other_slider_value"));
  23. m_MinValue = min;
  24. m_MaxValue = max;
  25. SetValue(value, false);
  26. SetSlider2Value(0);
  27. Enable();
  28. m_Parent.SetHandler(this);
  29. }
  30. override void Enable()
  31. {
  32. super.Enable();
  33. m_Slider2.ClearFlags(WidgetFlags.IGNOREPOINTER);
  34. }
  35. override void Disable()
  36. {
  37. super.Disable();
  38. m_Slider2.SetFlags(WidgetFlags.IGNOREPOINTER);
  39. }
  40. void SetSlider2Value(float value)
  41. {
  42. m_Slider2.SetCurrent(NormalizeInput(value));
  43. }
  44. override bool OnUpdate(Widget w)
  45. {
  46. return false;
  47. }
  48. }