ScummVM API documentation
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
dctypes.h
1 /* ScummVM - Graphic Adventure Engine
2  *
3  * ScummVM is the legal property of its developers, whose names
4  * are too numerous to list here. Please refer to the COPYRIGHT
5  * file distributed with this source distribution.
6  *
7  * This program is free software: you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation, either version 3 of the License, or
10  * (at your option) any later version.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program. If not, see <http://www.gnu.org/licenses/>.
19  *
20  */
21 
22 /*
23  * This file is based on WME Lite.
24  * http://dead-code.org/redir.php?target=wmelite
25  * Copyright (c) 2011 Jan Nedoma
26  */
27 
28 #ifndef WINTERMUTE_DCTYPES_H
29 #define WINTERMUTE_DCTYPES_H
30 
31 
32 #include "common/str.h"
33 #include "common/ustr.h"
34 #include "common/list.h"
35 #include "common/array.h"
36 
37 namespace Wintermute {
38 
39 typedef Common::String AnsiString;
40 typedef Common::String Utf8String;
41 typedef Common::U32String WideString;
42 
43 typedef Common::List<WideString> WideStringList;
44 typedef Common::List<AnsiString> AnsiStringList;
45 
46 typedef Common::Array<WideString> WideStringArray;
47 typedef Common::Array<AnsiString> AnsiStringArray;
48 
49 
50 enum TGameState {
51  GAME_RUNNING,
52  GAME_FROZEN,
53  GAME_SEMI_FROZEN
54 };
55 
56 
57 enum TImageType {
58  IMG_PALETTED8,
59  IMG_TRUECOLOR
60 };
61 
62 
63 enum TTextAlign {
64  TAL_LEFT = 0,
65  TAL_RIGHT,
66  TAL_CENTER,
67  NUM_TEXT_ALIGN
68 };
69 
70 
71 enum TVerticalAlign {
72  VAL_TOP = 0,
73  VAL_CENTER,
74  VAL_BOTTOM,
75  NUM_VERTICAL_ALIGN
76 };
77 
78 
79 enum TDirection {
80  DI_UP = 0,
81  DI_UPRIGHT = 1,
82  DI_RIGHT = 2,
83  DI_DOWNRIGHT = 3,
84  DI_DOWN = 4,
85  DI_DOWNLEFT = 5,
86  DI_LEFT = 6,
87  DI_UPLEFT = 7,
88  NUM_DIRECTIONS = 8,
89  DI_NONE = 9
90 };
91 
92 enum TEventType {
93  EVENT_NONE = 0,
94  EVENT_INIT = 1,
95  EVENT_SHUTDOWN = 2,
96  EVENT_LEFT_CLICK = 3,
97  EVENT_RIGHT_CLICK = 4,
98  EVENT_MIDDLE_CLICK = 5,
99  EVENT_LEFT_DBLCLICK = 6,
100  EVENT_PRESS = 7,
101  EVENT_IDLE = 8,
102  EVENT_MOUSE_OVER = 9,
103  EVENT_LEFT_RELEASE = 10,
104  EVENT_RIGHT_RELEASE = 11,
105  EVENT_MIDDLE_RELEASE = 12,
106  NUM_EVENTS
107 };
108 
109 enum TUIObjectType {
110  UI_UNKNOWN,
111  UI_BUTTON,
112  UI_WINDOW,
113  UI_STATIC,
114  UI_EDIT,
115  UI_HTML,
116  UI_CUSTOM
117 };
118 
119 
120 enum TRendererState {
121  RSTATE_3D,
122  RSTATE_2D,
123  RSTATE_LINES,
124  RSTATE_NONE
125 };
126 
127 
128 enum TDynamicConstructor {
129  DYNAMIC_CONSTRUCTOR
130 };
131 
132 
133 enum TVideoMode {
134  VIDEO_WINDOW,
135  VIDEO_FULLSCREEN,
136  VIDEO_ANY
137 };
138 
139 
140 enum TVideoPlayback {
141  VID_PLAY_POS = 0,
142  VID_PLAY_STRETCH = 1,
143  VID_PLAY_CENTER = 2
144 };
145 
146 
147 enum TMouseEvent {
148  MOUSE_CLICK,
149  MOUSE_RELEASE,
150  MOUSE_DBLCLICK
151 };
152 
153 
154 enum TMouseButton {
155  MOUSE_BUTTON_LEFT,
156  MOUSE_BUTTON_RIGHT,
157  MOUSE_BUTTON_MIDDLE
158 };
159 
160 
161 enum TTransMgrState {
162  TRANS_MGR_RUNNING,
163  TRANS_MGR_READY
164 };
165 
166 
167 enum TTransitionType {
168  TRANSITION_NONE = 0,
169  TRANSITION_FADE_OUT = 1,
170  TRANSITION_FADE_IN = 2,
171  NUM_TRANSITION_TYPES
172 };
173 
174 
175 enum TWindowMode {
176  WINDOW_NORMAL,
177  WINDOW_EXCLUSIVE,
178  WINDOW_SYSTEM_EXCLUSIVE
179 };
180 
181 enum TSFXType {
182  SFX_NONE,
183  SFX_ECHO,
184  SFX_REVERB
185 };
186 
187 
188 enum TSpriteCacheType {
189  CACHE_ALL,
190  CACHE_HALF
191 };
192 
193 enum TTextCharset {
194  CHARSET_ANSI = 0,
195  CHARSET_DEFAULT = 1,
196  CHARSET_OEM = 2,
197  CHARSET_BALTIC = 3,
198  CHARSET_CHINESEBIG5 = 4,
199  CHARSET_EASTEUROPE = 5,
200  CHARSET_GB2312 = 6,
201  CHARSET_GREEK = 7,
202  CHARSET_HANGUL = 8,
203  CHARSET_MAC = 9,
204  CHARSET_RUSSIAN = 10,
205  CHARSET_SHIFTJIS = 11,
206  CHARSET_SYMBOL = 12,
207  CHARSET_TURKISH = 13,
208  CHARSET_VIETNAMESE = 14,
209  CHARSET_JOHAB = 15,
210  CHARSET_ARABIC = 16,
211  CHARSET_HEBREW = 17,
212  CHARSET_THAI = 18
213 };
214 
215 enum TTextEncoding {
216  TEXT_ANSI = 0,
217  TEXT_UTF8 = 1,
218  NUM_TEXT_ENCODINGS
219 };
220 
221 enum TTTSType {
222  TTS_CAPTION = 0,
223  TTS_TALK,
224  TTS_KEYPRESS
225 };
226 
227 enum TShadowType {
228  SHADOW_NONE = 0,
229  SHADOW_SIMPLE = 1,
230  SHADOW_FLAT = 2,
231  SHADOW_STENCIL = 3
232 };
233 
234 } // End of namespace Wintermute
235 
236 #endif
Definition: str.h:59
Definition: array.h:52
Definition: list.h:44
Definition: ustr.h:57
Definition: achievements_tables.h:27