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: /* atom list for CSS pseudo-elements */ michael@0: michael@0: /* michael@0: * This file contains the list of nsIAtoms and their values for CSS michael@0: * pseudo-elements. It is designed to be used as inline input to michael@0: * nsCSSPseudoElements.cpp *only* through the magic of C preprocessing. All michael@0: * entries must be enclosed either in the macro CSS_PSEUDO_ELEMENT; michael@0: * these macros will have cruel and unusual things done to them. The michael@0: * entries should be kept in some sort of logical order. michael@0: * michael@0: * Code including this file MUST define CSS_PSEUDO_ELEMENT, which takes michael@0: * three parameters: michael@0: * name_ : The C++ identifier used for the atom (which will be a member michael@0: * of nsCSSPseudoElements) michael@0: * value_ : The pseudo-element as a string, with single-colon syntax, michael@0: * used as the string value of the atom. michael@0: * flags_ : A bitfield containing flags defined in nsCSSPseudoElements.h michael@0: */ michael@0: michael@0: // OUTPUT_CLASS=nsCSSPseudoElements michael@0: // MACRO_NAME=CSS_PSEUDO_ELEMENT michael@0: michael@0: CSS_PSEUDO_ELEMENT(after, ":after", CSS_PSEUDO_ELEMENT_IS_CSS2) michael@0: CSS_PSEUDO_ELEMENT(before, ":before", CSS_PSEUDO_ELEMENT_IS_CSS2) michael@0: michael@0: CSS_PSEUDO_ELEMENT(firstLetter, ":first-letter", michael@0: CSS_PSEUDO_ELEMENT_IS_CSS2 | michael@0: CSS_PSEUDO_ELEMENT_CONTAINS_ELEMENTS) michael@0: CSS_PSEUDO_ELEMENT(firstLine, ":first-line", michael@0: CSS_PSEUDO_ELEMENT_IS_CSS2 | michael@0: CSS_PSEUDO_ELEMENT_CONTAINS_ELEMENTS) michael@0: michael@0: CSS_PSEUDO_ELEMENT(mozSelection, ":-moz-selection", michael@0: CSS_PSEUDO_ELEMENT_CONTAINS_ELEMENTS) michael@0: michael@0: // XXXbz should we really allow random content to style these? Maybe michael@0: // use our flags to prevent that? michael@0: CSS_PSEUDO_ELEMENT(mozFocusInner, ":-moz-focus-inner", 0) michael@0: CSS_PSEUDO_ELEMENT(mozFocusOuter, ":-moz-focus-outer", 0) michael@0: michael@0: // XXXbz should we really allow random content to style these? Maybe michael@0: // use our flags to prevent that? michael@0: CSS_PSEUDO_ELEMENT(mozListBullet, ":-moz-list-bullet", 0) michael@0: CSS_PSEUDO_ELEMENT(mozListNumber, ":-moz-list-number", 0) michael@0: michael@0: CSS_PSEUDO_ELEMENT(mozMathAnonymous, ":-moz-math-anonymous", 0) michael@0: michael@0: // HTML5 Forms pseudo elements michael@0: CSS_PSEUDO_ELEMENT(mozNumberWrapper, ":-moz-number-wrapper", michael@0: CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE | michael@0: CSS_PSEUDO_ELEMENT_IS_CHROME_ONLY) michael@0: CSS_PSEUDO_ELEMENT(mozNumberText, ":-moz-number-text", michael@0: CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE | michael@0: CSS_PSEUDO_ELEMENT_IS_CHROME_ONLY) michael@0: CSS_PSEUDO_ELEMENT(mozNumberSpinBox, ":-moz-number-spin-box", michael@0: CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE | michael@0: CSS_PSEUDO_ELEMENT_IS_CHROME_ONLY) michael@0: CSS_PSEUDO_ELEMENT(mozNumberSpinUp, ":-moz-number-spin-up", michael@0: CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE | michael@0: CSS_PSEUDO_ELEMENT_IS_CHROME_ONLY) michael@0: CSS_PSEUDO_ELEMENT(mozNumberSpinDown, ":-moz-number-spin-down", michael@0: CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE | michael@0: CSS_PSEUDO_ELEMENT_IS_CHROME_ONLY) michael@0: CSS_PSEUDO_ELEMENT(mozProgressBar, ":-moz-progress-bar", michael@0: CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE) michael@0: CSS_PSEUDO_ELEMENT(mozRangeTrack, ":-moz-range-track", michael@0: CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE) michael@0: CSS_PSEUDO_ELEMENT(mozRangeProgress, ":-moz-range-progress", michael@0: CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE) michael@0: CSS_PSEUDO_ELEMENT(mozRangeThumb, ":-moz-range-thumb", michael@0: CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE) michael@0: CSS_PSEUDO_ELEMENT(mozMeterBar, ":-moz-meter-bar", michael@0: CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE) michael@0: CSS_PSEUDO_ELEMENT(mozPlaceholder, ":-moz-placeholder", michael@0: CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE) michael@0: CSS_PSEUDO_ELEMENT(mozColorSwatch, ":-moz-color-swatch", michael@0: CSS_PSEUDO_ELEMENT_SUPPORTS_STYLE_ATTRIBUTE | michael@0: CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE)