comparison GUIWindow.h @ 0:9c0607679772

init
author Ritor1
date Sat, 12 Jan 2013 09:45:18 +0600
parents
children 89240115d392
comparison
equal deleted inserted replaced
-1:000000000000 0:9c0607679772
1 #pragma once
2 #include "GUIButton.h"
3
4
5
6
7
8 /* 251 */
9 enum MENU_STATE : __int32
10 {
11 MENU_MAIN = 0x0,
12 MENU_NEWGAME = 0x1,
13 MENU_CREDITS = 0x2,
14 MENU_SAVELOAD = 0x3,
15 MENU_FINISHED = 0x4,
16 MENU_5 = 0x5,
17 MENU_CREATEPARTY = 0x6,
18 MENU_7 = 0x7,
19 MENU_Credits = 0x8,
20 MENU_LOAD = 0x9,
21 MENU_10 = 0xA,
22 };
23
24
25
26
27
28
29
30
31
32 /* 298 */
33 enum WindowType: unsigned __int32
34 {
35 WINDOW_null = 0,
36 WINDOW_MainMenu = 0x1,
37 WINDOW_CharacterRecord = 0x4,
38 WINDOW_Options = 0x6,
39 WINDOW_Book = 0x9,
40 WINDOW_A = 10,
41 WINDOW_11 = 17,
42 WINDOW_12 = 18,
43 WINDOW_13 = 19,
44 WINDOW_Chest = 0x14,
45 WINDOW_MainMenu_Load = 0x18,
46 WINDOW_HouseInterior = 0x19,
47 WINDOW_1A = 26,
48 WINDOW_1B = 27,
49 WINDOW_1E = 30,
50 WINDOW_1F = 31,
51 WINDOW_FinalWindow = 0x46,
52 WINDOW_5A = 0x5A,
53 WINDOW_5E = 0x5E,
54 WINDOW_KeyMappingOptions = 0x69,
55 WINDOW_VideoOptions = 0x6A
56 };
57
58 /* 155 */
59 #pragma pack(push, 1)
60 struct GUIWindow
61 {
62 GUIButton *CreateButton(unsigned int uX, unsigned int uY, unsigned int uWidth, unsigned int uHeight, int a6, int a7, unsigned int uControlID, unsigned int uControlParam, unsigned __int8 uHotkey, const char *pName, Texture *pTextures, ...);
63 void DrawFlashingInputCursor(signed int a3, int a4, struct GUIFont *a2);
64 int DrawTextInRect(GUIFont *a2, unsigned int uX, unsigned int uY, unsigned int uColor, const char *Str1, int Source, int a8);
65 char DrawText(GUIFont *a2, signed int uX, int uY, unsigned int uFontColor, const char *Str, int a7, int a8, unsigned int uFontShadowColor);
66 char *DrawTitleText(GUIFont *a2, unsigned int uHorizontalMargin, unsigned int uVerticalMargin, unsigned __int16 uDefaultColor, const char *pInString, unsigned int uLineSpacing);
67 char *_4B1854(__int64 a2);
68 void _4B3157();
69 GUIButton *_411621();
70 void InitializeBookView();
71 void DrawMessageBox(int arg0);
72 GUIButton *GetControl(unsigned int uID);
73 void Release();
74 void _41D08F(int a2, int a3, int a4, int a5);
75 char DrawQuickCharRecord();
76 char _41D73D_draw_buff_tooltip();
77
78 static GUIWindow *Create(unsigned int uX, unsigned int uY, unsigned int uWidth, unsigned int uHeight, enum WindowType eType, int a4, int a5);
79
80 unsigned int uFrameX;
81 unsigned int uFrameY;
82 unsigned int uFrameWidth;
83 unsigned int uFrameHeight;
84 unsigned int uFrameZ;
85 unsigned int uFrameW;
86 WindowType eWindowType;
87 void *ptr_1C;
88 unsigned int uNumControls;
89 int field_24;
90 int pNumPresenceButton;
91 int pCurrentPosActiveItem;
92 int field_30;
93 int field_34;
94 int pStartingPosActiveItem;
95 int field_3C;
96 int field_40;
97 int field_44;
98 char *Hint;
99 GUIButton *pControlsHead;
100 GUIButton *pControlsTail;
101 };
102 #pragma pack(pop)
103
104
105
106
107
108
109 /* 296 */
110 enum UIMessageType
111 {
112 UIMSG_00 = 0x0,
113 UIMSG_ChangeGameState = 0x5,
114 UIMSG_PlayArcomage = 0x1D,
115 UIMSG_MainMenu_ShowPartyCreationWnd = 0x36,
116 UIMSG_MainMenu_ShowLoadWindow = 0x37,
117 UIMSG_ShowCredits = 0x38,
118 UIMSG_ExitToWindows = 0x39,
119 UIMSG_3C = 0x3C,
120 UIMSG_PlayerCreationClickPlus = 0x3E,
121 UIMSG_PlayerCreationClickMinus = 0x3F,
122 UIMSG_PlayerCreationSelectActiveSkill = 0x40,
123 UIMSG_PlayerCreationSelectClass = 0x41,
124 UIMSG_PlayerCreationClickOK = 0x42,
125 UIMSG_PlayerCreationClickReset = 0x43,
126 UIMSG_PlayerCreationRemoveUpSkill = 0x4A,
127 UIMSG_PlayerCreationRemoveDownSkill = 0x4B,
128 UIMSG_4B = 0x4B,
129 UIMSG_LoadGame = 0x52,
130 UIMSG_SaveGame = 0x53,
131 UIMSG_ShowStatus_DateTime = 0x5C,
132 UIMSG_ShowStatus_ManaHP = 0x5D,
133 UIMSG_ShowStatus_Player = 0x5E,
134 UIMSG_ShowStatus_Food = 0x64,
135 UIMSG_ShowStatus_Funds = 0x65,
136 UIMSG_6B = 0x6B,
137 UIMSG_SelectCharacter = 0x6E,
138 UIMSG_ChangeSoundVolume = 0x6F,
139 UIMSG_ChangeMusicVolume = 0x70,
140 UIMSG_CloseBook = 0x71,
141 UIMSG_PlayerCreationSelectQuality = 0x76,
142 UIMSG_SkillUp = 0x79,
143 UIMSG_StartNewGame = 0x7C,
144 UIMSG_Game_OpenLoadGameDialog = 0x7D,
145 UIMSG_Game_OpenOptionsDialog = 0x7F,
146 UIMSG_SetGraphicsMode = 0x83,
147 UIMSG_Quit = 0x84,
148 UIMSG_PlayerCreationVoiceBack = 0x90,
149 UIMSG_PlayerCreationVoiceForward = 0x91,
150 UIMSG_StartNPCDialogue = 0xA1,
151 UIMSG_A2 = 0xA2,
152 UIMSG_A3 = 0xA3,
153 UIMSG_A4 = 0xA4,
154 UIMSG_A5 = 0xA5,
155 UIMSG_A6 = 0xA6,
156 UIMSG_A7 = 0xA7,
157 UIMSG_A8 = 0xA8,
158 UIMSG_A9 = 0xA9,
159 UIMSG_AA = 0xAA,
160 UIMSG_SelectFacePlayerBack = 0xAB,
161 UIMSG_SelectFacePlayerForward = 0xAC,
162 UIMSG_AD = 0xAD,
163 UIMSG_AE = 0xAE,
164 UIMSG_AF = 0xAF,
165 UIMSG_CycleCharacters = 0xB0,
166 UIMSG_B1 = 0xB1,
167 UIMSG_B2 = 0xB2,
168 UIMSG_B3 = 0xB3,
169 UIMSG_B4 = 0xB4,
170 UIMSG_B5 = 0xB5,
171 UIMSG_B6 = 0xB6,
172 UIMSG_B7 = 0xB7,
173 UIMSG_SetTurnSpeed = 0xB8,
174 UIMSG_ToggleWalkSound = 0xB9,
175 UIMSG_ChangeVoiceVolume = 0xBA,
176 UIMSG_ToggleShowDamage = 0xBB,
177 UIMSG_BC = 0xBC,
178 UIMSG_BD = 0xBD,
179 UIMSG_BE = 0xBE,
180 UIMSG_BF = 0xBF,
181 UIMSG_C0 = 0xC0,
182 UIMSG_C1 = 0xC1,
183 UIMSG_C2 = 0xC2,
184 UIMSG_C3 = 0xC3,
185 UIMSG_C4 = 0xC4,
186 UIMSG_ShowFinalWindow = 0xC5,
187 UIMSG_C6 = 0xC6,
188 UIMSG_C7 = 0xC7,
189 UIMSG_OpenQuestBook = 0xC8,
190 UIMSG_OpenAutonotes = 0xC9,
191 UIMSG_OpenMapBook = 0xCA,
192 UIMSG_OpenCalendar = 0xCB,
193 UIMSG_CC = 0xCC,
194 UIMSG_CD = 0xCD,
195 UIMSG_CE = 0xCE,
196 UIMSG_CF = 0xCF,
197 UIMSG_D0 = 0xD0,
198 UIMSG_D1 = 0xD1,
199 UIMSG_D2 = 0xD2,
200 UIMSG_D3 = 0xD3,
201 UIMSG_D4 = 0xD4,
202 UIMSG_D5 = 0xD5,
203 UIMSG_D6 = 0xD6,
204 UIMSG_OpenHistoryBook = 0xE0,
205 UIMSG_ToggleAlwaysRun = 0xE1,
206 UIMSG_ToggleFlipOnExit = 0xE2,
207 UIMSG_OpenRestUI = 0x199,
208 UIMSG_OpenKeyMappingOptions = 0x19F,
209 UIMSG_ResetKeyMapping = 0x1A2,
210 UIMSG_OpenVideoOptions = 0x1A5,
211 UIMSG_ToggleBloodsplats = 0x1A6,
212 UIMSG_ToggleColoredLights = 0x1A7,
213 UIMSG_ToggleTint = 0x1A8,
214 };
215
216
217
218
219
220
221 /* 249 */
222 #pragma pack(push, 1)
223 struct GUIMessage
224 {
225 enum UIMessageType eType;
226 int param;
227 int field_8;
228 };
229 #pragma pack(pop)
230
231
232
233
234
235 /* 250 */
236 #pragma pack(push, 1)
237 struct GUIMessageQueue
238 {
239 inline GUIMessageQueue():
240 uNumMessages(0)
241 {}
242
243 void PopMessage(UIMessageType *pMsg, int *pParam, int *a4);
244 void SendMessage(UIMessageType msg, int param, unsigned int a4);
245
246 unsigned int uNumMessages;
247 GUIMessage pMessages[40];
248 };
249 #pragma pack(pop)
250
251 extern struct GUIMessageQueue *pMessageQueue_50CBD0; // idb
252
253
254
255
256 extern int pWindowList_at_506F50_minus1_indexing_buttons____and_an_int_[]; // idb
257 extern struct GUIWindow *pWindow_MainMenu;
258 extern struct GUIWindow pWindowList[20];