Dayz Explorer 1.28.160049
Loading...
Searching...
No Matches
rightarea.c
Go to the documentation of this file.
2{
3 ref PlayerContainer m_PlayerContainer;
4 protected Widget m_ContentParent;
5
6 protected Widget m_SlotsHeader;
7 protected Widget m_SlotsContent;
8 protected ScrollWidget m_ScrollWidget;
9 protected Widget m_UpIcon;
10 protected Widget m_DownIcon;
11
12 protected ref SizeToChild m_ContentResize;
13 protected bool m_ShouldChangeSize = true;
14 protected bool m_ProcessGridMovement;
15
17 {
18 m_MainWidget.Show(true);
19
20 m_SlotsHeader = m_MainWidget.FindAnyWidget("SlotsHeader");
21 m_SlotsContent = m_MainWidget.FindAnyWidget("SlotsContent");
22 m_ScrollWidget = ScrollWidget.Cast(m_MainWidget.FindAnyWidget("Scroller"));
23 m_MainWidget = m_MainWidget.FindAnyWidget("Content");
24 //m_ContentParent = m_RootWidget.FindAnyWidget("ContentParent");
25 m_PlayerContainer = new PlayerContainer(this, false);
26 m_PlayerContainer.SetPlayer(PlayerBase.Cast(GetGame().GetPlayer()));
27 m_Body.Insert(m_PlayerContainer);
28 m_ActiveIndex = 0;
30
31 m_UpIcon = m_RootWidget.FindAnyWidget("Up");
32 m_DownIcon = m_RootWidget.FindAnyWidget("Down");
33
34 //m_ContentParent.GetScript(m_ContentResize);
35
36 RecomputeOpenedContainers();
37 }
38
40 {
41 return m_PlayerContainer;
42 }
43
44 override void DraggingOverHeader(Widget w, int x, int y, Widget receiver)
45 {
46 m_PlayerContainer.DraggingOverHeader(w, x, y, receiver);
47 }
48
49 override bool Select()
50 {
51 return m_PlayerContainer.Select();
52 }
53
54 override bool SelectItem()
55 {
56 return m_PlayerContainer.SelectItem();
57 }
58
59 override bool Combine()
60 {
61 return m_PlayerContainer.Combine();
62 }
63
64 override bool SplitItem()
65 {
66 return m_PlayerContainer.SplitItem();
67 }
68
69 override bool EquipItem()
70 {
71 return m_PlayerContainer.EquipItem();
72 }
73
74 override bool TransferItem()
75 {
76 return m_PlayerContainer.TransferItem();
77 }
78
79 override bool InspectItem()
80 {
81 return m_PlayerContainer.InspectItem();
82 }
83
84 override bool TransferItemToVicinity()
85 {
86 return m_PlayerContainer.TransferItemToVicinity();
87 }
88
89 override void UnfocusGrid()
90 {
91 m_PlayerContainer.UnfocusGrid();
92 }
93
94 override bool CanTakeToInventory()
95 {
96 return false;
97 }
98
99 override bool CanTakeToInventoryEx(EntityAI focusedEntity)
100 {
101 return false;
102 }
103
105 {
106 return m_PlayerContainer.HasEntityContainerVisible(entity);
107 }
108
109 void SwapItemsInOrder(int slot1, int slot2)
110 {
111 m_PlayerContainer.SwapItemsInOrder(slot1, slot2);
112 }
113
115 {
116 return m_PlayerContainer.IsPlayerEquipmentActive();
117 }
118
120 {
121 super.SetSameLevelNextActive();
122 Refresh();
123 }
124
126 {
127 super.SetSameLevelPreviousActive();
128 Refresh();
129 }
130
132 {
133 m_PlayerContainer.ExpandCollapseContainer();
134 }
135
136 override void Refresh()
137 {
138 m_ScrollWidget.Update();
139 m_PlayerContainer.Refresh();
140 m_ShouldChangeSize = true;
141 }
142
143 override void SetLayoutName()
144 {
145 #ifdef PLATFORM_CONSOLE
146 m_LayoutName = WidgetLayoutName.RightAreaXbox;
147 #else
148 switch (InventoryMenu.GetWidthType())
149 {
150 case ScreenWidthType.NARROW:
151 m_LayoutName = WidgetLayoutName.RightAreaNarrow;
152 break;
153 case ScreenWidthType.MEDIUM:
154 m_LayoutName = WidgetLayoutName.RightAreaMedium;
155 break;
156 case ScreenWidthType.WIDE:
157 m_LayoutName = WidgetLayoutName.RightAreaWide;
158 break;
159 }
160 #endif
161
162 }
163
164 override void SetParentWidget()
165 {
166 m_ParentWidget = m_Parent.GetMainWidget().FindAnyWidget("RightPanel");
167 }
168
169 override void OnShow()
170 {
171 super.OnShow();
172 Refresh();
173 }
174
175 override void UpdateInterval()
176 {
177 super.UpdateInterval();
178 m_PlayerContainer.UpdateInterval();
179
180 CheckScrollbarVisibility();
181 }
182
184 {
185 if (m_UpIcon && m_DownIcon)
186 {
187 m_UpIcon.Show( m_IsActive );
188 m_DownIcon.Show( m_IsActive );
189 if( m_IsActive )
190 {
191 float x, y;
192 m_UpIcon.GetScreenSize( x, y );
193
194 float top_y = GetCurrentContainerTopY();
195 m_UpIcon.SetPos( 0, Math.Clamp( top_y, 0, 99999 ) );
196
197 #ifndef PLATFORM_CONSOLE
198 float x2, y2;
199 m_DownIcon.GetScreenSize( x2, y2 );
200 float bottom_y = GetCurrentContainerBottomY() - y2;
201
202 float diff = bottom_y - ( top_y + y );
203 if( diff < 0 )
204 {
205 top_y += diff / 2;
206 bottom_y -= diff / 2;
207 }
208 m_DownIcon.SetPos( 0, bottom_y );
209 #endif
210 }
211 }
212 /*else
213 {
214 ErrorEx("up/down icons not present!");
215 }
216 #else
217 m_ScrollWidget.Update();
218 #endif*/
219
220 }
221
222 override ScrollWidget GetScrollWidget()
223 {
224 return m_ScrollWidget;
225 }
226
227 override void UpdateSelectionIcons()
228 {
229 #ifdef PLATFORM_CONSOLE
230 ScrollToActiveContainer();
231 #endif
233 }
234
236 {
237 float x, y;
238 GetMainWidget().Update();
239 GetMainWidget().GetScreenPos( x, y );
240 float cont_screen_pos = GetFocusedContainerYScreenPos();
241
242 return cont_screen_pos - y;
243 }
244
246 {
247 float x, y;
248 GetMainWidget().Update();
249 GetMainWidget().GetScreenPos( x, y );
250
251 float cont_screen_pos = GetFocusedContainerYScreenPos();
252 float cont_screen_height = GetFocusedContainerHeight();
253 return cont_screen_pos - y + cont_screen_height;
254 }
255
257 {
258 return m_SlotsContent;
259 }
260
262 {
263 return m_SlotsHeader;
264 }
265}
Widget m_ParentWidget
override float GetFocusedContainerHeight(bool contents=false)
override float GetFocusedContainerYScreenPos(bool contents=false)
Definition enmath.c:7
override void SetSameLevelNextActive()
Definition rightarea.c:119
override bool TransferItem()
Definition rightarea.c:74
override void DraggingOverHeader(Widget w, int x, int y, Widget receiver)
Definition rightarea.c:44
override bool InspectItem()
Definition rightarea.c:79
override void Refresh()
Definition rightarea.c:136
bool m_ProcessGridMovement
Definition rightarea.c:14
Widget m_DownIcon
Definition rightarea.c:10
void SwapItemsInOrder(int slot1, int slot2)
Definition rightarea.c:109
override void UpdateInterval()
Definition rightarea.c:175
Widget GetSlotsArea()
Definition rightarea.c:256
void RightArea(LayoutHolder parent)
Definition rightarea.c:16
bool IsPlayerEquipmentActive()
Definition rightarea.c:114
override bool CanTakeToInventory()
Definition rightarea.c:94
override bool TransferItemToVicinity()
Definition rightarea.c:84
override bool CanTakeToInventoryEx(EntityAI focusedEntity)
Definition rightarea.c:99
override void ExpandCollapseContainer()
Definition rightarea.c:131
float GetCurrentContainerBottomY()
Definition rightarea.c:245
override void SetSameLevelPreviousActive()
Definition rightarea.c:125
Widget m_UpIcon
Definition rightarea.c:9
float GetCurrentContainerTopY()
Definition rightarea.c:235
override void SetLayoutName()
Definition rightarea.c:143
PlayerContainer GetPlayerContainer()
Definition rightarea.c:39
bool HasEntityContainerVisible(EntityAI entity)
Definition rightarea.c:104
Widget m_ContentParent
Definition rightarea.c:4
Widget GetSlotsHeader()
Definition rightarea.c:261
override bool Combine()
Definition rightarea.c:59
ScrollWidget m_ScrollWidget
Definition rightarea.c:8
override void OnShow()
Definition rightarea.c:169
override bool SplitItem()
Definition rightarea.c:64
override bool Select()
Definition rightarea.c:49
override bool SelectItem()
Definition rightarea.c:54
override bool EquipItem()
Definition rightarea.c:69
Widget m_SlotsHeader
Definition rightarea.c:6
void MoveUpDownIcons()
Definition rightarea.c:183
override void SetParentWidget()
Definition rightarea.c:164
override void UpdateSelectionIcons()
Definition rightarea.c:227
override ScrollWidget GetScrollWidget()
Definition rightarea.c:222
Widget m_SlotsContent
Definition rightarea.c:7
ref SizeToChild m_ContentResize
Definition rightarea.c:12
override void UnfocusGrid()
Definition rightarea.c:89
bool m_ShouldChangeSize
Definition rightarea.c:13
proto native CGame GetGame()
Icon x
Icon y
ScreenWidthType
void InventoryMenu()
bool m_IsActive
PlayerBase GetPlayer()
ref Widget m_RootWidget[MAX_SIMULTANIOUS_PLAYERS]
Widget m_Parent
Definition sizetochild.c:92