Update with current status
[gnash.git] / libcore / namedStrings.h
blob28297b7fa1bb9a76822a02f9f71448a96c09fdcd
1 //
2 // Copyright (C) 2007, 2008, 2009, 2010, 2011, 2012
3 // Free Software Foundation, Inc.
4 //
5 // This program is free software; you can redistribute it and/or modify
6 // it under the terms of the GNU General Public License as published by
7 // the Free Software Foundation; either version 3 of the License, or
8 // (at your option) any later version.
9 //
10 // This program is distributed in the hope that it will be useful,
11 // but WITHOUT ANY WARRANTY; without even the implied warranty of
12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 // GNU General Public License for more details.
14 //
15 // You should have received a copy of the GNU General Public License
16 // along with this program; if not, write to the Free Software
17 // Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
19 // A file to contain all of the different strings for which we want compile time
20 // known string table keys.
21 #ifndef GNASH_NAMED_STRINGS_H
22 #define GNASH_NAMED_STRINGS_H
24 namespace gnash {
26 class string_table; // Forward
28 /// Named String Values
30 /// These are enumerations of the strings which should have known string
31 /// table values. They are the first strings added to the string table,
32 /// and the key will be equal to the enumeration.
33 ///
34 /// Lowercase letters in the enum value signal the format of the string
35 /// literals associated with these enums.
36 /// u: An underscore
37 /// For example: PROP_uuPROTOuu is "__proto__"
38 /// _: The next letter is capitalized
39 /// For example: PROP_ON_LOAD is "onLoad"
40 ///
41 /// Names beginning with PROP_ have a lowercase initial letter
42 /// Names beginning with CLASS_ have an uppercase initial letter
43 /// Names beginning with NS_ have a lowercase initial letter and _ are
44 /// . instead of uppercase.
45 ///
46 /// Names beginning with INTERNAL_ have no named string -- they can only
47 /// be used if you know their key value already.
48 namespace NSV {
50 /// All known lower-case names are grouped at the beginning
51 /// of the enum, followed by INTERNAL_HIGHEST_LOWERCASE.
52 /// WARNING: putting mixed-case names before
53 /// INTERNAL_HIGHEST_LOWERCASE introduces bugs !
54 /// (putting lower-case names after INTERNAL_HIGHEST_LOWERCASE
55 /// is fine, except for performance)
56 ///
57 enum NamedStrings {
58 PROP_A = 1,
59 PROP_ALIGN,
60 PROP_ARGUMENTS,
61 PROP_B,
62 PROP_BOLD,
63 PROP_C,
64 PROP_CALLEE,
65 PROP_CALLER,
66 PROP_COLOR,
67 PROP_CONCAT,
68 PROP_CONSTRUCTOR,
69 PROP_D,
70 PROP_DATA,
71 PROP_DECODE,
72 PROP_DURATION,
73 PROP_E,
74 PROP_ENABLED,
75 PROP_ESCAPE,
76 PROP_G,
77 PROP_H,
78 PROP_HEIGHT,
79 PROP_INDENT,
80 PROP_ITALIC,
81 PROP_LEADING,
82 PROP_LEFT_MARGIN,
83 PROP_LENGTH,
84 PROP_LOADED,
85 PROP_METH,
86 PROP_POSITION,
87 PROP_PROTOTYPE,
88 PROP_PUSH,
89 PROP_R,
90 PROP_SIZE,
91 PROP_SPLICE,
92 PROP_STATUS,
93 PROP_SUPER,
94 PROP_TARGET,
95 PROP_TEXT,
96 PROP_THIS,
97 PROP_TX,
98 PROP_TY,
99 PROP_uALPHA,
100 PROP_uCURRENTFRAME,
101 PROP_uDROPTARGET,
102 PROP_uFOCUSRECT,
103 PROP_uFRAMESLOADED,
104 PROP_uGLOBAL,
105 PROP_uHEIGHT,
106 PROP_uHIGHQUALITY,
107 PROP_uLISTENERS,
108 PROP_uNAME,
109 PROP_UNDERLINE,
110 PROP_uPARENT,
111 PROP_uQUALITY,
112 PROP_uROOT,
113 PROP_uROTATION,
114 PROP_uSOUNDBUFTIME,
115 PROP_uTARGET,
116 PROP_uTOTALFRAMES,
117 PROP_uuCONSTRUCTORuu,
118 PROP_uuPROTOuu,
119 PROP_uuRESOLVE,
120 PROP_uURL,
121 PROP_uVISIBLE,
122 PROP_uWIDTH,
123 PROP_uX,
124 PROP_uXMOUSE,
125 PROP_uXSCALE,
126 PROP_uY,
127 PROP_uYMOUSE,
128 PROP_uYSCALE,
129 PROP_W,
130 PROP_WIDTH,
131 PROP_X,
132 PROP_Y,
133 INTERNAL_HIGHEST_LOWERCASE,
135 PROP_ADD_LISTENER,
136 PROP_AS_NATIVE,
137 PROP_AS_SET_PROP_FLAGS,
138 PROP_BLOCK_INDENT,
139 PROP_BROADCAST_MESSAGE,
140 PROP_BULLET,
141 PROP_uBYTES_TOTAL,
142 PROP_uBYTES_LOADED,
143 PROP_CONTENT_TYPE,
144 PROP_FOCUS_ENABLED,
145 PROP_HTML_TEXT,
146 PROP_MATRIX_TYPE,
147 PROP_ON_CLOSE,
148 PROP_ON_CONNECT,
149 PROP_ON_CONSTRUCT,
150 PROP_ON_DATA,
151 PROP_ON_DRAG_OUT,
152 PROP_ON_DRAG_OVER,
153 PROP_ON_ENTER_FRAME,
154 PROP_ON_FULLSCREEN,
155 PROP_ON_INITIALIZE,
156 PROP_ON_KEY_DOWN,
157 PROP_ON_KEY_PRESS,
158 PROP_ON_KEY_UP,
159 PROP_ON_KILL_FOCUS,
160 PROP_ON_LOAD,
161 PROP_ON_LOAD_ERROR,
162 PROP_ON_LOAD_INIT,
163 PROP_ON_LOAD_PROGRESS,
164 PROP_ON_LOAD_START,
165 PROP_ON_META_DATA,
166 PROP_ON_MOUSE_DOWN,
167 PROP_ON_MOUSE_MOVE,
168 PROP_ON_MOUSE_UP,
169 PROP_ON_PRESS,
170 PROP_ON_RELEASE,
171 PROP_ON_RELEASE_OUTSIDE,
172 PROP_ON_RESIZE,
173 PROP_ON_RESULT,
174 PROP_ON_ROLL_OUT,
175 PROP_ON_ROLL_OVER,
176 PROP_ON_SELECT,
177 PROP_ON_SET_FOCUS,
178 PROP_ON_SOUND_COMPLETE,
179 PROP_ON_STATUS,
180 PROP_ON_TIMER,
181 PROP_ON_UNLOAD,
182 PROP_ON_XML,
183 PROP_PARSE_XML,
184 PROP_REMOVE_LISTENER,
185 PROP_RIGHT_MARGIN,
186 PROP_SCALE_MODE,
187 PROP_TEXT_COLOR,
188 PROP_TEXT_HEIGHT,
189 PROP_TEXT_WIDTH,
190 PROP_TO_LOWER_CASE,
191 PROP_TO_STRING,
192 PROP_uCUSTOM_HEADERS,
193 PROP_USEHANDCURSOR,
194 PROP_VALUE_OF,
195 PROP_ON_SYNC,
196 CLASS_ACCESSIBILITY,
197 CLASS_ANTIALIASTYPE,
198 CLASS_ARRAY,
199 CLASS_AS_BROADCASTER,
200 CLASS_BITMAP,
201 CLASS_BOOLEAN,
202 CLASS_BUTTON,
203 CLASS_CAMERA,
204 CLASS_COLOR,
205 CLASS_CONTEXTMENU,
206 CLASS_CONTEXTMENUITEM,
207 CLASS_CSMTEXTSETTINGS,
208 CLASS_DATE,
209 CLASS_DISPLAYOBJECT,
210 CLASS_DISPLAYOBJECTCONTAINER,
211 CLASS_ERROR,
212 CLASS_EVENT,
213 CLASS_EVENTDISPATCHER,
214 CLASS_FONT,
215 CLASS_FONTSTYLE,
216 CLASS_FUNCTION,
217 CLASS_GRIDFITTYPE,
218 CLASS_INT,
219 CLASS_INTERACTIVEOBJECT,
220 CLASS_KEY,
221 CLASS_KEYBOARD,
222 CLASS_LOAD_VARS,
223 CLASS_LOCALCONNECTION,
224 CLASS_MATH,
225 CLASS_MICROPHONE,
226 CLASS_MOUSE,
227 CLASS_MOVIE_CLIP,
228 CLASS_MOVIE_CLIP_LOADER,
229 CLASS_NAMESPACE,
230 CLASS_NET_CONNECTION,
231 CLASS_NET_STREAM,
232 CLASS_NUMBER,
233 CLASS_OBJECT,
234 CLASS_QNAME,
235 CLASS_SELECTION,
236 CLASS_SHAPE,
237 CLASS_SHARED_OBJECT,
238 CLASS_SIMPLE_BUTTON,
239 CLASS_SOUND,
240 CLASS_SPRITE,
241 CLASS_STAGE,
242 CLASS_STATICTEXT,
243 CLASS_STRING,
244 CLASS_STYLESHEET,
245 CLASS_SYSTEM,
246 CLASS_TEXTCOLORTYPE,
247 CLASS_TEXTDISPLAYMODE,
248 CLASS_TEXT_FIELD,
249 CLASS_TEXTFIELDTYPE,
250 CLASS_TEXT_FORMAT,
251 CLASS_TEXTFORMATALIGN,
252 CLASS_TEXT_SNAPSHOT,
253 CLASS_TEXTFIELDAUTOSIZE,
254 CLASS_TEXTLINEMETRICS,
255 CLASS_TEXTRENDERER,
256 CLASS_VIDEO,
257 CLASS_XML,
258 CLASS_XML_DOCUMENT,
259 CLASS_XMLNODE,
260 CLASS_XMLSOCKET,
261 NS_ADOBE_UTILS,
262 NS_FLASH_ACCESSIBILITY,
263 NS_FLASH_DISPLAY,
264 NS_FLASH_EVENTS,
265 NS_FLASH_ERRORS,
266 NS_FLASH_GEOM,
267 NS_FLASH_MEDIA,
268 NS_FLASH_NET,
269 NS_FLASH_SYSTEM,
270 NS_FLASH_TEXT,
271 NS_FLASH_UI,
272 NS_FLASH_UTILS,
273 NS_FLASH_XML,
274 INTERNAL_INTERFACES,
275 INTERNAL_STACK_PARENT, // Any public property is unsafe
276 INTERNAL_TYPE // The type name
279 /// Load the prenamed strings.
280 void loadStrings(string_table &table);
282 } // namespace NSV
283 } // namespace gnash
285 #endif // GNASH_NAMED_STRINGS_H