DayZ 1.24
Loading...
Searching...
No Matches
RadialMenu.c File Reference

Go to the source code of this file.

Enumerations

enum  RadialMenuControlType { MOUSE , CONTROLLER }
 

Functions

void RadialMenu ()
 
void ~RadialMenu ()
 
static RadialMenu GetInstance ()
 
void OnWidgetScriptInit (Widget w)
 
void SetControlType (RadialMenuControlType type)
 
bool IsUsingMouse ()
 
bool IsUsingController ()
 
void SetWidgetInitialized (bool state)
 
bool IsWidgetInitialized ()
 
void RegisterClass (UIScriptedMenu class_name)
 
void SetRadiusOffset (float radius_offset)
 
void SetExecuteDistOffset (float execute_dist_offset)
 
void SetOffsetFromTop (float offset_from_top)
 
void SetItemCardRadiusOffset (float item_card_radius_offset)
 
void ActivateControllerTimeout (bool state)
 
void SetWidgetProperties (string delimiter_layout)
 
void Refresh (bool hide_selector=true)
 
void ShowRadialSelector (Widget selected_item)
 
void HideRadialSelector ()
 
int GetItemCardsCount ()
 
float GetRadius ()
 
void GetParentCenter (out float center_x, out float center_y)
 
float GetParentMinSize ()
 
Widget GetObjectByDegAngle (float deg_angle)
 
float GetMousePointerAngle ()
 
float GetMouseDistance ()
 
float GetAngleInDegrees (float rad_angle)
 
void Update ()
 
float NormalizeInvertAngle (float angle)
 
void UpdataControllerInput ()
 
override bool OnMouseButtonUp (Widget w, int x, int y, int button)
 

Variables

enum RadialMenuControlType m_Parent
 
Widget m_ItemCardsContainer
 
Widget m_RadialSelector
 
ImageWidget m_RadialSelectorImage
 
ImageWidget m_RadialSelectorPointerImage
 
int m_RadialSelectorOriginalColor
 
int m_RadialSelectorDisabledColor
 
Widget m_SelectedObject
 
ref map< Widget, floatm_RadialItemCards
 
float m_AngleRadOffset
 
ref Timer m_UpdateTimer
 
static const string RADIAL_SELECTOR = "RadialSelector"
 
static const string RADIAL_SELECTOR_IMAGE = "SelectorImage"
 
static const string RADIAL_SELECTOR_POINTER = "SelectorPointer"
 
static const string RADIAL_DELIMITER_CONTAINER = "RadialDelimiterContainer"
 
static const string RADIAL_ITEM_CARD_CONTAINER = "RadialItemCardContainer"
 
RadialMenuControlType m_ControlType
 
UAIDWrapper m_SelectInputWrapper
 
UAIDWrapper m_BackInputWrapper
 
float m_ControllerAngle
 
float m_ControllerTilt
 
int m_ControllerTimout
 
bool m_IsControllerTimoutEnabled = true
 
const float CONTROLLER_DESELECT_TIMEOUT = 1000
 
const float CONTROLLER_TILT_TRESHOLD_SELECT = 0.8
 
const float CONTROLLER_TILT_TRESHOLD_EXECUTE = 1.0
 
bool m_WidgetInitialized
 
const float MOUSE_SAFE_ZONE_RADIUS = 120
 
float m_RadiusOffset
 
float m_ExecuteDistanceOffset
 
float m_OffsetFromTop
 
float m_ItemCardRadiusOffset
 
string m_DelimiterLayout
 
ref UIScriptedMenu m_RegisteredClass
 
static ref RadialMenu m_Instance
 
int last_time = -1
 

Enumeration Type Documentation

◆ RadialMenuControlType

Enumerator
MOUSE 
CONTROLLER 

Definition at line 1 of file RadialMenu.c.

2{
3 MOUSE,
5}
@ CONTROLLER
Definition RadialMenu.c:4
@ MOUSE
Definition RadialMenu.c:3

Function Documentation

◆ ActivateControllerTimeout()

void ActivateControllerTimeout ( bool state)
protected

Definition at line 206 of file RadialMenu.c.

207 {
209 }
bool m_IsControllerTimoutEnabled
Definition RadialMenu.c:38

References m_IsControllerTimoutEnabled.

◆ GetAngleInDegrees()

float GetAngleInDegrees ( float rad_angle)
protected

Definition at line 476 of file RadialMenu.c.

