1 /* -*- Mode: C; indent-tabs-mode: t; c-basic-offset: 8; tab-width: 8 -*- */ 2 /* 3 * Copyright (C) 2000 Helix Code, Inc. 4 * Copyright (C) 2001 Ximian, Inc. 5 * 6 * The Gnome Library is free software; you can redistribute it and/or 7 * modify it under the terms of the GNU Library General Public License as 8 * published by the Free Software Foundation; either version 2 of the 9 * License, or (at your option) any later version. 10 * 11 * The Gnome Library is distributed in the hope that it will be useful, 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 * Library General Public License for more details. 15 * 16 * You should have received a copy of the GNU Library General Public 17 * License along with the Gnome Library; see the file COPYING.LIB. If not, 18 * write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 19 * Boston, MA 02110-1301, USA. 20 * 21 * Author: Radek Doulik <rodo@ximian.com> 22 * 23 */ 24 25 #ifndef _HTML_ENUMS_H 26 #define _HTML_ENUMS_H 27 28 #define MAX_WIDGET_WIDTH 32000 29 30 typedef enum { 31 BUTTON_NORMAL, 32 BUTTON_SUBMIT, 33 BUTTON_RESET 34 } HTMLButtonType; 35 36 typedef enum { 37 HTML_CHANGE_NONE = 0, 38 HTML_CHANGE_MIN_WIDTH = 1 << 0, 39 HTML_CHANGE_PREF_WIDTH = 1 << 1, 40 HTML_CHANGE_SIZE = 1 << 2, 41 HTML_CHANGE_RECALC_PI = 1 << 3, 42 HTML_CHANGE_ALL_CALC = ((HTML_CHANGE_SIZE << 1) - 1), 43 HTML_CHANGE_ALL = ((HTML_CHANGE_RECALC_PI << 1) - 1) 44 } HTMLChangeFlags; 45 46 typedef enum { 47 HTML_CLEAR_NONE, 48 HTML_CLEAR_LEFT, 49 HTML_CLEAR_RIGHT, 50 HTML_CLEAR_ALL, 51 HTML_CLEAR_INHERIT 52 } HTMLClearType; 53 54 /* Paragraph style. Notice that the `H*' elements must be consecutive. */ 55 typedef enum { 56 HTML_CLUEFLOW_STYLE_NORMAL, 57 HTML_CLUEFLOW_STYLE_H1, 58 HTML_CLUEFLOW_STYLE_H2, 59 HTML_CLUEFLOW_STYLE_H3, 60 HTML_CLUEFLOW_STYLE_H4, 61 HTML_CLUEFLOW_STYLE_H5, 62 HTML_CLUEFLOW_STYLE_H6, 63 HTML_CLUEFLOW_STYLE_ADDRESS, 64 HTML_CLUEFLOW_STYLE_PRE, 65 HTML_CLUEFLOW_STYLE_LIST_ITEM, 66 HTML_CLUEFLOW_NUMSTYLES 67 } HTMLClueFlowStyle; 68 69 typedef enum { 70 HTMLBgColor = 0, 71 HTMLTextColor, 72 HTMLLinkColor, 73 HTMLVLinkColor, 74 HTMLALinkColor, 75 HTMLHighlightColor, 76 HTMLHighlightTextColor, 77 HTMLHighlightNFColor, 78 HTMLHighlightTextNFColor, 79 HTMLSpellErrorColor, 80 HTMLCiteColor, 81 82 HTMLColors 83 } HTMLColorId; 84 85 typedef enum { 86 HTML_DIRECTION_DERIVED, 87 HTML_DIRECTION_LTR, 88 HTML_DIRECTION_RTL 89 } HTMLDirection; 90 91 typedef enum { 92 HTML_ENGINE_CURSOR_UP, 93 HTML_ENGINE_CURSOR_DOWN, 94 HTML_ENGINE_CURSOR_RIGHT, 95 HTML_ENGINE_CURSOR_LEFT, 96 HTML_ENGINE_CURSOR_HOME, 97 HTML_ENGINE_CURSOR_END, 98 HTML_ENGINE_CURSOR_PGUP, 99 HTML_ENGINE_CURSOR_PGDOWN 100 } HTMLEngineCursorMovement; 101 102 typedef enum { 103 HTML_ENGINE_SET_CLUEFLOW_NONE = 0, 104 HTML_ENGINE_SET_CLUEFLOW_STYLE = 1 << 0, 105 HTML_ENGINE_SET_CLUEFLOW_ALIGNMENT = 1 << 1, 106 HTML_ENGINE_SET_CLUEFLOW_INDENTATION = 1 << 2, 107 HTML_ENGINE_SET_CLUEFLOW_INDENTATION_DELTA = 1 << 3, 108 HTML_ENGINE_SET_CLUEFLOW_INDENTATION_ALL = 5 109 } HTMLEngineSetClueFlowStyleMask; 110 111 typedef enum { 112 HTML_FIT_NONE, 113 HTML_FIT_PARTIAL, 114 HTML_FIT_COMPLETE 115 } HTMLFitType; 116 117 typedef enum { 118 HTML_GLOSSARY_DL = 1, 119 HTML_GLOSSARY_DD = 2 120 } HTMLGlossaryEntry; 121 122 typedef enum { 123 HTML_HALIGN_LEFT, 124 HTML_HALIGN_CENTER, 125 HTML_HALIGN_RIGHT, 126 HTML_HALIGN_NONE 127 } HTMLHAlignType; 128 129 typedef enum { 130 HTML_LIST_TYPE_UNORDERED, 131 HTML_LIST_TYPE_ORDERED_ARABIC, 132 HTML_LIST_TYPE_ORDERED_LOWER_ALPHA, 133 HTML_LIST_TYPE_ORDERED_UPPER_ALPHA, 134 HTML_LIST_TYPE_ORDERED_LOWER_ROMAN, 135 HTML_LIST_TYPE_ORDERED_UPPER_ROMAN, 136 HTML_LIST_TYPE_MENU, 137 HTML_LIST_TYPE_DIR, 138 HTML_LIST_TYPE_BLOCKQUOTE, 139 HTML_LIST_TYPE_BLOCKQUOTE_CITE, 140 HTML_LIST_TYPE_GLOSSARY_DL, 141 HTML_LIST_TYPE_GLOSSARY_DD, 142 HTML_LIST_TYPE_CIRCLE, 143 HTML_LIST_TYPE_DISC, 144 HTML_LIST_TYPE_SQUARE 145 } HTMLListType; 146 147 typedef enum { 148 HTML_OBJECT_FLAG_NONE = 0, 149 HTML_OBJECT_FLAG_SEPARATOR = 1 << 0, 150 HTML_OBJECT_FLAG_SELECTED = 1 << 2, 151 HTML_OBJECT_FLAG_ALLSELECTED = 1 << 3, 152 HTML_OBJECT_FLAG_FIXEDWIDTH = 1 << 4, 153 HTML_OBJECT_FLAG_ALIGNED = 1 << 5, 154 HTML_OBJECT_FLAG_PRINTED = 1 << 6, 155 HTML_OBJECT_FLAG_HIDDEN = 1 << 7 156 } HTMLObjectFlags; 157 158 typedef enum { 159 RQA_Replace, 160 RQA_ReplaceAll, 161 RQA_Next, 162 RQA_Cancel 163 } HTMLReplaceQueryAnswer; 164 165 /* This is a list of the HTML object classes we are using. We use a static 166 * system because (a) it's faster and (b) we don't need/want an extensible 167 * object system. 168 * 169 * If you add new HTML classes, you should (a) update this list and (b) update 170 * the `html_types_init ()' function in `htmltype.c'. */ 171 172 typedef enum { 173 HTML_TYPE_NONE, 174 HTML_TYPE_ANCHOR, 175 HTML_TYPE_BULLET, 176 HTML_TYPE_BUTTON, 177 HTML_TYPE_CHECKBOX, 178 HTML_TYPE_CLUE, 179 HTML_TYPE_CLUEALIGNED, 180 HTML_TYPE_CLUEFLOW, 181 HTML_TYPE_CLUEH, 182 HTML_TYPE_CLUEV, 183 HTML_TYPE_EMBEDDED, 184 HTML_TYPE_HIDDEN, 185 HTML_TYPE_HSPACE, 186 HTML_TYPE_IMAGE, 187 HTML_TYPE_IMAGEINPUT, 188 HTML_TYPE_LINKTEXT, 189 HTML_TYPE_OBJECT, 190 HTML_TYPE_RADIO, 191 HTML_TYPE_RULE, 192 HTML_TYPE_SELECT, 193 HTML_TYPE_TABLE, 194 HTML_TYPE_TABLECELL, 195 HTML_TYPE_TEXT, 196 HTML_TYPE_TEXTAREA, 197 HTML_TYPE_TEXTINPUT, 198 HTML_TYPE_TEXTSLAVE, 199 HTML_TYPE_IFRAME, 200 HTML_TYPE_FRAME, 201 HTML_TYPE_FRAMESET, 202 HTML_NUM_TYPES 203 } HTMLType; 204 205 typedef enum { 206 HTML_UNDO_UNDO = 0, 207 HTML_UNDO_REDO = 1, 208 HTML_UNDO_END = 2 209 } HTMLUndoDirection; 210 211 typedef enum { 212 HTML_URL_DUP_ALL = 0, 213 HTML_URL_DUP_NOPROTOCOL = 1 << 0, 214 HTML_URL_DUP_NOUSERNAME = 1 << 1, 215 HTML_URL_DUP_NOPASSWORD = 1 << 2, 216 HTML_URL_DUP_NOHOSTNAME = 1 << 3, 217 HTML_URL_DUP_NOPORT = 1 << 4, 218 HTML_URL_DUP_NOPATH = 1 << 5, 219 HTML_URL_DUP_NOREFERENCE = 1 << 6, 220 HTML_URL_DUP_NOCGIARGS = 1 << 7 221 } HTMLURLDupFlags; 222 223 typedef enum { 224 HTML_VALIGN_TOP, 225 HTML_VALIGN_MIDDLE, 226 HTML_VALIGN_BOTTOM, 227 HTML_VALIGN_NONE 228 } HTMLVAlignType; 229 230 typedef enum { 231 DISPLAY_NONE, 232 DISPLAY_INLINE, 233 DISPLAY_LIST_ITEM, 234 DISPLAY_INLINE_BLOCK, 235 DISPLAY_BLOCK, 236 DISPLAY_MARKER, 237 DISPLAY_RUN_IN, 238 DISPLAY_COMPACT, 239 DISPLAY_TABLE_ROW_GROUP, 240 DISPLAY_TABLE_COLUMN, 241 DISPLAY_TABLE_COLUMN_GROUP, 242 DISPLAY_TABLE_HEADER_GROUP, 243 DISPLAY_TABLE_FOOTER_GROUP, 244 DISPLAY_TABLE_ROW, 245 DISPLAY_TABLE_CELL, 246 DISPLAY_TABLE_CAPTION, 247 DISPLAY_INLINE_TABLE, 248 DISPLAY_TABLE, 249 DISPLAY_DOCUMENT 250 } HTMLDisplayType; 251 252 typedef enum { 253 HTML_WHITE_SPACE_NORMAL, 254 HTML_WHITE_SPACE_PRE, 255 HTML_WHITE_SPACE_NOWRAP, 256 HTML_WHITE_SPACE_PRE_WRAP, 257 HTML_WHITE_SPACE_PRE_LINE, 258 HTML_WHITE_SPACE_INHERIT 259 } HTMLWhiteSpaceType; 260 261 typedef enum { 262 HTML_LENGTH_TYPE_PIXELS, 263 HTML_LENGTH_TYPE_PERCENT, 264 HTML_LENGTH_TYPE_FRACTION 265 } HTMLLengthType; 266 267 typedef enum { 268 HTML_BORDER_NONE, 269 HTML_BORDER_SOLID, 270 HTML_BORDER_INSET, 271 HTML_BORDER_OUTSET 272 } HTMLBorderStyle; 273 274 typedef enum { 275 HTML_TEXT_SLAVE_GLYPH_ITEM_CREATED, 276 HTML_TEXT_SLAVE_GLYPH_ITEM_PARENTAL 277 } HTMLTextSlaveGlyphItemType; 278 279 #endif 280