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 18 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 23 24 namespace gnash { 25 26 class string_table; // Forward 27 28 /// Named String Values 29 // 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 { 49 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, 134 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 277 }; 278 279 /// Load the prenamed strings. 280 void loadStrings(string_table &table); 281 282 } // namespace NSV 283 } // namespace gnash 284 285 #endif // GNASH_NAMED_STRINGS_H 286 287