477 {
478 float rad_deg = rad_angle * Math.RAD2DEG;
479
480 int angle_mp = rad_deg / 360;
481
482 if (rad_deg < 0)
483 {
484 rad_deg = rad_deg - (360 * angle_mp);
485 rad_deg += 360;
486 }
487
488 return rad_deg;
489 }
Definition EnMath.c:7
static const float RAD2DEG
Definition EnMath.c:16

References Math::RAD2DEG.

Referenced by GetObjectByDegAngle(), Refresh(), ShowRadialSelector(), and Update().

◆ GetInstance()

static RadialMenu GetInstance ( )
staticprotected

Definition at line 113 of file RadialMenu.c.

114 {
115 return m_Instance;
116 }
static ref RadialMenu m_Instance
Definition RadialMenu.c:55

References m_Instance.

◆ GetItemCardsCount()

int GetItemCardsCount ( )
protected

Definition at line 343 of file RadialMenu.c.

344 {
345 Widget child = m_ItemCardsContainer.GetChildren();
346 int count = 0;
347
348 while (child)
349 {
350 ++count;
351
352 child = child.GetSibling();
353 }
354
355 return count;
356 }
Widget m_ItemCardsContainer
Definition RadialMenu.c:10

References m_ItemCardsContainer.

Referenced by Refresh().

◆ GetMouseDistance()

float GetMouseDistance ( )
protected

Definition at line 460 of file RadialMenu.c.

461 {
462 int mouse_x;
463 int mouse_y;
465
466 float center_x;
467 float center_y;
469
471
472 return distance;
473 }
void GetParentCenter(out float center_x, out float center_y)
Definition RadialMenu.c:370
static proto native float Distance(vector v1, vector v2)
Returns the distance between tips of two 3D vectors.
proto native vector Vector(float x, float y, float z)
Vector constructor from components.
proto void GetMousePos(out int x, out int y)

References vector::Distance(), GetMousePos(), GetParentCenter(), and Vector().

Referenced by Update().

◆ GetMousePointerAngle()

float GetMousePointerAngle ( )
protected

Definition at line 442 of file RadialMenu.c.

443 {
444 int mouse_x;
445 int mouse_y;
447
448 float center_x;
449 float center_y;
451
452 float tan_x = mouse_x - center_x;
453 float tan_y = mouse_y - center_y;
454 float angle = Math.Atan2(tan_y, tan_x);
455
456 return angle;
457 }
static proto float Atan2(float y, float x)
Returns angle in radians from tangent.

References Math::Atan2(), GetMousePos(), and GetParentCenter().

Referenced by Update().

◆ GetObjectByDegAngle()

Widget GetObjectByDegAngle ( float deg_angle)
protected

Definition at line 405 of file RadialMenu.c.

406 {
407 for (int i = 0; i < m_RadialItemCards.Count(); ++i)
408 {
409 Widget w = m_RadialItemCards.GetKey(i);
412 float min_angle = w_angle - offset;
413 float max_angle = w_angle + offset;
414
415 if (min_angle < 0) min_angle += 360; //clamp 0-360
416 if (max_angle > 360) max_angle -= 360;
417
418 if (min_angle > max_angle) //angle radius is in the cycling point 360->
419 {
420 if (min_angle <= deg_angle) //is cursor position also before this point
421 {
422 if (deg_angle > max_angle)
423 return w;
424 }
425 else //is cursor position after this point
426 {
427 if (deg_angle < max_angle)
428 return w;
429 }
430 }
431 else
432 {
433 if (deg_angle >= min_angle && deg_angle < max_angle) //min, max angles are within 0-360 radius
434 return w;
435 }
436 }
437
438 return NULL;
439 }
ref map< Widget, float > m_RadialItemCards
Definition RadialMenu.c:17
float m_AngleRadOffset
Definition RadialMenu.c:19
float GetAngleInDegrees(float rad_angle)
Definition RadialMenu.c:476

References GetAngleInDegrees(), m_AngleRadOffset, and m_RadialItemCards.

Referenced by Update().

◆ GetParentCenter()

void GetParentCenter ( out float center_x,
out float center_y )
protected

Definition at line 370 of file RadialMenu.c.

371 {
372 if (m_Parent)
373 {
374 float wx;
375 float wy;
376 m_Parent.GetScreenPos(wx, wy);
377
378 float ww;
379 float wh;
380 m_Parent.GetScreenSize(ww, wh);
381
382 center_x = wx + ww / 2; //center
383 center_y = wy + wh / 2;
384 }
385 }
enum RadialMenuControlType m_Parent

