Arma Reforger Explorer 1.7.0.54
Arma Reforger Code Explorer by Zeroy - Thanks to MisterOutofTime
Loading...
Searching...
No Matches
SCR_InfoDisplayLayerHandler.c
Go to the documentation of this file.
3{
4 [Attribute()]
5 protected string m_sLayerName;
6
7 //------------------------------------------------------------------------------------------------
8 protected override void OnStart(notnull SCR_InfoDisplay display)
9 {
10 if (display.GetHandler(SCR_InfoDisplaySlotHandler) != null)
11 {
12 Print("Info Display cant have SCR_InfoDisplayLayerHandler & SCR_InfoDisplaySlotHandler co-exist as handlers!", LogLevel.ERROR);
13 return;
14 }
15
16 WorkspaceWidget workspace = GetGame().GetWorkspace();
17
19 if (!hudManager)
20 {
21 Print("No HUD Manager for Layer Slot: " + m_sLayerName, LogLevel.ERROR);
22 return;
23 }
24
26 if (!layoutHandler)
27 {
28 Print("Cant find SCR_HUDManagerLayoutHandler for Layer Slot: " + m_sLayerName, LogLevel.ERROR);
29 return;
30 }
31
32 SCR_HUDLayout owningLayout;
33 Widget layerSlotWidget = layoutHandler.FindWidgetByNameFromAnyLayout(m_sLayerName, owningLayout);
34 if (!layerSlotWidget)
35 {
36 Print("No Slot Widget for Layer Slot: " + m_sLayerName, LogLevel.ERROR);
37 return;
38 }
39
40 Widget rootWidget = workspace.CreateWidgets(display.m_LayoutPath, layerSlotWidget);
41 if (!rootWidget)
42 {
43 Print("Can't initialize Info Display on provided Slot Widget: " + m_sLayerName, LogLevel.ERROR);
44 return;
45 }
46
47 display.SetRootWidget(rootWidget);
48 display.SetContentWidget(rootWidget);
49
50 SCR_HUDElement hudElement = new SCR_HUDElement();
51 hudElement.SetWidget(rootWidget);
53 hudElement.SetParentLayout(owningLayout);
54 owningLayout.AddHudElement(hudElement, false);
55 display.RegisterToHudManager();
56 }
57}
ArmaReforgerScripted GetGame()
Definition game.c:1398
SCR_AIAnimation_Loitering BaseContainerProps
Commanding menu commanding element class.
void SetParentLayout(notnull SCR_HUDLayout parentLayout)
void SetWidget(notnull Widget widget)
void SetParentWidgetName(string parentWidgetName)
void AddHudElement(notnull SCR_HUDElement element, bool replaceParent=false)
SCR_HUDManagerHandler FindHandler(typename handlerType)
static SCR_HUDManagerComponent GetHUDManager()
Widget FindWidgetByNameFromAnyLayout(string widgetName, out SCR_HUDLayout foundLayout=null)
override void OnStart(notnull SCR_InfoDisplay display)
proto void Print(void var, LogLevel level=LogLevel.NORMAL)
Prints content of variable to console/log.
LogLevel
Enum with severity of the logging message.
Definition LogLevel.c:14
SCR_FieldOfViewSettings Attribute