Arma Reforger Explorer
1.7.0.54
Arma Reforger Code Explorer by Zeroy - Thanks to MisterOutofTime
Toggle main menu visibility
Loading...
Searching...
No Matches
SCR_SelectableTileButtonComponent.c
Go to the documentation of this file.
1
//------------------------------------------------------------------------------------------------
2
class
SCR_SelectableTileButtonComponent
:
SCR_ButtonComponent
3
{
4
ref
ScriptInvoker
m_OnChanged =
new
ScriptInvoker
();
5
private
bool
m_bIsSelected =
false
;
6
protected
bool
m_bIsTriggered
=
true
;
7
8
protected
Widget
m_wIcon
;
9
10
protected
ref
Color
COLOR_CHECKED_TRUE
=
UIColors
.CONTRAST_COLOR;
11
protected
ref
Color
COLOR_CHECKED_FALSE
=
UIColors
.WHITE_DEFAULT;
12
13
//------------------------------------------------------------------------------------------------
14
override
void
HandlerAttached
(
Widget
w)
15
{
16
super.HandlerAttached(w);
17
18
m_wIcon
=
m_wRoot
.FindAnyWidget(
"ContentImage"
);
19
AnimateWidget
.
Color
(
m_wBackground
,
COLOR_BACKGROUND_DEFAULT
,
m_fAnimationRate
);
20
ColorizeCheckWidget
();
21
}
22
23
//------------------------------------------------------------------------------------------------
24
override
bool
OnClick
(
Widget
w,
int
x,
int
y,
int
button)
25
{
26
super.OnClick(w, x, y, button);
27
if
(button != 0)
28
return
false
;
29
30
SetSelected
(!m_bIsSelected);
31
return
false
;
32
}
33
34
//------------------------------------------------------------------------------------------------
35
override
bool
OnMouseEnter
(
Widget
w,
int
x,
int
y)
36
{
37
if
(
m_bMouseOverToFocus
)
38
GetGame
().GetWorkspace().SetFocusedWidget(w);
39
40
PlaySound
(
m_sSoundHovered
);
41
42
if
(
GetGame
().GetWorkspace().GetFocusedWidget() != w)
43
AnimateWidget
.
Color
(
m_wBackground
,
COLOR_BACKGROUND_HOVERED
,
m_fAnimationRate
);
44
45
return
false
;
46
}
47
48
//------------------------------------------------------------------------------------------------
49
override
bool
OnMouseLeave
(
Widget
w,
Widget
enterW,
int
x,
int
y)
50
{
51
AnimateWidget
.
Color
(
m_wBackground
,
COLOR_BACKGROUND_DEFAULT
,
m_fAnimationRate
);
52
return
false
;
53
}
54
55
//------------------------------------------------------------------------------------------------
56
override
bool
OnFocus
(
Widget
w,
int
x,
int
y)
57
{
58
AnimateWidget
.
Opacity
(
m_wBackground
, 1,
m_fAnimationRate
);
59
PlaySound
(
m_sSoundHovered
);
60
return
false
;
61
}
62
63
//------------------------------------------------------------------------------------------------
64
override
bool
OnFocusLost
(
Widget
w,
int
x,
int
y)
65
{
66
AnimateWidget
.
Opacity
(
m_wBackground
, 0,
m_fAnimationRate
);
67
return
false
;
68
}
69
70
//------------------------------------------------------------------------------------------------
71
override
protected
void
OnMenuSelect
()
72
{
73
if
(!
m_wRoot
.IsEnabled())
74
return
;
75
76
super.OnMenuSelect();
77
ColorizeCheckWidget
();
78
}
79
80
//------------------------------------------------------------------------------------------------
81
override
protected
void
ColorizeWidgets
(
Color
colorBackground,
Color
colorContent,
float
speed = -1)
82
{
83
if
(speed < 0)
84
speed =
m_fAnimationRate
;
85
}
86
87
//------------------------------------------------------------------------------------------------
89
protected
void
ColorizeCheckWidget
()
90
{
91
if
(m_bIsSelected)
92
AnimateWidget
.
Color
(
m_wIcon
,
COLOR_BACKGROUND_CLICKED
,
m_fAnimationRate
);
93
else
94
AnimateWidget
.
Color
(
m_wIcon
,
COLOR_CONTENT_DEFAULT
,
m_fAnimationRate
);
95
}
96
97
//------------------------------------------------------------------------------------------------
98
bool
IsSelected
()
99
{
100
return
m_bIsSelected;
101
}
102
103
//------------------------------------------------------------------------------------------------
104
void
SetSelected
(
bool
selected,
bool
notify =
true
)
105
{
106
if
(m_bIsSelected == selected)
107
return
;
108
109
m_bIsSelected = selected;
110
111
ColorizeCheckWidget
();
112
113
if
(notify)
114
m_OnChanged.Invoke(
this
,
m_wRoot
, m_bIsSelected);
115
}
116
117
//------------------------------------------------------------------------------------------------
118
void
ShowButton
()
119
{
120
AnimateWidget
.
Opacity
(
m_wRoot
, 1,
m_fAnimationRate
);
121
AnimateWidget
.
Opacity
(
m_wBackground
, 1,
m_fAnimationRate
);
122
}
123
124
//------------------------------------------------------------------------------------------------
125
void
HideButton
()
126
{
127
AnimateWidget
.
Opacity
(
m_wBackground
, 0,
m_fAnimationRate
);
128
if
(!m_bIsSelected)
129
AnimateWidget
.
Opacity
(
m_wRoot
, 0,
m_fAnimationRate
);
130
}
131
};
GetGame
ArmaReforgerScripted GetGame()
Definition
game.c:1398
m_wRoot
Widget m_wRoot
Definition
SCR_GameModeCleanSweep.c:25
AnimateWidget
Definition
AnimateWidget.c:3
AnimateWidget::Opacity
static WidgetAnimationOpacity Opacity(Widget widget, float targetValue, float speed, bool toggleVisibility=false)
Definition
AnimateWidget.c:167
AnimateWidget::Color
static WidgetAnimationColor Color(Widget widget, Color color, float speed)
Definition
AnimateWidget.c:200
Color
Definition
Color.c:13
SCR_ButtonBaseComponent::m_wBackground
Widget m_wBackground
Definition
SCR_ButtonBaseComponent.c:47
SCR_ButtonComponent
Deprecated button component. Still used in many prefabs, so it works, it's just stripped of most of t...
Definition
SCR_ButtonComponent.c:5
SCR_ButtonComponent::COLOR_BACKGROUND_CLICKED
ref Color COLOR_BACKGROUND_CLICKED
Definition
SCR_ButtonComponent.c:15
SCR_ButtonComponent::COLOR_BACKGROUND_HOVERED
ref Color COLOR_BACKGROUND_HOVERED
Definition
SCR_ButtonComponent.c:13
SCR_ButtonComponent::COLOR_BACKGROUND_DEFAULT
ref Color COLOR_BACKGROUND_DEFAULT
Definition
SCR_ButtonComponent.c:12
SCR_ButtonComponent::COLOR_CONTENT_DEFAULT
ref Color COLOR_CONTENT_DEFAULT
Definition
SCR_ButtonComponent.c:17
SCR_SelectableTileButtonComponent
Definition
SCR_SelectableTileButtonComponent.c:3
SCR_SelectableTileButtonComponent::HideButton
void HideButton()
Definition
SCR_SelectableTileButtonComponent.c:125
SCR_SelectableTileButtonComponent::IsSelected
bool IsSelected()
Definition
SCR_SelectableTileButtonComponent.c:98
SCR_SelectableTileButtonComponent::COLOR_CHECKED_TRUE
ref Color COLOR_CHECKED_TRUE
Definition
SCR_SelectableTileButtonComponent.c:10
SCR_SelectableTileButtonComponent::OnFocusLost
override bool OnFocusLost(Widget w, int x, int y)
Definition
SCR_SelectableTileButtonComponent.c:64
SCR_SelectableTileButtonComponent::OnMouseEnter
override bool OnMouseEnter(Widget w, int x, int y)
Definition
SCR_SelectableTileButtonComponent.c:35
SCR_SelectableTileButtonComponent::COLOR_CHECKED_FALSE
ref Color COLOR_CHECKED_FALSE
Definition
SCR_SelectableTileButtonComponent.c:11
SCR_SelectableTileButtonComponent::SetSelected
void SetSelected(bool selected, bool notify=true)
Definition
SCR_SelectableTileButtonComponent.c:104
SCR_SelectableTileButtonComponent::OnMouseLeave
override bool OnMouseLeave(Widget w, Widget enterW, int x, int y)
Definition
SCR_SelectableTileButtonComponent.c:49
SCR_SelectableTileButtonComponent::OnFocus
override bool OnFocus(Widget w, int x, int y)
Definition
SCR_SelectableTileButtonComponent.c:56
SCR_SelectableTileButtonComponent::OnClick
override bool OnClick(Widget w, int x, int y, int button)
Definition
SCR_SelectableTileButtonComponent.c:24
SCR_SelectableTileButtonComponent::m_wIcon
Widget m_wIcon
Definition
SCR_SelectableTileButtonComponent.c:8
SCR_SelectableTileButtonComponent::HandlerAttached
override void HandlerAttached(Widget w)
Definition
SCR_SelectableTileButtonComponent.c:14
SCR_SelectableTileButtonComponent::OnMenuSelect
void OnMenuSelect()
Definition
SCR_SelectableTileButtonComponent.c:71
SCR_SelectableTileButtonComponent::ColorizeCheckWidget
void ColorizeCheckWidget()
Set color of checked line.
Definition
SCR_SelectableTileButtonComponent.c:89
SCR_SelectableTileButtonComponent::ColorizeWidgets
void ColorizeWidgets(Color colorBackground, Color colorContent, float speed=-1)
Definition
SCR_SelectableTileButtonComponent.c:81
SCR_SelectableTileButtonComponent::m_bIsTriggered
bool m_bIsTriggered
Definition
SCR_SelectableTileButtonComponent.c:6
SCR_SelectableTileButtonComponent::ShowButton
void ShowButton()
Definition
SCR_SelectableTileButtonComponent.c:118
SCR_WLibComponentBase::m_fAnimationRate
float m_fAnimationRate
Definition
SCR_WLibComponentBase.c:28
SCR_WLibComponentBase::m_bMouseOverToFocus
bool m_bMouseOverToFocus
Definition
SCR_WLibComponentBase.c:23
SCR_WLibComponentBase::PlaySound
void PlaySound(string sound)
Definition
SCR_WLibComponentBase.c:123
SCR_WLibComponentBase::m_sSoundHovered
string m_sSoundHovered
Definition
SCR_WLibComponentBase.c:11
UIColors
Definition
Constants.c:17
Widget
Definition
Widget.c:13
ScriptInvoker
ScriptInvokerBase< func > ScriptInvoker
Definition
tools.c:134
scripts
Game
UI
Components
WidgetLibrary
SCR_SelectableTileButtonComponent.c
Generated by
1.17.0