References m_Parent.

Referenced by GetMouseDistance(), and GetMousePointerAngle().

◆ GetParentMinSize()

float GetParentMinSize ( )
protected

Definition at line 387 of file RadialMenu.c.

388 {
389 if (m_Parent)
390 {
391 float size_x;
392 float size_y;
393 m_Parent.GetScreenSize(size_x, size_y);
394
395 return Math.Min(size_x, size_y);
396 }
397
398 return 0;
399 }
static proto float Min(float x, float y)
Returns smaller of two given values.

References m_Parent, and Math::Min().

Referenced by GetRadius().

◆ GetRadius()

float GetRadius ( )
protected

Definition at line 358 of file RadialMenu.c.

359 {
360 float radius = Math.AbsFloat(GetParentMinSize() * 0.5);
361
362 //PARAM --radius--
363 if (m_RadiusOffset > 0)
364 return radius * m_RadiusOffset;
365 //----------------
366
367 return radius;
368 }
float m_RadiusOffset
Definition RadialMenu.c:48
float GetParentMinSize()
Definition RadialMenu.c:387
static proto float AbsFloat(float f)
Returns absolute value.

References Math::AbsFloat(), GetParentMinSize(), and m_RadiusOffset.

Referenced by Refresh(), and AreaDamageTriggerBase::SetExtents().

◆ HideRadialSelector()

void HideRadialSelector ( )
protected

Definition at line 334 of file RadialMenu.c.

335 {
337 m_RadialSelector.Show(false);
338 }
Widget m_RadialSelector
Definition RadialMenu.c:11

References m_RadialSelector.

Referenced by Refresh(), and Update().

◆ IsUsingController()

bool IsUsingController ( )
protected

Definition at line 152 of file RadialMenu.c.

153 {
154 if (m_ControlType == RadialMenuControlType.CONTROLLER)
155 return true;
156
157 return false;
158 }
RadialMenuControlType m_ControlType
Definition RadialMenu.c:30
RadialMenuControlType
Definition RadialMenu.c:2

References m_ControlType.

Referenced by Update().

◆ IsUsingMouse()

bool IsUsingMouse ( )
protected

Definition at line 144 of file RadialMenu.c.

145 {
147 return true;
148
149 return false;
150 }

References m_ControlType.

Referenced by Update().

◆ IsWidgetInitialized()

bool IsWidgetInitialized ( )
protected

Definition at line 165 of file RadialMenu.c.

166 {
167 return m_WidgetInitialized;
168 }
bool m_WidgetInitialized
Definition RadialMenu.c:44

References m_WidgetInitialized.

◆ NormalizeInvertAngle()

float NormalizeInvertAngle ( float angle)
protected

Definition at line 603 of file RadialMenu.c.

604 {
605 float new_angle = 360 - angle;
606 int angle_mp = new_angle / 360;
607
608 new_angle = new_angle - (360 * angle_mp);
609
610 return new_angle;
611 }

Referenced by UpdataControllerInput().

◆ OnMouseButtonUp()

override bool OnMouseButtonUp ( Widget w,
int x,
int y,
int button )
protected

Definition at line 640 of file RadialMenu.c.

641 {
642 if (button == MouseState.LEFT && m_SelectedObject/* && w == m_SelectedObject*/)
643 {
644 //Execute
645 GetGame().GameScript.CallFunction(m_RegisteredClass, "OnMousePressLeft", NULL, m_SelectedObject);
646
647 return true;
648 }
649
650 if (button == MouseState.RIGHT)
651 {
652 //Back one level
653 GetGame().GameScript.CallFunction(m_RegisteredClass, "OnMousePressRight", NULL, NULL);
654
655 return true;
656 }
657
658 return false;
659 }
Widget m_SelectedObject
Definition RadialMenu.c:16
ref UIScriptedMenu m_RegisteredClass
Definition RadialMenu.c:54
proto native CGame GetGame()
MouseState
Definition EnSystem.c:311

References GetGame(), m_RegisteredClass, and m_SelectedObject.

◆ OnWidgetScriptInit()

void OnWidgetScriptInit ( Widget w)
protected

Definition at line 119 of file RadialMenu.c.

