Survivalcraft API 1.8.2.3
v1.8.2.3
Survivalcraft 2.4
载入中...
搜索中...
未找到
EditAdjustableDelayGateDialog.cs
浏览该文件的文档.
1
using
System.Xml.Linq;
2
using
Engine
;
3
4
namespace
Game
{
5
public
class
EditAdjustableDelayGateDialog
:
Dialog
{
6
public
SliderWidget
m_delaySlider
;
7
public
ButtonWidget
m_plusButton
;
8
public
ButtonWidget
m_minusButton
;
9
public
LabelWidget
m_delayLabel
;
10
public
ButtonWidget
m_okButton
;
11
public
ButtonWidget
m_cancelButton
;
12
13
public
Action<int>
m_handler
;
14
public
int
m_delay
;
15
16
public
EditAdjustableDelayGateDialog
(
int
delay, Action<int> handler) {
17
XElement node =
ContentManager
.
Get
<XElement>(
"Dialogs/EditAdjustableDelayGateDialog"
);
18
LoadContents
(
this
, node);
19
m_delaySlider
=
Children
.Find<
SliderWidget
>(
"EditAdjustableDelayGateDialog.DelaySlider"
);
20
m_plusButton
=
Children
.Find<
ButtonWidget
>(
"EditAdjustableDelayGateDialog.PlusButton"
);
21
m_minusButton
=
Children
.Find<
ButtonWidget
>(
"EditAdjustableDelayGateDialog.MinusButton"
);
22
m_delayLabel
=
Children
.Find<
LabelWidget
>(
"EditAdjustableDelayGateDialog.Label"
);
23
m_okButton
=
Children
.Find<
ButtonWidget
>(
"EditAdjustableDelayGateDialog.OK"
);
24
m_cancelButton
=
Children
.Find<
ButtonWidget
>(
"EditAdjustableDelayGateDialog.Cancel"
);
25
m_handler
= handler;
26
m_delay
= delay;
27
UpdateControls
();
28
}
29
30
public
override
void
Update
() {
31
if
(
m_delaySlider
.IsSliding) {
32
m_delay
= (int)
m_delaySlider
.Value;
33
}
34
if
(
m_minusButton
.IsClicked) {
35
m_delay
=
MathUtils
.
Max
(
m_delay
- 1, (
int
)
m_delaySlider
.MinValue);
36
}
37
if
(
m_plusButton
.IsClicked) {
38
m_delay
=
MathUtils
.
Min
(
m_delay
+ 1, (
int
)
m_delaySlider
.MaxValue);
39
}
40
if
(
m_okButton
.IsClicked) {
41
Dismiss
(
m_delay
);
42
}
43
if
(
Input
.Cancel
44
||
m_cancelButton
.IsClicked) {
45
Dismiss
(
null
);
46
}
47
UpdateControls
();
48
}
49
50
public
virtual
void
UpdateControls
() {
51
m_delaySlider.Value =
m_delay
;
52
m_minusButton.IsEnabled =
m_delay
>
m_delaySlider
.MinValue;
53
m_plusButton.IsEnabled =
m_delay
<
m_delaySlider
.MaxValue;
54
m_delayLabel.Text =
string
.Format(
LanguageControl
.
Get
(
"EditAdjustableDelayGateDialog"
, 1), Math.Round((
m_delay
+ 1) * 0.01f, 2));
55
}
56
57
public
void
Dismiss
(
int
? result) {
58
DialogsManager
.
HideDialog
(
this
);
59
if
(
m_handler
!=
null
60
&& result.HasValue) {
61
m_handler
(result.Value);
62
}
63
}
64
}
65
}
Engine.MathUtils
定义
MathUtils.cs:2
Engine.MathUtils.Min
static int Min(int x1, int x2)
定义
MathUtils.cs:7
Engine.MathUtils.Max
static int Max(int x1, int x2)
定义
MathUtils.cs:18
Game.ButtonWidget
定义
ButtonWidget.cs:5
Game.ContainerWidget.Children
readonly WidgetsList Children
定义
ContainerWidget.cs:5
Game.ContentManager
定义
ContentManager.cs:50
Game.ContentManager.Get
static object Get(Type type, string name)
定义
ContentManager.cs:70
Game.Dialog.Dialog
Dialog()
定义
Dialog.cs:5
Game.DialogsManager
定义
DialogsManager.cs:4
Game.DialogsManager.HideDialog
static void HideDialog(Dialog dialog)
定义
DialogsManager.cs:58
Game.EditAdjustableDelayGateDialog.m_delay
int m_delay
定义
EditAdjustableDelayGateDialog.cs:14
Game.EditAdjustableDelayGateDialog.m_minusButton
ButtonWidget m_minusButton
定义
EditAdjustableDelayGateDialog.cs:8
Game.EditAdjustableDelayGateDialog.m_okButton
ButtonWidget m_okButton
定义
EditAdjustableDelayGateDialog.cs:10
Game.EditAdjustableDelayGateDialog.m_delaySlider
SliderWidget m_delaySlider
定义
EditAdjustableDelayGateDialog.cs:6
Game.EditAdjustableDelayGateDialog.EditAdjustableDelayGateDialog
EditAdjustableDelayGateDialog(int delay, Action< int > handler)
定义
EditAdjustableDelayGateDialog.cs:16
Game.EditAdjustableDelayGateDialog.m_delayLabel
LabelWidget m_delayLabel
定义
EditAdjustableDelayGateDialog.cs:9
Game.EditAdjustableDelayGateDialog.Update
override void Update()
定义
EditAdjustableDelayGateDialog.cs:30
Game.EditAdjustableDelayGateDialog.m_plusButton
ButtonWidget m_plusButton
定义
EditAdjustableDelayGateDialog.cs:7
Game.EditAdjustableDelayGateDialog.m_cancelButton
ButtonWidget m_cancelButton
定义
EditAdjustableDelayGateDialog.cs:11
Game.EditAdjustableDelayGateDialog.UpdateControls
virtual void UpdateControls()
定义
EditAdjustableDelayGateDialog.cs:50
Game.EditAdjustableDelayGateDialog.m_handler
Action< int > m_handler
定义
EditAdjustableDelayGateDialog.cs:13
Game.EditAdjustableDelayGateDialog.Dismiss
void Dismiss(int? result)
定义
EditAdjustableDelayGateDialog.cs:57
Game.LabelWidget
定义
LabelWidget.cs:4
Game.LanguageControl
定义
LanguageControl.cs:8
Game.LanguageControl.Get
static string Get(string className, int key)
获取在当前语言类名键对应的字符串
定义
LanguageControl.cs:247
Game.SliderWidget
定义
SliderWidget.cs:6
Game.Widget.LoadContents
virtual void LoadContents(object eventsTarget, XElement node)
定义
Widget.cs:507
Engine.Input
定义
CursorType.cs:1
Engine
定义
BaseSound.cs:10
Game
定义
ContentFileBridge.cs:4
SurvivalcraftApi 1.8.2.3
Survivalcraft.Windows
Dialog
EditAdjustableDelayGateDialog.cs
制作者
1.16.1