michael@0: /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ michael@0: /* This Source Code Form is subject to the terms of the Mozilla Public michael@0: * License, v. 2.0. If a copy of the MPL was not distributed with this michael@0: * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ michael@0: michael@0: /* constants used in the style struct data provided by nsStyleContext */ michael@0: michael@0: #ifndef nsStyleConsts_h___ michael@0: #define nsStyleConsts_h___ michael@0: michael@0: #include "gfxRect.h" michael@0: #include "nsFont.h" michael@0: michael@0: // XXX fold this into nsStyleContext and group by nsStyleXXX struct michael@0: michael@0: // Indices into border/padding/margin arrays michael@0: #define NS_SIDE_TOP mozilla::css::eSideTop michael@0: #define NS_SIDE_RIGHT mozilla::css::eSideRight michael@0: #define NS_SIDE_BOTTOM mozilla::css::eSideBottom michael@0: #define NS_SIDE_LEFT mozilla::css::eSideLeft michael@0: michael@0: #define NS_FOR_CSS_SIDES(var_) for (mozilla::css::Side var_ = NS_SIDE_TOP; var_ <= NS_SIDE_LEFT; var_++) michael@0: static inline mozilla::css::Side operator++(mozilla::css::Side& side, int) { michael@0: NS_PRECONDITION(side >= NS_SIDE_TOP && michael@0: side <= NS_SIDE_LEFT, "Out of range side"); michael@0: side = mozilla::css::Side(side + 1); michael@0: return side; michael@0: } michael@0: michael@0: #define NS_FOR_CSS_FULL_CORNERS(var_) for (int32_t var_ = 0; var_ < 4; ++var_) michael@0: michael@0: // Indices into "half corner" arrays (nsStyleCorners e.g.) michael@0: #define NS_CORNER_TOP_LEFT_X 0 michael@0: #define NS_CORNER_TOP_LEFT_Y 1 michael@0: #define NS_CORNER_TOP_RIGHT_X 2 michael@0: #define NS_CORNER_TOP_RIGHT_Y 3 michael@0: #define NS_CORNER_BOTTOM_RIGHT_X 4 michael@0: #define NS_CORNER_BOTTOM_RIGHT_Y 5 michael@0: #define NS_CORNER_BOTTOM_LEFT_X 6 michael@0: #define NS_CORNER_BOTTOM_LEFT_Y 7 michael@0: michael@0: #define NS_FOR_CSS_HALF_CORNERS(var_) for (int32_t var_ = 0; var_ < 8; ++var_) michael@0: michael@0: // The results of these conversion macros are exhaustively checked in michael@0: // nsStyleCoord.cpp. michael@0: // Arguments must not have side effects. michael@0: michael@0: #define NS_HALF_CORNER_IS_X(var_) (!((var_)%2)) michael@0: #define NS_HALF_TO_FULL_CORNER(var_) ((var_)/2) michael@0: #define NS_FULL_TO_HALF_CORNER(var_, vert_) ((var_)*2 + !!(vert_)) michael@0: michael@0: #define NS_SIDE_IS_VERTICAL(side_) ((side_) % 2) michael@0: #define NS_SIDE_TO_FULL_CORNER(side_, second_) \ michael@0: (((side_) + !!(second_)) % 4) michael@0: #define NS_SIDE_TO_HALF_CORNER(side_, second_, parallel_) \ michael@0: ((((side_) + !!(second_))*2 + ((side_) + !(parallel_))%2) % 8) michael@0: michael@0: // {margin,border-{width,style,color},padding}-{left,right}-{ltr,rtl}-source michael@0: #define NS_BOXPROP_SOURCE_PHYSICAL 0 michael@0: #define NS_BOXPROP_SOURCE_LOGICAL 1 michael@0: michael@0: // box-sizing michael@0: #define NS_STYLE_BOX_SIZING_CONTENT 0 michael@0: #define NS_STYLE_BOX_SIZING_PADDING 1 michael@0: #define NS_STYLE_BOX_SIZING_BORDER 2 michael@0: michael@0: // box-shadow michael@0: #define NS_STYLE_BOX_SHADOW_INSET 0 michael@0: michael@0: // float-edge michael@0: #define NS_STYLE_FLOAT_EDGE_CONTENT 0 michael@0: #define NS_STYLE_FLOAT_EDGE_MARGIN 1 michael@0: michael@0: // user-focus michael@0: #define NS_STYLE_USER_FOCUS_NONE 0 michael@0: #define NS_STYLE_USER_FOCUS_IGNORE 1 michael@0: #define NS_STYLE_USER_FOCUS_NORMAL 2 michael@0: #define NS_STYLE_USER_FOCUS_SELECT_ALL 3 michael@0: #define NS_STYLE_USER_FOCUS_SELECT_BEFORE 4 michael@0: #define NS_STYLE_USER_FOCUS_SELECT_AFTER 5 michael@0: #define NS_STYLE_USER_FOCUS_SELECT_SAME 6 michael@0: #define NS_STYLE_USER_FOCUS_SELECT_MENU 7 michael@0: michael@0: // user-select michael@0: #define NS_STYLE_USER_SELECT_NONE 0 michael@0: #define NS_STYLE_USER_SELECT_TEXT 1 michael@0: #define NS_STYLE_USER_SELECT_ELEMENT 2 michael@0: #define NS_STYLE_USER_SELECT_ELEMENTS 3 michael@0: #define NS_STYLE_USER_SELECT_ALL 4 michael@0: #define NS_STYLE_USER_SELECT_TOGGLE 5 michael@0: #define NS_STYLE_USER_SELECT_TRI_STATE 6 michael@0: #define NS_STYLE_USER_SELECT_AUTO 7 // internal value - please use nsFrame::IsSelectable() michael@0: #define NS_STYLE_USER_SELECT_MOZ_ALL 8 // force selection of all children, unless an ancestor has NONE set - bug 48096 michael@0: #define NS_STYLE_USER_SELECT_MOZ_NONE 9 // Like NONE, but doesn't change selection behavior for descendants whose user-select is not AUTO. michael@0: michael@0: // user-input michael@0: #define NS_STYLE_USER_INPUT_NONE 0 michael@0: #define NS_STYLE_USER_INPUT_ENABLED 1 michael@0: #define NS_STYLE_USER_INPUT_DISABLED 2 michael@0: #define NS_STYLE_USER_INPUT_AUTO 3 michael@0: michael@0: // user-modify michael@0: #define NS_STYLE_USER_MODIFY_READ_ONLY 0 michael@0: #define NS_STYLE_USER_MODIFY_READ_WRITE 1 michael@0: #define NS_STYLE_USER_MODIFY_WRITE_ONLY 2 michael@0: michael@0: // box-align michael@0: #define NS_STYLE_BOX_ALIGN_STRETCH 0 michael@0: #define NS_STYLE_BOX_ALIGN_START 1 michael@0: #define NS_STYLE_BOX_ALIGN_CENTER 2 michael@0: #define NS_STYLE_BOX_ALIGN_BASELINE 3 michael@0: #define NS_STYLE_BOX_ALIGN_END 4 michael@0: michael@0: // box-pack michael@0: #define NS_STYLE_BOX_PACK_START 0 michael@0: #define NS_STYLE_BOX_PACK_CENTER 1 michael@0: #define NS_STYLE_BOX_PACK_END 2 michael@0: #define NS_STYLE_BOX_PACK_JUSTIFY 3 michael@0: michael@0: // box-direction michael@0: #define NS_STYLE_BOX_DIRECTION_NORMAL 0 michael@0: #define NS_STYLE_BOX_DIRECTION_REVERSE 1 michael@0: michael@0: // box-orient michael@0: #define NS_STYLE_BOX_ORIENT_HORIZONTAL 0 michael@0: #define NS_STYLE_BOX_ORIENT_VERTICAL 1 michael@0: michael@0: // orient michael@0: #define NS_STYLE_ORIENT_HORIZONTAL 0 michael@0: #define NS_STYLE_ORIENT_VERTICAL 1 michael@0: #define NS_STYLE_ORIENT_AUTO 2 michael@0: michael@0: // stack-sizing michael@0: #define NS_STYLE_STACK_SIZING_IGNORE 0 michael@0: #define NS_STYLE_STACK_SIZING_STRETCH_TO_FIT 1 michael@0: michael@0: // Azimuth - See nsStyleAural michael@0: #define NS_STYLE_AZIMUTH_LEFT_SIDE 0x00 michael@0: #define NS_STYLE_AZIMUTH_FAR_LEFT 0x01 michael@0: #define NS_STYLE_AZIMUTH_LEFT 0x02 michael@0: #define NS_STYLE_AZIMUTH_CENTER_LEFT 0x03 michael@0: #define NS_STYLE_AZIMUTH_CENTER 0x04 michael@0: #define NS_STYLE_AZIMUTH_CENTER_RIGHT 0x05 michael@0: #define NS_STYLE_AZIMUTH_RIGHT 0x06 michael@0: #define NS_STYLE_AZIMUTH_FAR_RIGHT 0x07 michael@0: #define NS_STYLE_AZIMUTH_RIGHT_SIDE 0x08 michael@0: #define NS_STYLE_AZIMUTH_BEHIND 0x80 // bits michael@0: #define NS_STYLE_AZIMUTH_LEFTWARDS 0x10 // bits michael@0: #define NS_STYLE_AZIMUTH_RIGHTWARDS 0x20 // bits michael@0: michael@0: // See nsStyleAural michael@0: #define NS_STYLE_ELEVATION_BELOW 1 michael@0: #define NS_STYLE_ELEVATION_LEVEL 2 michael@0: #define NS_STYLE_ELEVATION_ABOVE 3 michael@0: #define NS_STYLE_ELEVATION_HIGHER 4 michael@0: #define NS_STYLE_ELEVATION_LOWER 5 michael@0: michael@0: // See nsStyleAural michael@0: #define NS_STYLE_PITCH_X_LOW 1 michael@0: #define NS_STYLE_PITCH_LOW 2 michael@0: #define NS_STYLE_PITCH_MEDIUM 3 michael@0: #define NS_STYLE_PITCH_HIGH 4 michael@0: #define NS_STYLE_PITCH_X_HIGH 5 michael@0: michael@0: // See nsStyleAural michael@0: #define NS_STYLE_SPEAK_NONE 0 michael@0: #define NS_STYLE_SPEAK_NORMAL 1 michael@0: #define NS_STYLE_SPEAK_SPELL_OUT 2 michael@0: michael@0: // See nsStyleAural michael@0: #define NS_STYLE_SPEAK_HEADER_ONCE 0 michael@0: #define NS_STYLE_SPEAK_HEADER_ALWAYS 1 michael@0: michael@0: // See nsStyleAural michael@0: #define NS_STYLE_SPEAK_NUMERAL_DIGITS 0 michael@0: #define NS_STYLE_SPEAK_NUMERAL_CONTINUOUS 1 michael@0: michael@0: // See nsStyleAural michael@0: #define NS_STYLE_SPEAK_PUNCTUATION_NONE 0 michael@0: #define NS_STYLE_SPEAK_PUNCTUATION_CODE 1 michael@0: michael@0: // See nsStyleAural michael@0: #define NS_STYLE_SPEECH_RATE_X_SLOW 0 michael@0: #define NS_STYLE_SPEECH_RATE_SLOW 1 michael@0: #define NS_STYLE_SPEECH_RATE_MEDIUM 2 michael@0: #define NS_STYLE_SPEECH_RATE_FAST 3 michael@0: #define NS_STYLE_SPEECH_RATE_X_FAST 4 michael@0: #define NS_STYLE_SPEECH_RATE_FASTER 10 michael@0: #define NS_STYLE_SPEECH_RATE_SLOWER 11 michael@0: michael@0: // See nsStyleAural michael@0: #define NS_STYLE_VOLUME_SILENT 0 michael@0: #define NS_STYLE_VOLUME_X_SOFT 1 michael@0: #define NS_STYLE_VOLUME_SOFT 2 michael@0: #define NS_STYLE_VOLUME_MEDIUM 3 michael@0: #define NS_STYLE_VOLUME_LOUD 4 michael@0: #define NS_STYLE_VOLUME_X_LOUD 5 michael@0: michael@0: // See nsStyleColor michael@0: #define NS_STYLE_COLOR_MOZ_USE_TEXT_COLOR 1 michael@0: #define NS_STYLE_COLOR_INHERIT_FROM_BODY 2 /* Can't come from CSS directly */ michael@0: michael@0: // See nsStyleColor michael@0: #define NS_COLOR_CURRENTCOLOR -1 michael@0: #define NS_COLOR_MOZ_DEFAULT_COLOR -2 michael@0: #define NS_COLOR_MOZ_DEFAULT_BACKGROUND_COLOR -3 michael@0: #define NS_COLOR_MOZ_HYPERLINKTEXT -4 michael@0: #define NS_COLOR_MOZ_VISITEDHYPERLINKTEXT -5 michael@0: #define NS_COLOR_MOZ_ACTIVEHYPERLINKTEXT -6 michael@0: // Only valid as paints in SVG glyphs michael@0: #define NS_COLOR_CONTEXT_FILL -7 michael@0: #define NS_COLOR_CONTEXT_STROKE -8 michael@0: michael@0: // See nsStyleDisplay michael@0: #define NS_STYLE_WILL_CHANGE_STACKING_CONTEXT (1<<0) michael@0: #define NS_STYLE_WILL_CHANGE_TRANSFORM (1<<1) michael@0: #define NS_STYLE_WILL_CHANGE_SCROLL (1<<2) michael@0: #define NS_STYLE_WILL_CHANGE_OPACITY (1<<3) michael@0: michael@0: // See nsStyleDisplay michael@0: #define NS_STYLE_ANIMATION_DIRECTION_NORMAL 0 michael@0: #define NS_STYLE_ANIMATION_DIRECTION_REVERSE 1 michael@0: #define NS_STYLE_ANIMATION_DIRECTION_ALTERNATE 2 michael@0: #define NS_STYLE_ANIMATION_DIRECTION_ALTERNATE_REVERSE 3 michael@0: michael@0: // See nsStyleDisplay michael@0: #define NS_STYLE_ANIMATION_FILL_MODE_NONE 0 michael@0: #define NS_STYLE_ANIMATION_FILL_MODE_FORWARDS 1 michael@0: #define NS_STYLE_ANIMATION_FILL_MODE_BACKWARDS 2 michael@0: #define NS_STYLE_ANIMATION_FILL_MODE_BOTH 3 michael@0: michael@0: // See nsStyleDisplay michael@0: #define NS_STYLE_ANIMATION_ITERATION_COUNT_INFINITE 0 michael@0: michael@0: // See nsStyleDisplay michael@0: #define NS_STYLE_ANIMATION_PLAY_STATE_RUNNING 0 michael@0: #define NS_STYLE_ANIMATION_PLAY_STATE_PAUSED 1 michael@0: michael@0: // See nsStyleBackground michael@0: #define NS_STYLE_BG_ATTACHMENT_SCROLL 0 michael@0: #define NS_STYLE_BG_ATTACHMENT_FIXED 1 michael@0: #define NS_STYLE_BG_ATTACHMENT_LOCAL 2 michael@0: michael@0: // See nsStyleBackground michael@0: // Code depends on these constants having the same values as BG_ORIGIN_* michael@0: #define NS_STYLE_BG_CLIP_BORDER 0 michael@0: #define NS_STYLE_BG_CLIP_PADDING 1 michael@0: #define NS_STYLE_BG_CLIP_CONTENT 2 michael@0: // A magic value that we use for our "pretend that background-clip is michael@0: // 'padding' when we have a solid border" optimization. This isn't michael@0: // actually equal to NS_STYLE_BG_CLIP_PADDING because using that michael@0: // causes antialiasing seams between the background and border. This michael@0: // is a backend-only value. michael@0: #define NS_STYLE_BG_CLIP_MOZ_ALMOST_PADDING 127 michael@0: michael@0: // See nsStyleBackground michael@0: #define NS_STYLE_BG_INLINE_POLICY_EACH_BOX 0 michael@0: #define NS_STYLE_BG_INLINE_POLICY_CONTINUOUS 1 michael@0: #define NS_STYLE_BG_INLINE_POLICY_BOUNDING_BOX 2 michael@0: michael@0: // See nsStyleBackground michael@0: // Code depends on these constants having the same values as BG_CLIP_* michael@0: #define NS_STYLE_BG_ORIGIN_BORDER 0 michael@0: #define NS_STYLE_BG_ORIGIN_PADDING 1 michael@0: #define NS_STYLE_BG_ORIGIN_CONTENT 2 michael@0: michael@0: // See nsStyleBackground michael@0: // The parser code depends on |ing these values together. michael@0: #define NS_STYLE_BG_POSITION_CENTER (1<<0) michael@0: #define NS_STYLE_BG_POSITION_TOP (1<<1) michael@0: #define NS_STYLE_BG_POSITION_BOTTOM (1<<2) michael@0: #define NS_STYLE_BG_POSITION_LEFT (1<<3) michael@0: #define NS_STYLE_BG_POSITION_RIGHT (1<<4) michael@0: michael@0: // See nsStyleBackground michael@0: #define NS_STYLE_BG_REPEAT_NO_REPEAT 0x00 michael@0: #define NS_STYLE_BG_REPEAT_REPEAT_X 0x01 michael@0: #define NS_STYLE_BG_REPEAT_REPEAT_Y 0x02 michael@0: #define NS_STYLE_BG_REPEAT_REPEAT 0x03 michael@0: michael@0: // See nsStyleBackground michael@0: #define NS_STYLE_BG_SIZE_CONTAIN 0 michael@0: #define NS_STYLE_BG_SIZE_COVER 1 michael@0: michael@0: // See nsStyleTable michael@0: #define NS_STYLE_BORDER_COLLAPSE 0 michael@0: #define NS_STYLE_BORDER_SEPARATE 1 michael@0: michael@0: // Possible enumerated specified values of border-*-width, used by nsCSSMargin michael@0: #define NS_STYLE_BORDER_WIDTH_THIN 0 michael@0: #define NS_STYLE_BORDER_WIDTH_MEDIUM 1 michael@0: #define NS_STYLE_BORDER_WIDTH_THICK 2 michael@0: // XXX chopping block #define NS_STYLE_BORDER_WIDTH_LENGTH_VALUE 3 michael@0: michael@0: // See nsStyleBorder mBorderStyle michael@0: #define NS_STYLE_BORDER_STYLE_NONE 0 michael@0: #define NS_STYLE_BORDER_STYLE_GROOVE 1 michael@0: #define NS_STYLE_BORDER_STYLE_RIDGE 2 michael@0: #define NS_STYLE_BORDER_STYLE_DOTTED 3 michael@0: #define NS_STYLE_BORDER_STYLE_DASHED 4 michael@0: #define NS_STYLE_BORDER_STYLE_SOLID 5 michael@0: #define NS_STYLE_BORDER_STYLE_DOUBLE 6 michael@0: #define NS_STYLE_BORDER_STYLE_INSET 7 michael@0: #define NS_STYLE_BORDER_STYLE_OUTSET 8 michael@0: #define NS_STYLE_BORDER_STYLE_HIDDEN 9 michael@0: #define NS_STYLE_BORDER_STYLE_AUTO 10 // for outline-style only michael@0: michael@0: // See nsStyleBorder mBorderImage michael@0: #define NS_STYLE_BORDER_IMAGE_REPEAT_STRETCH 0 michael@0: #define NS_STYLE_BORDER_IMAGE_REPEAT_REPEAT 1 michael@0: #define NS_STYLE_BORDER_IMAGE_REPEAT_ROUND 2 michael@0: michael@0: #define NS_STYLE_BORDER_IMAGE_SLICE_NOFILL 0 michael@0: #define NS_STYLE_BORDER_IMAGE_SLICE_FILL 1 michael@0: michael@0: // See nsStyleDisplay michael@0: #define NS_STYLE_CLEAR_NONE 0 michael@0: #define NS_STYLE_CLEAR_LEFT 1 michael@0: #define NS_STYLE_CLEAR_RIGHT 2 michael@0: #define NS_STYLE_CLEAR_BOTH 3 michael@0: #define NS_STYLE_CLEAR_LINE 4 michael@0: // @note NS_STYLE_CLEAR_LINE can be added to one of the other values in layout michael@0: // so it needs to use a bit value that none of the other values can have. michael@0: #define NS_STYLE_CLEAR_MAX (NS_STYLE_CLEAR_LINE | NS_STYLE_CLEAR_BOTH) michael@0: michael@0: // See nsStyleContent michael@0: #define NS_STYLE_CONTENT_OPEN_QUOTE 0 michael@0: #define NS_STYLE_CONTENT_CLOSE_QUOTE 1 michael@0: #define NS_STYLE_CONTENT_NO_OPEN_QUOTE 2 michael@0: #define NS_STYLE_CONTENT_NO_CLOSE_QUOTE 3 michael@0: #define NS_STYLE_CONTENT_ALT_CONTENT 4 michael@0: michael@0: // See nsStyleColor michael@0: #define NS_STYLE_CURSOR_AUTO 1 michael@0: #define NS_STYLE_CURSOR_CROSSHAIR 2 michael@0: #define NS_STYLE_CURSOR_DEFAULT 3 // ie: an arrow michael@0: #define NS_STYLE_CURSOR_POINTER 4 // for links michael@0: #define NS_STYLE_CURSOR_MOVE 5 michael@0: #define NS_STYLE_CURSOR_E_RESIZE 6 michael@0: #define NS_STYLE_CURSOR_NE_RESIZE 7 michael@0: #define NS_STYLE_CURSOR_NW_RESIZE 8 michael@0: #define NS_STYLE_CURSOR_N_RESIZE 9 michael@0: #define NS_STYLE_CURSOR_SE_RESIZE 10 michael@0: #define NS_STYLE_CURSOR_SW_RESIZE 11 michael@0: #define NS_STYLE_CURSOR_S_RESIZE 12 michael@0: #define NS_STYLE_CURSOR_W_RESIZE 13 michael@0: #define NS_STYLE_CURSOR_TEXT 14 // ie: i-beam michael@0: #define NS_STYLE_CURSOR_WAIT 15 michael@0: #define NS_STYLE_CURSOR_HELP 16 michael@0: #define NS_STYLE_CURSOR_COPY 17 // CSS3 michael@0: #define NS_STYLE_CURSOR_ALIAS 18 michael@0: #define NS_STYLE_CURSOR_CONTEXT_MENU 19 michael@0: #define NS_STYLE_CURSOR_CELL 20 michael@0: #define NS_STYLE_CURSOR_GRAB 21 michael@0: #define NS_STYLE_CURSOR_GRABBING 22 michael@0: #define NS_STYLE_CURSOR_SPINNING 23 michael@0: #define NS_STYLE_CURSOR_ZOOM_IN 24 michael@0: #define NS_STYLE_CURSOR_ZOOM_OUT 25 michael@0: #define NS_STYLE_CURSOR_NOT_ALLOWED 26 michael@0: #define NS_STYLE_CURSOR_COL_RESIZE 27 michael@0: #define NS_STYLE_CURSOR_ROW_RESIZE 28 michael@0: #define NS_STYLE_CURSOR_NO_DROP 29 michael@0: #define NS_STYLE_CURSOR_VERTICAL_TEXT 30 michael@0: #define NS_STYLE_CURSOR_ALL_SCROLL 31 michael@0: #define NS_STYLE_CURSOR_NESW_RESIZE 32 michael@0: #define NS_STYLE_CURSOR_NWSE_RESIZE 33 michael@0: #define NS_STYLE_CURSOR_NS_RESIZE 34 michael@0: #define NS_STYLE_CURSOR_EW_RESIZE 35 michael@0: #define NS_STYLE_CURSOR_NONE 36 michael@0: michael@0: // See nsStyleVisibility michael@0: #define NS_STYLE_DIRECTION_LTR 0 michael@0: #define NS_STYLE_DIRECTION_RTL 1 michael@0: #define NS_STYLE_DIRECTION_INHERIT 2 michael@0: michael@0: // See nsStyleVisibility michael@0: #define NS_STYLE_WRITING_MODE_HORIZONTAL_TB 0 michael@0: #define NS_STYLE_WRITING_MODE_VERTICAL_LR 1 michael@0: #define NS_STYLE_WRITING_MODE_VERTICAL_RL 2 michael@0: michael@0: // See nsStyleDisplay michael@0: #define NS_STYLE_DISPLAY_NONE 0 michael@0: #define NS_STYLE_DISPLAY_BLOCK 1 michael@0: #define NS_STYLE_DISPLAY_INLINE 2 michael@0: #define NS_STYLE_DISPLAY_INLINE_BLOCK 3 michael@0: #define NS_STYLE_DISPLAY_LIST_ITEM 4 michael@0: #define NS_STYLE_DISPLAY_TABLE 8 michael@0: #define NS_STYLE_DISPLAY_INLINE_TABLE 9 michael@0: #define NS_STYLE_DISPLAY_TABLE_ROW_GROUP 10 michael@0: #define NS_STYLE_DISPLAY_TABLE_COLUMN 11 michael@0: #define NS_STYLE_DISPLAY_TABLE_COLUMN_GROUP 12 michael@0: #define NS_STYLE_DISPLAY_TABLE_HEADER_GROUP 13 michael@0: #define NS_STYLE_DISPLAY_TABLE_FOOTER_GROUP 14 michael@0: #define NS_STYLE_DISPLAY_TABLE_ROW 15 michael@0: #define NS_STYLE_DISPLAY_TABLE_CELL 16 michael@0: #define NS_STYLE_DISPLAY_TABLE_CAPTION 17 michael@0: #define NS_STYLE_DISPLAY_BOX 18 michael@0: #define NS_STYLE_DISPLAY_INLINE_BOX 19 michael@0: #ifdef MOZ_XUL michael@0: #define NS_STYLE_DISPLAY_XUL_GRID 20 michael@0: #define NS_STYLE_DISPLAY_INLINE_XUL_GRID 21 michael@0: #define NS_STYLE_DISPLAY_XUL_GRID_GROUP 22 michael@0: #define NS_STYLE_DISPLAY_XUL_GRID_LINE 23 michael@0: #define NS_STYLE_DISPLAY_STACK 24 michael@0: #define NS_STYLE_DISPLAY_INLINE_STACK 25 michael@0: #define NS_STYLE_DISPLAY_DECK 26 michael@0: #define NS_STYLE_DISPLAY_POPUP 27 michael@0: #define NS_STYLE_DISPLAY_GROUPBOX 28 michael@0: #endif michael@0: #define NS_STYLE_DISPLAY_FLEX 29 michael@0: #define NS_STYLE_DISPLAY_INLINE_FLEX 30 michael@0: #define NS_STYLE_DISPLAY_GRID 31 michael@0: #define NS_STYLE_DISPLAY_INLINE_GRID 32 michael@0: michael@0: // See nsStylePosition michael@0: #define NS_STYLE_ALIGN_CONTENT_FLEX_START 0 michael@0: #define NS_STYLE_ALIGN_CONTENT_FLEX_END 1 michael@0: #define NS_STYLE_ALIGN_CONTENT_CENTER 2 michael@0: #define NS_STYLE_ALIGN_CONTENT_SPACE_BETWEEN 3 michael@0: #define NS_STYLE_ALIGN_CONTENT_SPACE_AROUND 4 michael@0: #define NS_STYLE_ALIGN_CONTENT_STRETCH 5 michael@0: michael@0: // See nsStylePosition michael@0: #define NS_STYLE_ALIGN_ITEMS_FLEX_START 0 michael@0: #define NS_STYLE_ALIGN_ITEMS_FLEX_END 1 michael@0: #define NS_STYLE_ALIGN_ITEMS_CENTER 2 michael@0: #define NS_STYLE_ALIGN_ITEMS_BASELINE 3 michael@0: #define NS_STYLE_ALIGN_ITEMS_STRETCH 4 michael@0: michael@0: // For convenience/clarity (since we use this default value in multiple places) michael@0: #define NS_STYLE_ALIGN_ITEMS_INITIAL_VALUE NS_STYLE_ALIGN_ITEMS_STRETCH michael@0: michael@0: // The "align-self" property accepts all of the normal "align-items" values michael@0: // (above) plus a special 'auto' value that computes to the parent's michael@0: // "align-items" value. Our computed style code internally represents 'auto' michael@0: // with this enum until we actually evaluate it: michael@0: #define NS_STYLE_ALIGN_SELF_AUTO 5 michael@0: michael@0: // See nsStylePosition michael@0: #define NS_STYLE_FLEX_DIRECTION_ROW 0 michael@0: #define NS_STYLE_FLEX_DIRECTION_ROW_REVERSE 1 michael@0: #define NS_STYLE_FLEX_DIRECTION_COLUMN 2 michael@0: #define NS_STYLE_FLEX_DIRECTION_COLUMN_REVERSE 3 michael@0: michael@0: // See nsStylePosition michael@0: #define NS_STYLE_FLEX_WRAP_NOWRAP 0 michael@0: #define NS_STYLE_FLEX_WRAP_WRAP 1 michael@0: #define NS_STYLE_FLEX_WRAP_WRAP_REVERSE 2 michael@0: michael@0: // See nsStylePosition michael@0: // NOTE: This is the initial value of the integer-valued 'order' property michael@0: // (rather than an internal numerical representation of some keyword). michael@0: #define NS_STYLE_ORDER_INITIAL 0 michael@0: michael@0: // See nsStylePosition michael@0: #define NS_STYLE_JUSTIFY_CONTENT_FLEX_START 0 michael@0: #define NS_STYLE_JUSTIFY_CONTENT_FLEX_END 1 michael@0: #define NS_STYLE_JUSTIFY_CONTENT_CENTER 2 michael@0: #define NS_STYLE_JUSTIFY_CONTENT_SPACE_BETWEEN 3 michael@0: #define NS_STYLE_JUSTIFY_CONTENT_SPACE_AROUND 4 michael@0: michael@0: // See nsStyleDisplay michael@0: #define NS_STYLE_FLOAT_NONE 0 michael@0: #define NS_STYLE_FLOAT_LEFT 1 michael@0: #define NS_STYLE_FLOAT_RIGHT 2 michael@0: michael@0: // See nsStyleFilter michael@0: #define NS_STYLE_FILTER_NONE 0 michael@0: #define NS_STYLE_FILTER_URL 1 michael@0: #define NS_STYLE_FILTER_BLUR 2 michael@0: #define NS_STYLE_FILTER_BRIGHTNESS 3 michael@0: #define NS_STYLE_FILTER_CONTRAST 4 michael@0: #define NS_STYLE_FILTER_GRAYSCALE 5 michael@0: #define NS_STYLE_FILTER_INVERT 6 michael@0: #define NS_STYLE_FILTER_OPACITY 7 michael@0: #define NS_STYLE_FILTER_SATURATE 8 michael@0: #define NS_STYLE_FILTER_SEPIA 9 michael@0: #define NS_STYLE_FILTER_HUE_ROTATE 10 michael@0: #define NS_STYLE_FILTER_DROP_SHADOW 11 michael@0: michael@0: // See nsStyleFont michael@0: // We should eventually stop using the NS_STYLE_* variants here. michael@0: #define NS_STYLE_FONT_STYLE_NORMAL NS_FONT_STYLE_NORMAL michael@0: #define NS_STYLE_FONT_STYLE_ITALIC NS_FONT_STYLE_ITALIC michael@0: #define NS_STYLE_FONT_STYLE_OBLIQUE NS_FONT_STYLE_OBLIQUE michael@0: michael@0: // See nsStyleFont michael@0: // We should eventually stop using the NS_STYLE_* variants here. michael@0: #define NS_STYLE_FONT_VARIANT_NORMAL NS_FONT_VARIANT_NORMAL michael@0: #define NS_STYLE_FONT_VARIANT_SMALL_CAPS NS_FONT_VARIANT_SMALL_CAPS michael@0: michael@0: // See nsStyleFont michael@0: // We should eventually stop using the NS_STYLE_* variants here. michael@0: #define NS_STYLE_FONT_WEIGHT_NORMAL NS_FONT_WEIGHT_NORMAL michael@0: #define NS_STYLE_FONT_WEIGHT_BOLD NS_FONT_WEIGHT_BOLD michael@0: // The constants below appear only in style sheets and not computed style. michael@0: #define NS_STYLE_FONT_WEIGHT_BOLDER (-1) michael@0: #define NS_STYLE_FONT_WEIGHT_LIGHTER (-2) michael@0: michael@0: // See nsStyleFont michael@0: #define NS_STYLE_FONT_SIZE_XXSMALL 0 michael@0: #define NS_STYLE_FONT_SIZE_XSMALL 1 michael@0: #define NS_STYLE_FONT_SIZE_SMALL 2 michael@0: #define NS_STYLE_FONT_SIZE_MEDIUM 3 michael@0: #define NS_STYLE_FONT_SIZE_LARGE 4 michael@0: #define NS_STYLE_FONT_SIZE_XLARGE 5 michael@0: #define NS_STYLE_FONT_SIZE_XXLARGE 6 michael@0: #define NS_STYLE_FONT_SIZE_XXXLARGE 7 // Only used by . Not specifiable in CSS. michael@0: #define NS_STYLE_FONT_SIZE_LARGER 8 michael@0: #define NS_STYLE_FONT_SIZE_SMALLER 9 michael@0: michael@0: // See nsStyleFont michael@0: // We should eventually stop using the NS_STYLE_* variants here. michael@0: #define NS_STYLE_FONT_STRETCH_ULTRA_CONDENSED NS_FONT_STRETCH_ULTRA_CONDENSED michael@0: #define NS_STYLE_FONT_STRETCH_EXTRA_CONDENSED NS_FONT_STRETCH_EXTRA_CONDENSED michael@0: #define NS_STYLE_FONT_STRETCH_CONDENSED NS_FONT_STRETCH_CONDENSED michael@0: #define NS_STYLE_FONT_STRETCH_SEMI_CONDENSED NS_FONT_STRETCH_SEMI_CONDENSED michael@0: #define NS_STYLE_FONT_STRETCH_NORMAL NS_FONT_STRETCH_NORMAL michael@0: #define NS_STYLE_FONT_STRETCH_SEMI_EXPANDED NS_FONT_STRETCH_SEMI_EXPANDED michael@0: #define NS_STYLE_FONT_STRETCH_EXPANDED NS_FONT_STRETCH_EXPANDED michael@0: #define NS_STYLE_FONT_STRETCH_EXTRA_EXPANDED NS_FONT_STRETCH_EXTRA_EXPANDED michael@0: #define NS_STYLE_FONT_STRETCH_ULTRA_EXPANDED NS_FONT_STRETCH_ULTRA_EXPANDED michael@0: michael@0: // See nsStyleFont - system fonts michael@0: #define NS_STYLE_FONT_CAPTION 1 // css2 michael@0: #define NS_STYLE_FONT_ICON 2 michael@0: #define NS_STYLE_FONT_MENU 3 michael@0: #define NS_STYLE_FONT_MESSAGE_BOX 4 michael@0: #define NS_STYLE_FONT_SMALL_CAPTION 5 michael@0: #define NS_STYLE_FONT_STATUS_BAR 6 michael@0: #define NS_STYLE_FONT_WINDOW 7 // css3 michael@0: #define NS_STYLE_FONT_DOCUMENT 8 michael@0: #define NS_STYLE_FONT_WORKSPACE 9 michael@0: #define NS_STYLE_FONT_DESKTOP 10 michael@0: #define NS_STYLE_FONT_INFO 11 michael@0: #define NS_STYLE_FONT_DIALOG 12 michael@0: #define NS_STYLE_FONT_BUTTON 13 michael@0: #define NS_STYLE_FONT_PULL_DOWN_MENU 14 michael@0: #define NS_STYLE_FONT_LIST 15 michael@0: #define NS_STYLE_FONT_FIELD 16 michael@0: michael@0: // grid-auto-flow keywords michael@0: #define NS_STYLE_GRID_AUTO_FLOW_NONE (1 << 0) michael@0: #define NS_STYLE_GRID_AUTO_FLOW_COLUMN (1 << 1) michael@0: #define NS_STYLE_GRID_AUTO_FLOW_ROW (1 << 2) michael@0: #define NS_STYLE_GRID_AUTO_FLOW_DENSE (1 << 3) michael@0: michael@0: // 'subgrid' keyword in grid-template-{columns,rows} michael@0: #define NS_STYLE_GRID_TEMPLATE_SUBGRID 0 michael@0: michael@0: // CSS Grid keywords michael@0: // Should not overlap with NS_STYLE_GRID_TEMPLATE_SUBGRID michael@0: #define NS_STYLE_GRID_TRACK_BREADTH_MAX_CONTENT 1 michael@0: #define NS_STYLE_GRID_TRACK_BREADTH_MIN_CONTENT 2 michael@0: michael@0: // defaults per MathML spec michael@0: #define NS_MATHML_DEFAULT_SCRIPT_SIZE_MULTIPLIER 0.71f michael@0: #define NS_MATHML_DEFAULT_SCRIPT_MIN_SIZE_PT 8 michael@0: michael@0: // See nsStyleFont michael@0: #define NS_MATHML_MATHVARIANT_NONE 0 michael@0: #define NS_MATHML_MATHVARIANT_NORMAL 1 michael@0: #define NS_MATHML_MATHVARIANT_BOLD 2 michael@0: #define NS_MATHML_MATHVARIANT_ITALIC 3 michael@0: #define NS_MATHML_MATHVARIANT_BOLD_ITALIC 4 michael@0: #define NS_MATHML_MATHVARIANT_SCRIPT 5 michael@0: #define NS_MATHML_MATHVARIANT_BOLD_SCRIPT 6 michael@0: #define NS_MATHML_MATHVARIANT_FRAKTUR 7 michael@0: #define NS_MATHML_MATHVARIANT_DOUBLE_STRUCK 8 michael@0: #define NS_MATHML_MATHVARIANT_BOLD_FRAKTUR 9 michael@0: #define NS_MATHML_MATHVARIANT_SANS_SERIF 10 michael@0: #define NS_MATHML_MATHVARIANT_BOLD_SANS_SERIF 11 michael@0: #define NS_MATHML_MATHVARIANT_SANS_SERIF_ITALIC 12 michael@0: #define NS_MATHML_MATHVARIANT_SANS_SERIF_BOLD_ITALIC 13 michael@0: #define NS_MATHML_MATHVARIANT_MONOSPACE 14 michael@0: #define NS_MATHML_MATHVARIANT_INITIAL 15 michael@0: #define NS_MATHML_MATHVARIANT_TAILED 16 michael@0: #define NS_MATHML_MATHVARIANT_LOOPED 17 michael@0: #define NS_MATHML_MATHVARIANT_STRETCHED 18 michael@0: michael@0: // See nsStyleFont::mMathDisplay michael@0: #define NS_MATHML_DISPLAYSTYLE_INLINE 0 michael@0: #define NS_MATHML_DISPLAYSTYLE_BLOCK 1 michael@0: michael@0: // See nsStylePosition::mWidth, mMinWidth, mMaxWidth michael@0: #define NS_STYLE_WIDTH_MAX_CONTENT 0 michael@0: #define NS_STYLE_WIDTH_MIN_CONTENT 1 michael@0: #define NS_STYLE_WIDTH_FIT_CONTENT 2 michael@0: #define NS_STYLE_WIDTH_AVAILABLE 3 michael@0: michael@0: // See nsStyleDisplay.mPosition michael@0: #define NS_STYLE_POSITION_STATIC 0 michael@0: #define NS_STYLE_POSITION_RELATIVE 1 michael@0: #define NS_STYLE_POSITION_ABSOLUTE 2 michael@0: #define NS_STYLE_POSITION_FIXED 3 michael@0: #define NS_STYLE_POSITION_STICKY 4 michael@0: michael@0: // See nsStyleDisplay.mClip michael@0: #define NS_STYLE_CLIP_AUTO 0x00 michael@0: #define NS_STYLE_CLIP_RECT 0x01 michael@0: #define NS_STYLE_CLIP_TYPE_MASK 0x0F michael@0: #define NS_STYLE_CLIP_LEFT_AUTO 0x10 michael@0: #define NS_STYLE_CLIP_TOP_AUTO 0x20 michael@0: #define NS_STYLE_CLIP_RIGHT_AUTO 0x40 michael@0: #define NS_STYLE_CLIP_BOTTOM_AUTO 0x80 michael@0: michael@0: // FRAME/FRAMESET/IFRAME specific values including backward compatibility. Boolean values with michael@0: // the same meaning (e.g. 1 & yes) may need to be distinguished for correct mode processing michael@0: #define NS_STYLE_FRAME_YES 0 michael@0: #define NS_STYLE_FRAME_NO 1 michael@0: #define NS_STYLE_FRAME_0 2 michael@0: #define NS_STYLE_FRAME_1 3 michael@0: #define NS_STYLE_FRAME_ON 4 michael@0: #define NS_STYLE_FRAME_OFF 5 michael@0: #define NS_STYLE_FRAME_AUTO 6 michael@0: #define NS_STYLE_FRAME_SCROLL 7 michael@0: #define NS_STYLE_FRAME_NOSCROLL 8 michael@0: michael@0: // See nsStyleDisplay.mOverflow michael@0: #define NS_STYLE_OVERFLOW_VISIBLE 0 michael@0: #define NS_STYLE_OVERFLOW_HIDDEN 1 michael@0: #define NS_STYLE_OVERFLOW_SCROLL 2 michael@0: #define NS_STYLE_OVERFLOW_AUTO 3 michael@0: #define NS_STYLE_OVERFLOW_CLIP 4 michael@0: #define NS_STYLE_OVERFLOW_SCROLLBARS_HORIZONTAL 5 michael@0: #define NS_STYLE_OVERFLOW_SCROLLBARS_VERTICAL 6 michael@0: michael@0: // See nsStyleDisplay.mOverflowClipBox michael@0: #define NS_STYLE_OVERFLOW_CLIP_BOX_PADDING_BOX 0 michael@0: #define NS_STYLE_OVERFLOW_CLIP_BOX_CONTENT_BOX 1 michael@0: michael@0: // See nsStyleList michael@0: #define NS_STYLE_LIST_STYLE_NONE 0 michael@0: #define NS_STYLE_LIST_STYLE_DISC 1 michael@0: #define NS_STYLE_LIST_STYLE_CIRCLE 2 michael@0: #define NS_STYLE_LIST_STYLE_SQUARE 3 michael@0: #define NS_STYLE_LIST_STYLE_DECIMAL 4 michael@0: #define NS_STYLE_LIST_STYLE_DECIMAL_LEADING_ZERO 5 michael@0: #define NS_STYLE_LIST_STYLE_LOWER_ROMAN 6 michael@0: #define NS_STYLE_LIST_STYLE_UPPER_ROMAN 7 michael@0: #define NS_STYLE_LIST_STYLE_LOWER_GREEK 8 michael@0: #define NS_STYLE_LIST_STYLE_LOWER_ALPHA 9 michael@0: #define NS_STYLE_LIST_STYLE_LOWER_LATIN 9 // == ALPHA michael@0: #define NS_STYLE_LIST_STYLE_UPPER_ALPHA 10 michael@0: #define NS_STYLE_LIST_STYLE_UPPER_LATIN 10 // == ALPHA michael@0: #define NS_STYLE_LIST_STYLE_HEBREW 11 michael@0: #define NS_STYLE_LIST_STYLE_ARMENIAN 12 michael@0: #define NS_STYLE_LIST_STYLE_GEORGIAN 13 michael@0: #define NS_STYLE_LIST_STYLE_CJK_DECIMAL 14 michael@0: #define NS_STYLE_LIST_STYLE_CJK_IDEOGRAPHIC 15 michael@0: #define NS_STYLE_LIST_STYLE_HIRAGANA 16 michael@0: #define NS_STYLE_LIST_STYLE_KATAKANA 17 michael@0: #define NS_STYLE_LIST_STYLE_HIRAGANA_IROHA 18 michael@0: #define NS_STYLE_LIST_STYLE_KATAKANA_IROHA 19 michael@0: #define NS_STYLE_LIST_STYLE_JAPANESE_INFORMAL 20 michael@0: #define NS_STYLE_LIST_STYLE_JAPANESE_FORMAL 21 michael@0: #define NS_STYLE_LIST_STYLE_KOREAN_HANGUL_FORMAL 22 michael@0: #define NS_STYLE_LIST_STYLE_KOREAN_HANJA_INFORMAL 23 michael@0: #define NS_STYLE_LIST_STYLE_KOREAN_HANJA_FORMAL 24 michael@0: #define NS_STYLE_LIST_STYLE_SIMP_CHINESE_INFORMAL 25 michael@0: #define NS_STYLE_LIST_STYLE_SIMP_CHINESE_FORMAL 26 michael@0: #define NS_STYLE_LIST_STYLE_TRAD_CHINESE_INFORMAL 27 michael@0: #define NS_STYLE_LIST_STYLE_TRAD_CHINESE_FORMAL 28 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_CJK_HEAVENLY_STEM 124 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_CJK_EARTHLY_BRANCH 125 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_TRAD_CHINESE_INFORMAL 126 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_TRAD_CHINESE_FORMAL 127 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_SIMP_CHINESE_INFORMAL 128 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_SIMP_CHINESE_FORMAL 129 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_JAPANESE_INFORMAL 130 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_JAPANESE_FORMAL 131 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_ARABIC_INDIC 132 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_PERSIAN 133 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_URDU 134 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_DEVANAGARI 135 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_GURMUKHI 136 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_GUJARATI 137 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_ORIYA 138 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_KANNADA 139 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_MALAYALAM 140 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_BENGALI 141 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_TAMIL 142 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_TELUGU 143 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_THAI 144 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_LAO 145 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_MYANMAR 146 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_KHMER 147 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_HANGUL 148 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_HANGUL_CONSONANT 149 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_ETHIOPIC_HALEHAME 150 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_ETHIOPIC_NUMERIC 151 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_ETHIOPIC_HALEHAME_AM 152 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_ETHIOPIC_HALEHAME_TI_ER 153 michael@0: #define NS_STYLE_LIST_STYLE_MOZ_ETHIOPIC_HALEHAME_TI_ET 154 michael@0: michael@0: // See nsStyleList michael@0: #define NS_STYLE_LIST_STYLE_POSITION_INSIDE 0 michael@0: #define NS_STYLE_LIST_STYLE_POSITION_OUTSIDE 1 michael@0: michael@0: // See nsStyleMargin michael@0: #define NS_STYLE_MARGIN_SIZE_AUTO 0 michael@0: michael@0: // See nsStyleVisibility michael@0: #define NS_STYLE_POINTER_EVENTS_NONE 0 michael@0: #define NS_STYLE_POINTER_EVENTS_VISIBLEPAINTED 1 michael@0: #define NS_STYLE_POINTER_EVENTS_VISIBLEFILL 2 michael@0: #define NS_STYLE_POINTER_EVENTS_VISIBLESTROKE 3 michael@0: #define NS_STYLE_POINTER_EVENTS_VISIBLE 4 michael@0: #define NS_STYLE_POINTER_EVENTS_PAINTED 5 michael@0: #define NS_STYLE_POINTER_EVENTS_FILL 6 michael@0: #define NS_STYLE_POINTER_EVENTS_STROKE 7 michael@0: #define NS_STYLE_POINTER_EVENTS_ALL 8 michael@0: #define NS_STYLE_POINTER_EVENTS_AUTO 9 michael@0: michael@0: // See nsStyleVisibility.mImageOrientationType michael@0: #define NS_STYLE_IMAGE_ORIENTATION_FLIP 0 michael@0: #define NS_STYLE_IMAGE_ORIENTATION_FROM_IMAGE 1 michael@0: michael@0: // See nsStyleDisplay michael@0: #define NS_STYLE_RESIZE_NONE 0 michael@0: #define NS_STYLE_RESIZE_BOTH 1 michael@0: #define NS_STYLE_RESIZE_HORIZONTAL 2 michael@0: #define NS_STYLE_RESIZE_VERTICAL 3 michael@0: michael@0: // See nsStyleText michael@0: #define NS_STYLE_TEXT_ALIGN_DEFAULT 0 michael@0: #define NS_STYLE_TEXT_ALIGN_LEFT 1 michael@0: #define NS_STYLE_TEXT_ALIGN_RIGHT 2 michael@0: #define NS_STYLE_TEXT_ALIGN_CENTER 3 michael@0: #define NS_STYLE_TEXT_ALIGN_JUSTIFY 4 michael@0: #define NS_STYLE_TEXT_ALIGN_CHAR 5 //align based on a certain character, for table cell michael@0: #define NS_STYLE_TEXT_ALIGN_END 6 michael@0: #define NS_STYLE_TEXT_ALIGN_AUTO 7 michael@0: #define NS_STYLE_TEXT_ALIGN_MOZ_CENTER 8 michael@0: #define NS_STYLE_TEXT_ALIGN_MOZ_RIGHT 9 michael@0: #define NS_STYLE_TEXT_ALIGN_MOZ_LEFT 10 michael@0: // NS_STYLE_TEXT_ALIGN_MOZ_CENTER_OR_INHERIT is only used in data structs; it michael@0: // is never present in stylesheets or computed data. michael@0: #define NS_STYLE_TEXT_ALIGN_MOZ_CENTER_OR_INHERIT 11 michael@0: #define NS_STYLE_TEXT_ALIGN_TRUE 12 michael@0: // Note: make sure that the largest NS_STYLE_TEXT_ALIGN_* value is smaller than michael@0: // the smallest NS_STYLE_VERTICAL_ALIGN_* value below! michael@0: michael@0: // See nsStyleText, nsStyleFont michael@0: #define NS_STYLE_TEXT_DECORATION_LINE_NONE 0 michael@0: #define NS_STYLE_TEXT_DECORATION_LINE_UNDERLINE NS_FONT_DECORATION_UNDERLINE michael@0: #define NS_STYLE_TEXT_DECORATION_LINE_OVERLINE NS_FONT_DECORATION_OVERLINE michael@0: #define NS_STYLE_TEXT_DECORATION_LINE_LINE_THROUGH NS_FONT_DECORATION_LINE_THROUGH michael@0: #define NS_STYLE_TEXT_DECORATION_LINE_BLINK 0x08 michael@0: #define NS_STYLE_TEXT_DECORATION_LINE_PREF_ANCHORS 0x10 michael@0: // OVERRIDE_ALL does not occur in stylesheets; it only comes from HTML michael@0: // attribute mapping (and thus appears in computed data) michael@0: #define NS_STYLE_TEXT_DECORATION_LINE_OVERRIDE_ALL 0x20 michael@0: #define NS_STYLE_TEXT_DECORATION_LINE_LINES_MASK (NS_STYLE_TEXT_DECORATION_LINE_UNDERLINE | NS_STYLE_TEXT_DECORATION_LINE_OVERLINE | NS_STYLE_TEXT_DECORATION_LINE_LINE_THROUGH) michael@0: michael@0: // See nsStyleText michael@0: #define NS_STYLE_TEXT_DECORATION_STYLE_NONE 0 // not in CSS spec, mapped to -moz-none michael@0: #define NS_STYLE_TEXT_DECORATION_STYLE_DOTTED 1 michael@0: #define NS_STYLE_TEXT_DECORATION_STYLE_DASHED 2 michael@0: #define NS_STYLE_TEXT_DECORATION_STYLE_SOLID 3 michael@0: #define NS_STYLE_TEXT_DECORATION_STYLE_DOUBLE 4 michael@0: #define NS_STYLE_TEXT_DECORATION_STYLE_WAVY 5 michael@0: #define NS_STYLE_TEXT_DECORATION_STYLE_MAX NS_STYLE_TEXT_DECORATION_STYLE_WAVY michael@0: michael@0: // See nsStyleTextOverflow michael@0: #define NS_STYLE_TEXT_OVERFLOW_CLIP 0 michael@0: #define NS_STYLE_TEXT_OVERFLOW_ELLIPSIS 1 michael@0: #define NS_STYLE_TEXT_OVERFLOW_STRING 2 michael@0: michael@0: // See nsStyleText michael@0: #define NS_STYLE_TEXT_TRANSFORM_NONE 0 michael@0: #define NS_STYLE_TEXT_TRANSFORM_CAPITALIZE 1 michael@0: #define NS_STYLE_TEXT_TRANSFORM_LOWERCASE 2 michael@0: #define NS_STYLE_TEXT_TRANSFORM_UPPERCASE 3 michael@0: #define NS_STYLE_TEXT_TRANSFORM_FULLWIDTH 4 michael@0: michael@0: // See nsStyleDisplay michael@0: #define NS_STYLE_TOUCH_ACTION_NONE (1 << 0) michael@0: #define NS_STYLE_TOUCH_ACTION_AUTO (1 << 1) michael@0: #define NS_STYLE_TOUCH_ACTION_PAN_X (1 << 2) michael@0: #define NS_STYLE_TOUCH_ACTION_PAN_Y (1 << 3) michael@0: #define NS_STYLE_TOUCH_ACTION_MANIPULATION (1 << 4) michael@0: michael@0: // See nsStyleDisplay michael@0: #define NS_STYLE_TRANSITION_TIMING_FUNCTION_EASE 0 michael@0: #define NS_STYLE_TRANSITION_TIMING_FUNCTION_LINEAR 1 michael@0: #define NS_STYLE_TRANSITION_TIMING_FUNCTION_EASE_IN 2 michael@0: #define NS_STYLE_TRANSITION_TIMING_FUNCTION_EASE_OUT 3 michael@0: #define NS_STYLE_TRANSITION_TIMING_FUNCTION_EASE_IN_OUT 4 michael@0: #define NS_STYLE_TRANSITION_TIMING_FUNCTION_STEP_START 5 michael@0: #define NS_STYLE_TRANSITION_TIMING_FUNCTION_STEP_END 6 michael@0: michael@0: // See nsStyleText michael@0: // Note: these values pickup after the text-align values because there michael@0: // are a few html cases where an object can have both types of michael@0: // alignment applied with a single attribute michael@0: #define NS_STYLE_VERTICAL_ALIGN_BASELINE 13 michael@0: #define NS_STYLE_VERTICAL_ALIGN_SUB 14 michael@0: #define NS_STYLE_VERTICAL_ALIGN_SUPER 15 michael@0: #define NS_STYLE_VERTICAL_ALIGN_TOP 16 michael@0: #define NS_STYLE_VERTICAL_ALIGN_TEXT_TOP 17 michael@0: #define NS_STYLE_VERTICAL_ALIGN_MIDDLE 18 michael@0: #define NS_STYLE_VERTICAL_ALIGN_TEXT_BOTTOM 19 michael@0: #define NS_STYLE_VERTICAL_ALIGN_BOTTOM 20 michael@0: #define NS_STYLE_VERTICAL_ALIGN_MIDDLE_WITH_BASELINE 21 michael@0: michael@0: // See nsStyleVisibility michael@0: #define NS_STYLE_VISIBILITY_HIDDEN 0 michael@0: #define NS_STYLE_VISIBILITY_VISIBLE 1 michael@0: #define NS_STYLE_VISIBILITY_COLLAPSE 2 michael@0: michael@0: // See nsStyleText michael@0: #define NS_STYLE_TABSIZE_INITIAL 8 michael@0: michael@0: // See nsStyleText michael@0: #define NS_STYLE_WHITESPACE_NORMAL 0 michael@0: #define NS_STYLE_WHITESPACE_PRE 1 michael@0: #define NS_STYLE_WHITESPACE_NOWRAP 2 michael@0: #define NS_STYLE_WHITESPACE_PRE_WRAP 3 michael@0: #define NS_STYLE_WHITESPACE_PRE_LINE 4 michael@0: #define NS_STYLE_WHITESPACE_PRE_DISCARD_NEWLINES 5 michael@0: michael@0: // See nsStyleText michael@0: #define NS_STYLE_WORDBREAK_NORMAL 0 michael@0: #define NS_STYLE_WORDBREAK_BREAK_ALL 1 michael@0: #define NS_STYLE_WORDBREAK_KEEP_ALL 2 michael@0: michael@0: // See nsStyleText michael@0: #define NS_STYLE_WORDWRAP_NORMAL 0 michael@0: #define NS_STYLE_WORDWRAP_BREAK_WORD 1 michael@0: michael@0: // See nsStyleText michael@0: #define NS_STYLE_HYPHENS_NONE 0 michael@0: #define NS_STYLE_HYPHENS_MANUAL 1 michael@0: #define NS_STYLE_HYPHENS_AUTO 2 michael@0: michael@0: // See nsStyleText michael@0: #define NS_STYLE_TEXT_SIZE_ADJUST_NONE 0 michael@0: #define NS_STYLE_TEXT_SIZE_ADJUST_AUTO 1 michael@0: michael@0: // See nsStyleText michael@0: #define NS_STYLE_TEXT_ORIENTATION_AUTO 0 michael@0: #define NS_STYLE_TEXT_ORIENTATION_UPRIGHT 1 michael@0: #define NS_STYLE_TEXT_ORIENTATION_SIDEWAYS 2 michael@0: michael@0: // See nsStyleText michael@0: #define NS_STYLE_TEXT_COMBINE_UPRIGHT_NONE 0 michael@0: #define NS_STYLE_TEXT_COMBINE_UPRIGHT_ALL 1 michael@0: #define NS_STYLE_TEXT_COMBINE_UPRIGHT_DIGITS_2 2 michael@0: #define NS_STYLE_TEXT_COMBINE_UPRIGHT_DIGITS_3 3 michael@0: #define NS_STYLE_TEXT_COMBINE_UPRIGHT_DIGITS_4 4 michael@0: michael@0: // See nsStyleText michael@0: #define NS_STYLE_LINE_HEIGHT_BLOCK_HEIGHT 0 michael@0: michael@0: // See nsStyleText michael@0: #define NS_STYLE_UNICODE_BIDI_NORMAL 0x0 michael@0: #define NS_STYLE_UNICODE_BIDI_EMBED 0x1 michael@0: #define NS_STYLE_UNICODE_BIDI_ISOLATE 0x2 michael@0: #define NS_STYLE_UNICODE_BIDI_OVERRIDE 0x4 michael@0: #define NS_STYLE_UNICODE_BIDI_ISOLATE_OVERRIDE 0x6 michael@0: #define NS_STYLE_UNICODE_BIDI_PLAINTEXT 0x8 michael@0: michael@0: // See nsStyleTable (here for HTML 4.0 for now, should probably change to side flags) michael@0: #define NS_STYLE_TABLE_FRAME_NONE 0 michael@0: #define NS_STYLE_TABLE_FRAME_ABOVE 1 michael@0: #define NS_STYLE_TABLE_FRAME_BELOW 2 michael@0: #define NS_STYLE_TABLE_FRAME_HSIDES 3 michael@0: #define NS_STYLE_TABLE_FRAME_VSIDES 4 michael@0: #define NS_STYLE_TABLE_FRAME_LEFT 5 michael@0: #define NS_STYLE_TABLE_FRAME_RIGHT 6 michael@0: #define NS_STYLE_TABLE_FRAME_BOX 7 michael@0: #define NS_STYLE_TABLE_FRAME_BORDER 8 michael@0: michael@0: // See nsStyleTable michael@0: #define NS_STYLE_TABLE_RULES_NONE 0 michael@0: #define NS_STYLE_TABLE_RULES_GROUPS 1 michael@0: #define NS_STYLE_TABLE_RULES_ROWS 2 michael@0: #define NS_STYLE_TABLE_RULES_COLS 3 michael@0: #define NS_STYLE_TABLE_RULES_ALL 4 michael@0: michael@0: #define NS_STYLE_TABLE_LAYOUT_AUTO 0 michael@0: #define NS_STYLE_TABLE_LAYOUT_FIXED 1 michael@0: michael@0: #define NS_STYLE_TABLE_EMPTY_CELLS_HIDE 0 michael@0: #define NS_STYLE_TABLE_EMPTY_CELLS_SHOW 1 michael@0: #define NS_STYLE_TABLE_EMPTY_CELLS_SHOW_BACKGROUND 2 michael@0: michael@0: #define NS_STYLE_CAPTION_SIDE_TOP 0 michael@0: #define NS_STYLE_CAPTION_SIDE_RIGHT 1 michael@0: #define NS_STYLE_CAPTION_SIDE_BOTTOM 2 michael@0: #define NS_STYLE_CAPTION_SIDE_LEFT 3 michael@0: #define NS_STYLE_CAPTION_SIDE_TOP_OUTSIDE 4 michael@0: #define NS_STYLE_CAPTION_SIDE_BOTTOM_OUTSIDE 5 michael@0: michael@0: // constants for cell "scope" attribute michael@0: #define NS_STYLE_CELL_SCOPE_ROW 0 michael@0: #define NS_STYLE_CELL_SCOPE_COL 1 michael@0: #define NS_STYLE_CELL_SCOPE_ROWGROUP 2 michael@0: #define NS_STYLE_CELL_SCOPE_COLGROUP 3 michael@0: michael@0: // See nsStylePage michael@0: #define NS_STYLE_PAGE_MARKS_NONE 0x00 michael@0: #define NS_STYLE_PAGE_MARKS_CROP 0x01 michael@0: #define NS_STYLE_PAGE_MARKS_REGISTER 0x02 michael@0: michael@0: // See nsStylePage michael@0: #define NS_STYLE_PAGE_SIZE_AUTO 0 michael@0: #define NS_STYLE_PAGE_SIZE_PORTRAIT 1 michael@0: #define NS_STYLE_PAGE_SIZE_LANDSCAPE 2 michael@0: michael@0: // See nsStyleBreaks michael@0: #define NS_STYLE_PAGE_BREAK_AUTO 0 michael@0: #define NS_STYLE_PAGE_BREAK_ALWAYS 1 michael@0: #define NS_STYLE_PAGE_BREAK_AVOID 2 michael@0: #define NS_STYLE_PAGE_BREAK_LEFT 3 michael@0: #define NS_STYLE_PAGE_BREAK_RIGHT 4 michael@0: michael@0: // See nsStyleColumn michael@0: #define NS_STYLE_COLUMN_COUNT_AUTO 0 michael@0: #define NS_STYLE_COLUMN_COUNT_UNLIMITED (-1) michael@0: michael@0: #define NS_STYLE_COLUMN_FILL_AUTO 0 michael@0: #define NS_STYLE_COLUMN_FILL_BALANCE 1 michael@0: michael@0: // See nsStyleUIReset michael@0: #define NS_STYLE_IME_MODE_AUTO 0 michael@0: #define NS_STYLE_IME_MODE_NORMAL 1 michael@0: #define NS_STYLE_IME_MODE_ACTIVE 2 michael@0: #define NS_STYLE_IME_MODE_DISABLED 3 michael@0: #define NS_STYLE_IME_MODE_INACTIVE 4 michael@0: michael@0: // See nsStyleGradient michael@0: #define NS_STYLE_GRADIENT_SHAPE_LINEAR 0 michael@0: #define NS_STYLE_GRADIENT_SHAPE_ELLIPTICAL 1 michael@0: #define NS_STYLE_GRADIENT_SHAPE_CIRCULAR 2 michael@0: michael@0: #define NS_STYLE_GRADIENT_SIZE_CLOSEST_SIDE 0 michael@0: #define NS_STYLE_GRADIENT_SIZE_CLOSEST_CORNER 1 michael@0: #define NS_STYLE_GRADIENT_SIZE_FARTHEST_SIDE 2 michael@0: #define NS_STYLE_GRADIENT_SIZE_FARTHEST_CORNER 3 michael@0: #define NS_STYLE_GRADIENT_SIZE_EXPLICIT_SIZE 4 michael@0: michael@0: // See nsStyleSVG michael@0: michael@0: // dominant-baseline michael@0: #define NS_STYLE_DOMINANT_BASELINE_AUTO 0 michael@0: #define NS_STYLE_DOMINANT_BASELINE_USE_SCRIPT 1 michael@0: #define NS_STYLE_DOMINANT_BASELINE_NO_CHANGE 2 michael@0: #define NS_STYLE_DOMINANT_BASELINE_RESET_SIZE 3 michael@0: #define NS_STYLE_DOMINANT_BASELINE_IDEOGRAPHIC 4 michael@0: #define NS_STYLE_DOMINANT_BASELINE_ALPHABETIC 5 michael@0: #define NS_STYLE_DOMINANT_BASELINE_HANGING 6 michael@0: #define NS_STYLE_DOMINANT_BASELINE_MATHEMATICAL 7 michael@0: #define NS_STYLE_DOMINANT_BASELINE_CENTRAL 8 michael@0: #define NS_STYLE_DOMINANT_BASELINE_MIDDLE 9 michael@0: #define NS_STYLE_DOMINANT_BASELINE_TEXT_AFTER_EDGE 10 michael@0: #define NS_STYLE_DOMINANT_BASELINE_TEXT_BEFORE_EDGE 11 michael@0: michael@0: // fill-rule michael@0: #define NS_STYLE_FILL_RULE_NONZERO 0 michael@0: #define NS_STYLE_FILL_RULE_EVENODD 1 michael@0: michael@0: // image-rendering michael@0: #define NS_STYLE_IMAGE_RENDERING_AUTO 0 michael@0: #define NS_STYLE_IMAGE_RENDERING_OPTIMIZESPEED 1 michael@0: #define NS_STYLE_IMAGE_RENDERING_OPTIMIZEQUALITY 2 michael@0: #define NS_STYLE_IMAGE_RENDERING_CRISPEDGES 3 michael@0: michael@0: // mask-type michael@0: #define NS_STYLE_MASK_TYPE_LUMINANCE 0 michael@0: #define NS_STYLE_MASK_TYPE_ALPHA 1 michael@0: michael@0: // paint-order michael@0: #define NS_STYLE_PAINT_ORDER_NORMAL 0 michael@0: #define NS_STYLE_PAINT_ORDER_FILL 1 michael@0: #define NS_STYLE_PAINT_ORDER_STROKE 2 michael@0: #define NS_STYLE_PAINT_ORDER_MARKERS 3 michael@0: #define NS_STYLE_PAINT_ORDER_LAST_VALUE NS_STYLE_PAINT_ORDER_MARKERS michael@0: // NS_STYLE_PAINT_ORDER_BITWIDTH is the number of bits required to store michael@0: // a single paint-order component value. michael@0: #define NS_STYLE_PAINT_ORDER_BITWIDTH 2 michael@0: michael@0: // shape-rendering michael@0: #define NS_STYLE_SHAPE_RENDERING_AUTO 0 michael@0: #define NS_STYLE_SHAPE_RENDERING_OPTIMIZESPEED 1 michael@0: #define NS_STYLE_SHAPE_RENDERING_CRISPEDGES 2 michael@0: #define NS_STYLE_SHAPE_RENDERING_GEOMETRICPRECISION 3 michael@0: michael@0: // stroke-linecap michael@0: #define NS_STYLE_STROKE_LINECAP_BUTT 0 michael@0: #define NS_STYLE_STROKE_LINECAP_ROUND 1 michael@0: #define NS_STYLE_STROKE_LINECAP_SQUARE 2 michael@0: michael@0: // stroke-linejoin michael@0: #define NS_STYLE_STROKE_LINEJOIN_MITER 0 michael@0: #define NS_STYLE_STROKE_LINEJOIN_ROUND 1 michael@0: #define NS_STYLE_STROKE_LINEJOIN_BEVEL 2 michael@0: michael@0: // stroke-dasharray, stroke-dashoffset, stroke-width michael@0: #define NS_STYLE_STROKE_PROP_CONTEXT_VALUE 0 michael@0: michael@0: // text-anchor michael@0: #define NS_STYLE_TEXT_ANCHOR_START 0 michael@0: #define NS_STYLE_TEXT_ANCHOR_MIDDLE 1 michael@0: #define NS_STYLE_TEXT_ANCHOR_END 2 michael@0: michael@0: // text-rendering michael@0: #define NS_STYLE_TEXT_RENDERING_AUTO 0 michael@0: #define NS_STYLE_TEXT_RENDERING_OPTIMIZESPEED 1 michael@0: #define NS_STYLE_TEXT_RENDERING_OPTIMIZELEGIBILITY 2 michael@0: #define NS_STYLE_TEXT_RENDERING_GEOMETRICPRECISION 3 michael@0: michael@0: // color-interpolation and color-interpolation-filters michael@0: #define NS_STYLE_COLOR_INTERPOLATION_AUTO 0 michael@0: #define NS_STYLE_COLOR_INTERPOLATION_SRGB 1 michael@0: #define NS_STYLE_COLOR_INTERPOLATION_LINEARRGB 2 michael@0: michael@0: // vector-effect michael@0: #define NS_STYLE_VECTOR_EFFECT_NONE 0 michael@0: #define NS_STYLE_VECTOR_EFFECT_NON_SCALING_STROKE 1 michael@0: michael@0: // 3d Transforms - Backface visibility michael@0: #define NS_STYLE_BACKFACE_VISIBILITY_VISIBLE 1 michael@0: #define NS_STYLE_BACKFACE_VISIBILITY_HIDDEN 0 michael@0: michael@0: #define NS_STYLE_TRANSFORM_STYLE_FLAT 0 michael@0: #define NS_STYLE_TRANSFORM_STYLE_PRESERVE_3D 1 michael@0: michael@0: // object {fill,stroke}-opacity inherited from context for SVG glyphs michael@0: #define NS_STYLE_CONTEXT_FILL_OPACITY 0 michael@0: #define NS_STYLE_CONTEXT_STROKE_OPACITY 1 michael@0: michael@0: // blending michael@0: #define NS_STYLE_BLEND_NORMAL 0 michael@0: #define NS_STYLE_BLEND_MULTIPLY 1 michael@0: #define NS_STYLE_BLEND_SCREEN 2 michael@0: #define NS_STYLE_BLEND_OVERLAY 3 michael@0: #define NS_STYLE_BLEND_DARKEN 4 michael@0: #define NS_STYLE_BLEND_LIGHTEN 5 michael@0: #define NS_STYLE_BLEND_COLOR_DODGE 6 michael@0: #define NS_STYLE_BLEND_COLOR_BURN 7 michael@0: #define NS_STYLE_BLEND_HARD_LIGHT 8 michael@0: #define NS_STYLE_BLEND_SOFT_LIGHT 9 michael@0: #define NS_STYLE_BLEND_DIFFERENCE 10 michael@0: #define NS_STYLE_BLEND_EXCLUSION 11 michael@0: #define NS_STYLE_BLEND_HUE 12 michael@0: #define NS_STYLE_BLEND_SATURATION 13 michael@0: #define NS_STYLE_BLEND_COLOR 14 michael@0: #define NS_STYLE_BLEND_LUMINOSITY 15 michael@0: michael@0: // See nsStyleText::mControlCharacterVisibility michael@0: #define NS_STYLE_CONTROL_CHARACTER_VISIBILITY_HIDDEN 0 michael@0: #define NS_STYLE_CONTROL_CHARACTER_VISIBILITY_VISIBLE 1 michael@0: michael@0: /***************************************************************************** michael@0: * Constants for media features. * michael@0: *****************************************************************************/ michael@0: michael@0: // orientation michael@0: #define NS_STYLE_ORIENTATION_PORTRAIT 0 michael@0: #define NS_STYLE_ORIENTATION_LANDSCAPE 1 michael@0: michael@0: // scan michael@0: #define NS_STYLE_SCAN_PROGRESSIVE 0 michael@0: #define NS_STYLE_SCAN_INTERLACE 1 michael@0: michael@0: #endif /* nsStyleConsts_h___ */