120 {
122 m_RadialSelector = w.FindAnyWidget(RADIAL_SELECTOR);
125
127 m_RadialSelectorDisabledColor = ARGB(255, 150, 150, 150);
128
129 //parent
130 m_Parent = w;
131 m_Parent.SetHandler(this);
132 }
static const string RADIAL_ITEM_CARD_CONTAINER
Definition RadialMenu.c:27
static const string RADIAL_SELECTOR
Definition RadialMenu.c:23
ImageWidget m_RadialSelectorImage
Definition RadialMenu.c:12
static const string RADIAL_SELECTOR_POINTER
Definition RadialMenu.c:25
ImageWidget m_RadialSelectorPointerImage
Definition RadialMenu.c:13
int m_RadialSelectorDisabledColor
Definition RadialMenu.c:15
static const string RADIAL_SELECTOR_IMAGE
Definition RadialMenu.c:24
int m_RadialSelectorOriginalColor
Definition RadialMenu.c:14
int ARGB(int a, int r, int g, int b)
Definition proto.c:322

References ARGB(), m_ItemCardsContainer, m_Parent, m_RadialSelector, m_RadialSelectorDisabledColor, m_RadialSelectorImage, m_RadialSelectorOriginalColor, m_RadialSelectorPointerImage, RADIAL_ITEM_CARD_CONTAINER, RADIAL_SELECTOR, RADIAL_SELECTOR_IMAGE, and RADIAL_SELECTOR_POINTER.

◆ RadialMenu()

void RadialMenu ( )
protected

Definition at line 84 of file RadialMenu.c.

85 {
86 m_Instance = this;
87
88 //set default control type
89#ifdef PLATFORM_CONSOLE
90 Input inp = GetGame().GetInput();
91 if (inp && inp.IsEnabledMouseAndKeyboardEvenOnServer())
93 else
95#endif
96#ifdef PLATFORM_WINDOWS
98#endif
99
100 m_SelectInputWrapper = GetUApi().GetInputByID(UAUISelect).GetPersistentWrapper();
101 m_BackInputWrapper = GetUApi().GetInputByID(UAUIBack).GetPersistentWrapper();
102
103 //radial cards
105 m_UpdateTimer = new Timer();
106 m_UpdateTimer.Run(0.01, this, "Update", NULL, true);
107 }
UAIDWrapper m_SelectInputWrapper
Definition RadialMenu.c:31
UAIDWrapper m_BackInputWrapper
Definition RadialMenu.c:32
ref Timer m_UpdateTimer
Definition RadialMenu.c:20
proto native UAInputAPI GetUApi()
Definition input.c:11

References GetGame(), GetUApi(), m_BackInputWrapper, m_ControlType, m_Instance, m_RadialItemCards, m_SelectInputWrapper, and m_UpdateTimer.

Referenced by UIScriptedMenu::CreateContent(), UIScriptedMenu::CreateGestureContent(), UIScriptedMenu::Init(), UIScriptedMenu::OnController(), and UIScriptedMenu::OnMouseEnter().

◆ Refresh()

void Refresh ( bool hide_selector = true)
protected

Definition at line 220 of file RadialMenu.c.

221 {
223 if (item_cards_count > 0)
225 float angle_rad = -Math.PI / 2;
226
227 //--PARAM top offset--
228 if (m_OffsetFromTop != 0)
230 //--------------------
231
232 //delete all delimiters
235 {
236 Widget del_child = delimiters_panel.GetChildren();
237 while (del_child)
238 {
240 del_child = del_child.GetSibling();
241
242 delete child_to_destroy1;
243 }
244 }
245
246 //Position item cards, crate radial delimiters
248 Widget item_card = item_cards_panel.GetChildren();
249
250 //get radius
251 float original_r = GetRadius();
252 float item_cards_r = original_r;
253
254 //--PARAM top offset--....
255 if (m_ItemCardRadiusOffset != 0)
256 {
258 if (item_cards_r < 0) item_cards_r = 0; //min radius is 0
259 }
260
261 m_RadialItemCards.Clear();
262 for (int i = 0; i < item_cards_count; ++i)
263 {
264 //position item cards
265 if (item_card)
266 {
267 //creates circle from simple widget items
270
273
274 item_card.SetPos(pos_x, pos_y);
275
276 //store item card
278
279 //get next child
280 item_card = item_card.GetSibling();
281 }
282 //-------------------------
283
284 //create delimiter
286 {
287 Widget delimiter_widget = GetGame().GetWorkspace().CreateWidgets(m_DelimiterLayout, delimiters_panel);
289 delimiter_widget.SetPos(0, 0);
290 delimiter_widget.SetRotation(0, 0, GetAngleInDegrees(delim_angle_rad) + 90);
291 }
292
293 //calculate next angle
295 }
296
297 //hide selector on refresh
298 if (hide_selector)
300 }
void HideRadialSelector()
Definition RadialMenu.c:334
string m_DelimiterLayout
Definition RadialMenu.c:52
float m_ItemCardRadiusOffset
Definition RadialMenu.c:51
float m_OffsetFromTop
Definition RadialMenu.c:50
int GetItemCardsCount()
Definition RadialMenu.c:343
float GetRadius()
Definition RadialMenu.c:358
static const string RADIAL_DELIMITER_CONTAINER
Definition RadialMenu.c:26
static proto float Cos(float angle)
Returns cosinus of angle in radians.
static proto float Sin(float angle)
Returns sinus of angle in radians.
static const float PI
Definition EnMath.c:12

