5 protected const ResourceName LINE_LAYOUT =
"{6D73127FB096229D}UI/layouts/Menus/ContentBrowser/DownloadManager/ReportedAddonEntry.layout";
11 protected const string MSG_AUTHOR =
"#AR-Workshop_FilterCategory_Author";
78 ref array<WorkshopAuthor> blockedAuthors = {};
83 if (item.GetBlocked())
91 if (item.GetModAuthorReportedByMe())
96 if (!blockedAuthors.Contains(author))
99 blockedAuthors.Insert(author);
105 if (item.GetReportedByMe())
123 protected SCR_ModularButtonComponent
CreateEntry(
string name,
string message)
131 SCR_ModularButtonComponent button = SCR_ModularButtonComponent.Cast(entry.FindHandler(SCR_ModularButtonComponent));
153 SCR_ModularButtonComponent button =
CreateEntry(item.GetName(), msg);
167 Print(
"Item wasn't found or set!");
232 Print(
"Author wasn't found or set!");
295 array<WorkshopItem> items = {};
296 author.GetPageItems(items);
299 array<ref SCR_WorkshopItem> scrItems;
305 scrItems.Insert(scrItem);
311 dialog.GetMessageWidget().SetTextFormat(
312 "#AR-Workshop_CancelAuthorReport" +
"\n\n" +
"#AR-Workshop_AffectedMods",
m_LoadingAuthor.Name());
376 button.GetRootWidget().SetFlags(
WidgetFlags.NOFOCUS);
404 Widget w = button.GetRootWidget();
405 SCR_ModularButtonComponent line = SCR_ModularButtonComponent.Cast(w.FindHandler(SCR_ModularButtonComponent));
440 SCR_ModularButtonComponent button = SCR_MapHelper<SCR_ModularButtonComponent, SCR_WorkshopItem>.GetKeyByValue(
m_mButtonsItems, action.GetWorkshopItem());
471 if (button.GetRootWidget().IsFocusable())
473 GetGame().GetWorkspace().SetFocusedWidget(button.GetRootWidget());
481 if (button.GetRootWidget().IsFocusable())
483 GetGame().GetWorkspace().SetFocusedWidget(button.GetRootWidget());
ArmaReforgerScripted GetGame()
ref array< ref SCR_WorkshopItem > m_aItems
void SCR_AddonListDialog(array< ref SCR_WorkshopItem > items, string preset)
SCR_WorkshopItem Register(WorkshopItem item)
Returns a SCR_WorkshopItem. If it's not registered, creates a new one and registers it.
static SCR_AddonManager GetInstance()
Dialog which sends a request to delete user's report.
ref ScriptInvoker m_OnCancel
static SCR_ConfigurableDialogUi CreateFromPreset(ResourceName presetsResourceName, string tag, SCR_ConfigurableDialogUi customDialogObj=null)
Creates a dialog from preset.
TextWidget GetMessageWidget()
SCR_InputButtonComponent FindButton(string tag)
Returns a button with given tag.
ref ScriptInvoker m_OnConfirm
ref ScriptInvoker m_OnClose
Configuration for a dialog.
static SCR_LoadingOverlayDialog Create(string text=string.Empty)
Show list of reported mods and provide option to cancel reports.
void OnReportDialogClose(SCR_ConfigurableDialogUi dialog)
Call this on closing any report dialog to set repot list focus.
const string AUTHOR_UNBLOCK_TAG
const string STR_FIXED_REPORT
void OpenAuthorModsDialog(WorkshopAuthor author)
void OnCancelReportFail(SCR_WorkshopItemActionCancelReport action)
void OnCancelReportConfirm(SCR_ConfigurableDialogUi dialog)
void InvokeOnAllReportsCanceled()
void CreateAddonEntry(notnull SCR_WorkshopItem item)
Create addon entry with message based on type.
ref map< SCR_ModularButtonComponent, WorkshopAuthor > m_mButtonsAuthors
void OnCancelReportSuccess(SCR_WorkshopItemActionCancelReport action)
const ResourceName LINE_LAYOUT
const string AUTHOR_REPORT_TAG
SCR_ModularButtonComponent CreateEntry(string name, string message)
Create entry with specific reported author.
SCR_LoadingOverlayDialog m_LoadingOvelay
ScriptInvoker GetOnAllReportsCanceled()
const string WIDGET_DETAIL
void OnAddonReportLoadError(SCR_WorkshopItem item)
void OnRemoveAuthorBlockResponse()
void CreateAuthorEntry(notnull WorkshopAuthor author)
Create entry with reported author.
void OnAuthorReportLoadResponse()
void OnCancelReportActived()
Start to canceling report of currently focused mod.
override void OnConfirm()
void DisplayReportCancelSuccess(notnull SCR_ModularButtonComponent button)
void OnAddonLineFocus(SCR_ModularButtonComponent button)
Show details of addon line report when focused.
ref map< SCR_ModularButtonComponent, SCR_WorkshopItem > m_mButtonsItems
const string UNBLOCK_AUTHOR_MESSAGE
ref BackendCallback m_ReportCallback
void OnRemoveAuthorBlockError()
void OnAddonEntrySelected(SCR_ModularButtonComponent button)
void OnConfirmRemoveAuthorBlock(SCR_ConfigurableDialogUi dialog)
override void OnMenuOpen(SCR_ConfigurableDialogUiPreset preset)
const ResourceName DIALOGS_CONFIG
const int AUTHOR_MOD_LIMIT
ref SCR_CancelMyReportDialog m_DialogCancelReport
SCR_ModularButtonComponent m_LineFocused
ref ScriptInvoker< SCR_ReportedAddonsDialog > Event_OnAllReportsCanceled
void AllButtonsCanceled()
void AuthorBlockCancelDialog()
void OnCancelReportDialog(SCR_ConfigurableDialogUi dialog)
WorkshopAuthor m_LoadingAuthor
SCR_InputButtonComponent m_NavCancelReport
void OnAuthorReportLoadError()
void OnAuthorEntrySelected(SCR_ModularButtonComponent button)
const string BUTTON_CANCEL_REPORT
void OnAddonReportLoadSuccess(SCR_WorkshopItem item)
void OnCancelRemoveAuthorReport(SCR_ConfigurableDialogUi dialog)
const string WIDGET_MESSAGE
void SetMessages(string left, string right)
Action for canceling report of an item.
void LoadReport()
Loads report of current user from backend. Subscribe to m_OnMyReportLoaded to get result.
static string GetRestrictedAddonStateText(SCR_WorkshopItem item)
Returns string such as "Banned" or "Reported" for a restricted item. Otherwise returns empty string.
proto void Print(void var, LogLevel level=LogLevel.NORMAL)
Prints content of variable to console/log.
WidgetFlags
Widget flags. See enf::Widget::SetFlags().