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_AddonUpdateConfirmationDialog.c
Go to the documentation of this file.
1
7
8
//------------------------------------------------------------------------------------------------
9
class
SCR_AddonUpdateConfirmationDialog
:
SCR_DownloadConfirmationDialog
10
{
11
//------------------------------------------------------------------------------------------------
13
static
SCR_AddonUpdateConfirmationDialog
CreateForUpdates(notnull array<ref Tuple2<SCR_WorkshopItem, ref Revision>> addonsAndVersions,
bool
subscribeToAddons)
14
{
15
SCR_DownloadConfirmationDialog
dlg =
new
SCR_AddonUpdateConfirmationDialog
();
16
17
SetupDownloadDialogAddons
(dlg, addonsAndVersions, subscribeToAddons);
18
19
SCR_ConfigurableDialogUi
.
CreateFromPreset
(
SCR_WorkshopDialogs
.DIALOGS_CONFIG,
"download_confirmation"
, dlg);
20
21
dlg.
SetStyleDownloadAddons
();
22
23
return
SCR_AddonUpdateConfirmationDialog
.Cast(dlg);
24
}
25
26
//------------------------------------------------------------------------------------------------
27
protected
override
void
CreateAddonList
()
28
{
29
// Create lines for other addons
30
m_Widgets
.m_OtherAddonsSection.SetVisible(!
m_aDependencies
.IsEmpty());
31
if
(!
m_aDependencies
.IsEmpty())
32
{
33
// Not downloaded - not avaiable offline
34
array<ref SCR_WorkshopItem> missingAddons =
SCR_AddonManager
.
SelectItemsBasic
(
m_aDependencies
,
EWorkshopItemQuery
.NOT_OFFLINE);
35
36
foreach
(
SCR_WorkshopItem
missing : missingAddons)
37
{
38
CreateAddonWidget
(missing,
m_Widgets
.m_OtherAddonsList);
39
}
40
41
// Version difference
42
array<ref SCR_WorkshopItem> versionDifferences =
SCR_AddonManager
.
SelectItemsAnd
(
43
m_aDependencies
,
44
EWorkshopItemQuery
.UPDATE_AVAILABLE |
EWorkshopItemQuery
.OFFLINE);
45
46
int
vDifCount = versionDifferences.Count();
47
bool
hasDifference = vDifCount > 0;
48
49
// Display version difference widgets
50
m_Widgets
.m_UpdateAddonsList.SetVisible(hasDifference);
51
m_Widgets
.m_UpdateAddonsMessage.SetVisible(hasDifference);
52
53
if
(hasDifference)
54
{
55
// Create woidgets
56
foreach
(
SCR_WorkshopItem
addon : versionDifferences)
57
{
58
if
(!addon.IsDownloadRunning())
59
CreateAddonWidget
(addon,
m_Widgets
.m_UpdateAddonsList);
60
}
61
62
// Version change text
63
m_Widgets
.m_UpdateAddonsMessage.SetTextFormat(
"#AR-Workshop_Dialog_ConfirmDownload_VersionDifferences"
, vDifCount);
64
}
65
}
66
}
67
68
//------------------------------------------------------------------------------------------------
70
protected
override
void
CreateAddonWidget
(notnull
SCR_WorkshopItem
dep,
Widget
listRoot)
71
{
72
Widget
w =
GetGame
().GetWorkspace().CreateWidgets(
DOWNLOAD_LINE_LAYOUT
, listRoot);
73
SCR_DownloadManager_AddonDownloadLine
comp =
SCR_DownloadManager_AddonDownloadLine
.Cast(w.FindHandler(
SCR_DownloadManager_AddonDownloadLine
));
74
75
// Setup addon revision
76
Revision
revision = dep.GetLatestRevision();
77
78
//Revision revision = dep.GetDependency().GetRevision();
79
comp.
InitForWorkshopItem
(dep, revision);
80
}
81
}
GetGame
ArmaReforgerScripted GetGame()
Definition
game.c:1398
EWorkshopItemQuery
EWorkshopItemQuery
Definition
SCR_AddonManager.c:35
Revision
Definition
Revision.c:13
SCR_AddonManager
Definition
SCR_AddonManager.c:80
SCR_AddonManager::SelectItemsBasic
static array< ref SCR_WorkshopItem > SelectItemsBasic(array< ref SCR_WorkshopItem > items, EWorkshopItemQuery query)
Definition
SCR_AddonManager.c:304
SCR_AddonManager::SelectItemsAnd
static array< ref SCR_WorkshopItem > SelectItemsAnd(array< ref SCR_WorkshopItem > items, EWorkshopItemQuery query)
Definition
SCR_AddonManager.c:338
SCR_AddonUpdateConfirmationDialog
Definition
SCR_AddonUpdateConfirmationDialog.c:10
SCR_AddonUpdateConfirmationDialog::CreateAddonList
override void CreateAddonList()
Definition
SCR_AddonUpdateConfirmationDialog.c:27
SCR_AddonUpdateConfirmationDialog::CreateAddonWidget
override void CreateAddonWidget(notnull SCR_WorkshopItem dep, Widget listRoot)
Create and setup addon widget text and verions.
Definition
SCR_AddonUpdateConfirmationDialog.c:70
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_DownloadConfirmationDialog
Dialog for confirming multiple downloads in workshop.
Definition
SCR_DownloadConfirmationDialog.c:4
SCR_DownloadConfirmationDialog::SetupDownloadDialogAddons
static void SetupDownloadDialogAddons(notnull out SCR_DownloadConfirmationDialog dialog, notnull array< ref Tuple2< SCR_WorkshopItem, ref Revision > > addonsAndVersions, bool subscribeToAddons)
Definition
SCR_DownloadConfirmationDialog.c:47
SCR_DownloadConfirmationDialog::DOWNLOAD_LINE_LAYOUT
const ResourceName DOWNLOAD_LINE_LAYOUT
Definition
SCR_DownloadConfirmationDialog.c:5
SCR_DownloadConfirmationDialog::SetStyleDownloadAddons
void SetStyleDownloadAddons()
Hides all explanation text.
Definition
SCR_DownloadConfirmationDialog.c:257
SCR_DownloadConfirmationDialog::m_Widgets
ref SCR_DownloadConfirmationDialogContentWidgets m_Widgets
Definition
SCR_DownloadConfirmationDialog.c:11
SCR_DownloadConfirmationDialog::m_aDependencies
ref array< ref SCR_WorkshopItem > m_aDependencies
Definition
SCR_DownloadConfirmationDialog.c:8
SCR_DownloadManager_AddonDownloadLine
Definition
SCR_DownloadManager_AddonDownloadLine.c:9
SCR_DownloadManager_AddonDownloadLine::InitForWorkshopItem
void InitForWorkshopItem(SCR_WorkshopItem item, Revision versionTo=null, bool showVersionAndSize=true)
Initializes the line in passive mode. It will just show basic information once.
Definition
SCR_DownloadManager_AddonDownloadLine.c:135
SCR_WorkshopDialogs
Definition
SCR_WorkshopDialogs.c:7
SCR_WorkshopItem
Definition
SCR_WorkshopItem.c:28
Widget
Definition
Widget.c:13
scripts
Game
UI
Menu
ContentBrowser
Common
Dialogs
SCR_AddonUpdateConfirmationDialog.c
Generated by
1.17.0