References Math::Cos(), GetAngleInDegrees(), GetGame(), GetItemCardsCount(), GetRadius(), HideRadialSelector(), m_AngleRadOffset, m_DelimiterLayout, m_ItemCardRadiusOffset, m_OffsetFromTop, m_Parent, m_RadialItemCards, Math::PI, RADIAL_DELIMITER_CONTAINER, RADIAL_ITEM_CARD_CONTAINER, and Math::Sin().

◆ RegisterClass()

void RegisterClass ( UIScriptedMenu class_name)
protected

Definition at line 173 of file RadialMenu.c.

174 {
176 if (m_UpdateTimer && !m_UpdateTimer.IsRunning())
177 m_UpdateTimer.Run(0.01, this, "Update", NULL, true);
178 }
class OptionSelectorMultistate extends OptionSelector class_name

References class_name, m_RegisteredClass, and m_UpdateTimer.

◆ SetControlType()

void SetControlType ( RadialMenuControlType type)
protected

Definition at line 135 of file RadialMenu.c.

136 {
137 if (m_ControlType != type)
138 {
139 m_ControlType = type;
140 GetGame().GameScript.CallFunction(m_RegisteredClass, "OnControlsChanged", NULL, type);
141 }
142 }

References GetGame(), m_ControlType, and m_RegisteredClass.

◆ SetExecuteDistOffset()

void SetExecuteDistOffset ( float execute_dist_offset)
protected

Definition at line 188 of file RadialMenu.c.

189 {
191 }
float m_ExecuteDistanceOffset
Definition RadialMenu.c:49

References m_ExecuteDistanceOffset.

◆ SetItemCardRadiusOffset()

void SetItemCardRadiusOffset ( float item_card_radius_offset)
protected

Definition at line 200 of file RadialMenu.c.

References m_ItemCardRadiusOffset.

◆ SetOffsetFromTop()

void SetOffsetFromTop ( float offset_from_top)
protected

Definition at line 194 of file RadialMenu.c.

195 {
197 }

References m_OffsetFromTop.

◆ SetRadiusOffset()

void SetRadiusOffset ( float radius_offset)
protected

Definition at line 182 of file RadialMenu.c.

183 {
185 }

References m_RadiusOffset.

◆ SetWidgetInitialized()

void SetWidgetInitialized ( bool state)
protected

Definition at line 160 of file RadialMenu.c.

161 {
163 }

References m_WidgetInitialized.

◆ SetWidgetProperties()

void SetWidgetProperties ( string delimiter_layout)
protected

Definition at line 211 of file RadialMenu.c.

212 {
214 }

References m_DelimiterLayout.

◆ ShowRadialSelector()

void ShowRadialSelector ( Widget selected_item)
protected

Definition at line 303 of file RadialMenu.c.

304 {
306 {
307 int item_count = m_RadialItemCards.Count();
308 if (item_count > 1)
309 {
311 m_RadialSelector.SetRotation(0, 0, angle_deg + 90); //rotate widget according to its desired rotation
312
313 //set radial selector size
314 float progress = (1 / item_count) * 2;
315 m_RadialSelectorImage.SetMaskProgress(progress);
316
317 m_RadialSelector.Show(true);
318
319 bool grey_selector = selected_item.GetFlags() & WidgetFlags.DISABLED;
320 if (!grey_selector)
321 {
324 }
325 else
326 {
329 }
330 }
331 }
332 }
WidgetFlags
Definition EnWidgets.c:58

