ScummVM API documentation
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
37namespace Wintermute {
38
39typedef Common::String AnsiString;
40typedef Common::String Utf8String;
41typedef Common::U32String WideString;
42
43typedef Common::List<WideString> WideStringList;
44typedef Common::List<AnsiString> AnsiStringList;
45
46typedef Common::Array<WideString> WideStringArray;
47typedef Common::Array<AnsiString> AnsiStringArray;
48
49
50enum TGameState {
51 GAME_RUNNING,
52 GAME_FROZEN,
53 GAME_SEMI_FROZEN
54};
55
56
57enum TImageType {
58 IMG_PALETTED8,
59 IMG_TRUECOLOR
60};
61
62
63enum TTextAlign {
64 TAL_LEFT = 0,
65 TAL_RIGHT,
66 TAL_CENTER,
67 NUM_TEXT_ALIGN
68};
69
70
71enum TVerticalAlign {
72 VAL_TOP = 0,
73 VAL_CENTER,
74 VAL_BOTTOM,
75 NUM_VERTICAL_ALIGN
76};
77
78
79enum 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
92enum 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
109enum 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
120enum TRendererState {
121 RSTATE_3D,
122 RSTATE_2D,
123 RSTATE_LINES,
124 RSTATE_NONE
125};
126
127
128enum TDynamicConstructor {
129 DYNAMIC_CONSTRUCTOR
130};
131
132
133typedef enum {
134 SOUND_SFX,
135 SOUND_MUSIC,
136 SOUND_SPEECH
137} TSoundType;
138
139enum TVideoMode {
140 VIDEO_WINDOW,
141 VIDEO_FULLSCREEN,
142 VIDEO_ANY
143};
144
145
146enum TVideoPlayback {
147 VID_PLAY_POS = 0,
148 VID_PLAY_STRETCH = 1,
149 VID_PLAY_CENTER = 2
150};
151
152
153enum TMouseEvent {
154 MOUSE_CLICK,
155 MOUSE_RELEASE,
156 MOUSE_DBLCLICK
157};
158
159
160enum TMouseButton {
161 MOUSE_BUTTON_LEFT,
162 MOUSE_BUTTON_RIGHT,
163 MOUSE_BUTTON_MIDDLE
164};
165
166
167enum TTransMgrState {
168 TRANS_MGR_RUNNING,
169 TRANS_MGR_READY
170};
171
172
173enum TTransitionType {
174 TRANSITION_NONE = 0,
175 TRANSITION_FADE_OUT = 1,
176 TRANSITION_FADE_IN = 2,
177 NUM_TRANSITION_TYPES
178};
179
180
181enum TWindowMode {
182 WINDOW_NORMAL,
183 WINDOW_EXCLUSIVE,
184 WINDOW_SYSTEM_EXCLUSIVE
185};
186
187enum TSFXType {
188 SFX_NONE,
189 SFX_ECHO,
190 SFX_REVERB
191};
192
193
194enum TSpriteCacheType {
195 CACHE_ALL,
196 CACHE_HALF
197};
198
199enum TTextCharset {
200 CHARSET_ANSI = 0,
201 CHARSET_DEFAULT = 1,
202 CHARSET_OEM = 2,
203 CHARSET_BALTIC = 3,
204 CHARSET_CHINESEBIG5 = 4,
205 CHARSET_EASTEUROPE = 5,
206 CHARSET_GB2312 = 6,
207 CHARSET_GREEK = 7,
208 CHARSET_HANGUL = 8,
209 CHARSET_MAC = 9,
210 CHARSET_RUSSIAN = 10,
211 CHARSET_SHIFTJIS = 11,
212 CHARSET_SYMBOL = 12,
213 CHARSET_TURKISH = 13,
214 CHARSET_VIETNAMESE = 14,
215 CHARSET_JOHAB = 15,
216 CHARSET_ARABIC = 16,
217 CHARSET_HEBREW = 17,
218 CHARSET_THAI = 18
219};
220
221enum TTextEncoding {
222 TEXT_ANSI = 0,
223 TEXT_UTF8 = 1,
224 NUM_TEXT_ENCODINGS
225};
226
227enum TTTSType {
228 TTS_CAPTION = 0,
229 TTS_TALK,
230 TTS_KEYPRESS
231};
232
233enum TShadowType {
234 SHADOW_NONE = 0,
235 SHADOW_SIMPLE = 1,
236 SHADOW_FLAT = 2,
237 SHADOW_STENCIL = 3
238};
239
240} // End of namespace Wintermute
241
242#endif
Definition: array.h:52
Definition: list.h:44
Definition: str.h:59
Definition: ustr.h:57