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_EditorSaveLoadUIComponent.c
Go to the documentation of this file.
1
class
SCR_EditorSaveLoadUIComponent
:
SCR_SaveDialogUIComponent
2
{
3
//------------------------------------------------------------------------------------------------
4
override
protected
void
OnConfirm
(
SCR_InputButtonComponent
button,
string
actionName)
5
{
6
// Save dialogs
7
if
(!
m_bIsLoad
)
8
{
9
string
customName =
m_Widgets
.m_SaveNameInputComponent0.GetValue();
10
/*if (!GetGame().GetSaveManager().FileExists(m_eWriteSaveType, customName))
11
{
12
//--- Creating a new file - save directly
13
OnConfirmPrompt();
14
return;
15
}*/
16
17
//--- Confirm prompt
18
m_ConfirmPrompt
=
SCR_ConfigurableDialogUi
.
CreateFromPreset
(
SCR_CommonDialogs
.DIALOGS_CONFIG,
m_sConfirmPrompt
);
19
m_ConfirmPrompt
.m_OnConfirm.Insert(
OnConfirmPrompt
);
20
m_ConfirmPrompt
.SetTitle(customName);
21
return
;
22
}
23
24
//--- Loading a file leads to restart, ask first
25
26
Widget
focusedEntry =
GetGame
().GetWorkspace().GetFocusedWidget();
27
SCR_SaveLoadEntryComponent
entry =
m_mComponentEntries
.Get(focusedEntry);
28
if
(!entry)
29
return
;
30
31
SaveGame
save = entry.
GetSaveData
();
32
const
string
displayName =
GetSaveDisplayName
(save);
33
if
(!save.IsSavePointGameVersionCompatible())
34
{
35
// Warning - incompatible version
36
m_LoadBadVersionPrompt
=
SCR_ConfigurableDialogUi
.
CreateFromPreset
(
SCR_CommonDialogs
.DIALOGS_CONFIG,
m_sLoadBadVersionPrompt
);
37
m_LoadBadVersionPrompt
.m_OnConfirm.Insert(
LoadEntry
);
38
m_LoadBadVersionPrompt
.SetTitle(displayName);
39
return
;
40
}
41
42
if
(!save.AreSavePointAddonsCompatible())
43
{
44
// Warning - incompatible addons
45
m_LoadBadAddonsPrompt
=
SCR_ConfigurableDialogUi
.
CreateFromPreset
(
SCR_CommonDialogs
.DIALOGS_CONFIG,
m_sLoadBadAddonsPrompt
);
46
m_LoadBadAddonsPrompt
.m_OnConfirm.Insert(
LoadEntry
);
47
m_LoadBadAddonsPrompt
.SetTitle(displayName);
48
return
;
49
}
50
51
//--- Confirm prompt
52
m_ConfirmPrompt
=
SCR_ConfigurableDialogUi
.
CreateFromPreset
(
SCR_CommonDialogs
.DIALOGS_CONFIG,
m_sConfirmPrompt
);
53
m_ConfirmPrompt
.m_OnConfirm.Insert(
OnConfirmPrompt
);
54
m_ConfirmPrompt
.SetTitle(displayName);
55
}
56
57
//------------------------------------------------------------------------------------------------
58
override
protected
void
SaveEntry
()
59
{
60
const
string
customName =
m_Widgets
.m_SaveNameInputComponent0.GetValue();
61
62
ESaveGameRequestFlags
flags
;
63
if
(
RplSession
.Mode() ==
RplMode
.None)
64
flags
=
ESaveGameRequestFlags
.BLOCKING;
65
66
GetGame
().GetSaveGameManager().RequestSavePoint(
ESaveGameType
.MANUAL, customName,
flags
);
67
}
68
69
//------------------------------------------------------------------------------------------------
70
override
protected
void
OnDeletePrompt
()
71
{
72
if
(
m_SelectedSave
)
73
GetGame
().GetSaveGameManager().Delete(
m_SelectedSave
,
new
SaveGameOperationCallback
(
OnSaveDeleted
,
m_SelectedSave
));
74
75
super.OnDeletePrompt();
76
}
77
78
//------------------------------------------------------------------------------------------------
79
protected
void
OnSaveDeleted
(
bool
success, Managed context)
80
{
81
if
(!success)
82
return
;
83
84
auto
save =
SaveGame
.Cast(context);
85
if
(save)
86
RemoveSaveEntry
(save);
87
}
88
89
//------------------------------------------------------------------------------------------------
90
override
protected
void
LoadEntry
()
91
{
92
if
(!
m_SelectedSave
)
93
return
;
94
95
GetGame
().GetSaveGameManager().Load(
m_SelectedSave
);
96
97
/*
98
SCR_ServerSaveRequestCallback uploadCallback = saveManager.GetUploadCallback();
99
if (uploadCallback)
100
{
101
uploadCallback.SetOnSuccess(OnLoadEntryUploadResponse);
102
uploadCallback.SetOnError(OnLoadEntryUploadError);
103
m_LoadingOverlay = SCR_LoadingOverlayDialog.Create();
104
}
105
*/
106
}
107
108
//------------------------------------------------------------------------------------------------
109
override
protected
void
SelectEntry
(
Widget
w,
SCR_SaveLoadEntryComponent
entryComponent)
110
{
111
super.SelectEntry(w, entryComponent);
112
113
const
string
customName =
GetSaveDisplayName
(entryComponent);
114
m_Widgets
.m_SaveNameInputComponent0.SetValue(customName);
115
}
116
117
//------------------------------------------------------------------------------------------------
118
override
protected
void
UpdateButtons
()
119
{
120
if
(
m_mComponentEntries
.IsEmpty())
121
{
122
m_Widgets
.m_DeleteButtonComponent.SetVisible(
false
);
123
m_Widgets
.m_OverrideButtonComponent.SetVisible(
false
);
124
m_Widgets
.m_ConfirmButtonComponent.SetVisible(
false
);
125
return
;
126
}
127
128
string
customName =
m_Widgets
.m_SaveNameInputComponent0.GetValue();
129
bool
isValid = !customName.IsEmpty();
130
bool
isOverride =
false
;
131
132
if
(
m_bIsLoad
)
133
{
134
m_Widgets
.m_DeleteButtonComponent.SetVisible(
m_SelectedSave
!= null);
135
m_Widgets
.m_DeleteButtonComponent.SetEnabled(
m_SelectedSave
!= null);
136
}
137
else
138
{
139
m_Widgets
.m_DeleteButtonComponent.SetVisible(isOverride);
140
m_Widgets
.m_DeleteButtonComponent.SetEnabled(isOverride);
141
}
142
143
m_Widgets
.m_OverrideButtonComponent.SetVisible(isOverride,
false
);
144
m_Widgets
.m_OverrideButtonComponent.SetEnabled(isOverride && isValid);
145
146
m_Widgets
.m_ConfirmButtonComponent.SetVisible(!isOverride,
false
);
147
m_Widgets
.m_ConfirmButtonComponent.SetEnabled(!isOverride && isValid);
148
}
149
}
flags
SCR_EAIThreatSectorFlags flags
Definition
AIControlComponentSerializer.c:16
GetGame
ArmaReforgerScripted GetGame()
Definition
game.c:1398
RplMode
RplMode
Mode of replication.
Definition
RplMode.c:9
RplSession
Definition
RplSession.c:8
SCR_CommonDialogs
Definition
CommonDialogs.c:6
SCR_ConfigurableDialogUi
Definition
SCR_ConfigurableDialogUI.c:17
SCR_ConfigurableDialogUi::CreateFromPreset
static SCR_ConfigurableDialogUi CreateFromPreset(ResourceName presetsResourceName, string tag, SCR_ConfigurableDialogUi customDialogObj=null)
Creates a dialog from preset.
Definition
SCR_ConfigurableDialogUI.c:94
SCR_EditorSaveLoadUIComponent
Definition
SCR_EditorSaveLoadUIComponent.c:2
SCR_EditorSaveLoadUIComponent::LoadEntry
void LoadEntry()
Definition
SCR_EditorSaveLoadUIComponent.c:90
SCR_EditorSaveLoadUIComponent::OnConfirm
void OnConfirm(SCR_InputButtonComponent button, string actionName)
Definition
SCR_EditorSaveLoadUIComponent.c:4
SCR_EditorSaveLoadUIComponent::OnSaveDeleted
void OnSaveDeleted(bool success, Managed context)
Definition
SCR_EditorSaveLoadUIComponent.c:79
SCR_EditorSaveLoadUIComponent::SaveEntry
void SaveEntry()
Definition
SCR_EditorSaveLoadUIComponent.c:58
SCR_EditorSaveLoadUIComponent::SelectEntry
void SelectEntry(Widget w, SCR_SaveLoadEntryComponent entryComponent)
Definition
SCR_EditorSaveLoadUIComponent.c:109
SCR_EditorSaveLoadUIComponent::UpdateButtons
void UpdateButtons()
Definition
SCR_EditorSaveLoadUIComponent.c:118
SCR_EditorSaveLoadUIComponent::OnDeletePrompt
void OnDeletePrompt()
Definition
SCR_EditorSaveLoadUIComponent.c:70
SCR_InputButtonComponent
Definition
SCR_InputButtonComponent.c:2
SCR_SaveDialogUIComponent
Definition
SCR_SaveDialogUIComponent.c:6
SCR_SaveDialogUIComponent::RemoveSaveEntry
void RemoveSaveEntry(notnull SaveGame save)
Definition
SCR_SaveDialogUIComponent.c:103
SCR_SaveDialogUIComponent::m_LoadBadVersionPrompt
SCR_ConfigurableDialogUi m_LoadBadVersionPrompt
Definition
SCR_SaveDialogUIComponent.c:48
SCR_SaveDialogUIComponent::m_Widgets
ref SCR_EditorSaveDialogWidgets m_Widgets
Definition
SCR_SaveDialogUIComponent.c:41
SCR_SaveDialogUIComponent::OnConfirmPrompt
void OnConfirmPrompt()
Definition
SCR_SaveDialogUIComponent.c:68
SCR_SaveDialogUIComponent::m_ConfirmPrompt
SCR_ConfigurableDialogUi m_ConfirmPrompt
Definition
SCR_SaveDialogUIComponent.c:46
SCR_SaveDialogUIComponent::m_bIsLoad
bool m_bIsLoad
Definition
SCR_SaveDialogUIComponent.c:8
SCR_SaveDialogUIComponent::m_sLoadBadAddonsPrompt
string m_sLoadBadAddonsPrompt
Definition
SCR_SaveDialogUIComponent.c:32
SCR_SaveDialogUIComponent::m_sLoadBadVersionPrompt
string m_sLoadBadVersionPrompt
Definition
SCR_SaveDialogUIComponent.c:29
SCR_SaveDialogUIComponent::m_SelectedSave
SaveGame m_SelectedSave
Definition
SCR_SaveDialogUIComponent.c:44
SCR_SaveDialogUIComponent::m_LoadBadAddonsPrompt
SCR_ConfigurableDialogUi m_LoadBadAddonsPrompt
Definition
SCR_SaveDialogUIComponent.c:49
SCR_SaveDialogUIComponent::GetSaveDisplayName
string GetSaveDisplayName(SCR_SaveLoadEntryComponent saveEntry)
Definition
SCR_SaveDialogUIComponent.c:301
SCR_SaveDialogUIComponent::m_mComponentEntries
ref map< Widget, SCR_SaveLoadEntryComponent > m_mComponentEntries
Definition
SCR_SaveDialogUIComponent.c:37
SCR_SaveDialogUIComponent::m_sConfirmPrompt
string m_sConfirmPrompt
Definition
SCR_SaveDialogUIComponent.c:23
SCR_SaveLoadEntryComponent
Definition
SCR_SaveLoadEntryComponent.c:6
SCR_SaveLoadEntryComponent::GetSaveData
SaveGame GetSaveData()
Definition
SCR_SaveLoadEntryComponent.c:219
SaveGame
Definition
SaveGame.c:13
SaveGameOperationCallback
Definition
SaveGameOperationCallback.c:14
Widget
Definition
Widget.c:13
ESaveGameRequestFlags
ESaveGameRequestFlags
Definition
ESaveGameRequestFlags.c:13
ESaveGameType
ESaveGameType
Definition
ESaveGameType.c:13
scripts
Game
Editor
UI
Components
Save
SCR_EditorSaveLoadUIComponent.c
Generated by
1.17.0