References GetAngleInDegrees(), m_RadialItemCards, m_RadialSelector, m_RadialSelectorDisabledColor, m_RadialSelectorImage, m_RadialSelectorOriginalColor, and m_RadialSelectorPointerImage.

Referenced by Update().

◆ UpdataControllerInput()

void UpdataControllerInput ( )
protected

Definition at line 616 of file RadialMenu.c.

617 {
618 Input input = GetGame().GetInput();
619
620 //Controller radial
621 float angle;
622 float tilt;
623 input.GetGamepadThumbDirection(GamepadButton.THUMB_RIGHT, angle, tilt);
625
628 m_ControllerTimout = 0; //reset controller timeout
629
630 //Controller buttons
631 //Select (A,cross)
632 if (m_SelectInputWrapper.InputP().LocalPress())
633 GetGame().GameScript.CallFunction(m_RegisteredClass, "OnControllerPressSelect", NULL, m_SelectedObject);
634
635 //Back (B,circle)
636 if (m_BackInputWrapper.InputP().LocalPress())
637 GetGame().GameScript.CallFunction(m_RegisteredClass, "OnControllerPressBack", NULL, m_SelectedObject);
638 }
float NormalizeInvertAngle(float angle)
Definition RadialMenu.c:603
float m_ControllerTilt
Definition RadialMenu.c:34
float m_ControllerAngle
Definition RadialMenu.c:33
int m_ControllerTimout
Definition RadialMenu.c:37
proto native UAInput InputP()
GamepadButton
Definition EnSystem.c:341

References GetGame(), UAIDWrapper::InputP(), m_BackInputWrapper, m_ControllerAngle, m_ControllerTilt, m_ControllerTimout, m_RegisteredClass, m_SelectedObject, m_SelectInputWrapper, NormalizeInvertAngle(), and Math::RAD2DEG.

Referenced by Update().

◆ ~RadialMenu()

void ~RadialMenu ( )
protected

Definition at line 109 of file RadialMenu.c.

110 {
111 }

Variable Documentation

◆ CONTROLLER_DESELECT_TIMEOUT

const float CONTROLLER_DESELECT_TIMEOUT = 1000
protected

Definition at line 39 of file RadialMenu.c.

Referenced by Update().

◆ CONTROLLER_TILT_TRESHOLD_EXECUTE

const float CONTROLLER_TILT_TRESHOLD_EXECUTE = 1.0
protected

Definition at line 41 of file RadialMenu.c.

◆ CONTROLLER_TILT_TRESHOLD_SELECT

const float CONTROLLER_TILT_TRESHOLD_SELECT = 0.8
protected

Definition at line 40 of file RadialMenu.c.

Referenced by Update().

◆ last_time

int last_time = -1
protected

Definition at line 495 of file RadialMenu.c.

Referenced by Update().

◆ m_AngleRadOffset

float m_AngleRadOffset
protected

Definition at line 19 of file RadialMenu.c.

Referenced by GetObjectByDegAngle(), and Refresh().

◆ m_BackInputWrapper

UAIDWrapper m_BackInputWrapper
private

◆ m_ControllerAngle

float m_ControllerAngle
protected

Definition at line 33 of file RadialMenu.c.

Referenced by Controller(), UpdataControllerInput(), and Update().

◆ m_ControllerTilt

float m_ControllerTilt
protected

Definition at line 34 of file RadialMenu.c.

Referenced by Controller(), UpdataControllerInput(), and Update().

◆ m_ControllerTimout

int m_ControllerTimout
protected

Definition at line 37 of file RadialMenu.c.

Referenced by UpdataControllerInput(), and Update().

◆ m_ControlType

RadialMenuControlType m_ControlType
protected

Definition at line 30 of file RadialMenu.c.

Referenced by IsUsingController(), IsUsingMouse(), RadialMenu(), and SetControlType().

◆ m_DelimiterLayout

string m_DelimiterLayout
protected

Definition at line 52 of file RadialMenu.c.

Referenced by Refresh(), and SetWidgetProperties().

◆ m_ExecuteDistanceOffset

float m_ExecuteDistanceOffset
protected

Definition at line 49 of file RadialMenu.c.

Referenced by SetExecuteDistOffset().

◆ m_Instance

◆ m_IsControllerTimoutEnabled

bool m_IsControllerTimoutEnabled = true
protected

Definition at line 38 of file RadialMenu.c.

Referenced by ActivateControllerTimeout(), and Update().

◆ m_ItemCardRadiusOffset

float m_ItemCardRadiusOffset
protected

Definition at line 51 of file RadialMenu.c.

Referenced by Refresh(), and SetItemCardRadiusOffset().

◆ m_ItemCardsContainer

Widget m_ItemCardsContainer
protected

Definition at line 10 of file RadialMenu.c.

Referenced by GetItemCardsCount(), and OnWidgetScriptInit().

◆ m_OffsetFromTop

float m_OffsetFromTop
protected

Definition at line 50 of file RadialMenu.c.

Referenced by Refresh(), and SetOffsetFromTop().

◆ m_Parent

◆ m_RadialItemCards

ref map<Widget, float> m_RadialItemCards
protected

Definition at line 17 of file RadialMenu.c.

Referenced by GetObjectByDegAngle(), RadialMenu(), Refresh(), and ShowRadialSelector().

◆ m_RadialSelector

Widget m_RadialSelector
protected

Definition at line 11 of file RadialMenu.c.

Referenced by HideRadialSelector(), OnWidgetScriptInit(), and ShowRadialSelector().

◆ m_RadialSelectorDisabledColor

int m_RadialSelectorDisabledColor
protected

Definition at line 15 of file RadialMenu.c.

Referenced by OnWidgetScriptInit(), and ShowRadialSelector().

◆ m_RadialSelectorImage

ImageWidget m_RadialSelectorImage
protected

Definition at line 12 of file RadialMenu.c.

Referenced by OnWidgetScriptInit(), and ShowRadialSelector().

◆ m_RadialSelectorOriginalColor

int m_RadialSelectorOriginalColor
protected

Definition at line 14 of file RadialMenu.c.

Referenced by OnWidgetScriptInit(), and ShowRadialSelector().

◆ m_RadialSelectorPointerImage

ImageWidget m_RadialSelectorPointerImage
protected

Definition at line 13 of file RadialMenu.c.

Referenced by OnWidgetScriptInit(), and ShowRadialSelector().

◆ m_RadiusOffset

float m_RadiusOffset
protected

Definition at line 48 of file RadialMenu.c.

Referenced by GetRadius(), and SetRadiusOffset().

◆ m_RegisteredClass

ref UIScriptedMenu m_RegisteredClass
protected

◆ m_SelectedObject

◆ m_SelectInputWrapper

UAIDWrapper m_SelectInputWrapper
private

Definition at line 31 of file RadialMenu.c.

Referenced by RadialMenu(), and UpdataControllerInput().

◆ m_UpdateTimer

◆ m_WidgetInitialized

bool m_WidgetInitialized
protected

Definition at line 44 of file RadialMenu.c.

Referenced by IsWidgetInitialized(), SetWidgetInitialized(), and Update().

◆ MOUSE_SAFE_ZONE_RADIUS

const float MOUSE_SAFE_ZONE_RADIUS = 120
protected

Definition at line 45 of file RadialMenu.c.

Referenced by Update().

◆ RADIAL_DELIMITER_CONTAINER

const string RADIAL_DELIMITER_CONTAINER = "RadialDelimiterContainer"
staticprotected

Definition at line 26 of file RadialMenu.c.

Referenced by Refresh().

◆ RADIAL_ITEM_CARD_CONTAINER

const string RADIAL_ITEM_CARD_CONTAINER = "RadialItemCardContainer"
staticprotected

Definition at line 27 of file RadialMenu.c.

Referenced by OnWidgetScriptInit(), and Refresh().

◆ RADIAL_SELECTOR

const string RADIAL_SELECTOR = "RadialSelector"
staticprotected

Definition at line 23 of file RadialMenu.c.

Referenced by OnWidgetScriptInit().

◆ RADIAL_SELECTOR_IMAGE

const string RADIAL_SELECTOR_IMAGE = "SelectorImage"
staticprotected

Definition at line 24 of file RadialMenu.c.

Referenced by OnWidgetScriptInit().

◆ RADIAL_SELECTOR_POINTER

const string RADIAL_SELECTOR_POINTER = "SelectorPointer"
staticprotected

Definition at line 25 of file RadialMenu.c.

Referenced by OnWidgetScriptInit().