nsCSSPseudoElementList.h 4.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
  2. /* This Source Code Form is subject to the terms of the Mozilla Public
  3. * License, v. 2.0. If a copy of the MPL was not distributed with this
  4. * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
  5. /* atom list for CSS pseudo-elements */
  6. /*
  7. * This file contains the list of nsIAtoms and their values for CSS
  8. * pseudo-elements. It is designed to be used as inline input to
  9. * nsCSSPseudoElements.cpp *only* through the magic of C preprocessing. All
  10. * entries must be enclosed either in the macro CSS_PSEUDO_ELEMENT;
  11. * these macros will have cruel and unusual things done to them. The
  12. * entries should be kept in some sort of logical order.
  13. *
  14. * Code including this file MUST define CSS_PSEUDO_ELEMENT, which takes
  15. * three parameters:
  16. * name_ : The C++ identifier used for the atom (which will be a member
  17. * of nsCSSPseudoElements)
  18. * value_ : The pseudo-element as a string, with single-colon syntax,
  19. * used as the string value of the atom.
  20. * flags_ : A bitfield containing flags defined in nsCSSPseudoElements.h
  21. */
  22. // OUTPUT_CLASS=nsCSSPseudoElements
  23. // MACRO_NAME=CSS_PSEUDO_ELEMENT
  24. CSS_PSEUDO_ELEMENT(after, ":after", CSS_PSEUDO_ELEMENT_IS_CSS2)
  25. CSS_PSEUDO_ELEMENT(before, ":before", CSS_PSEUDO_ELEMENT_IS_CSS2)
  26. CSS_PSEUDO_ELEMENT(backdrop, ":backdrop", 0)
  27. CSS_PSEUDO_ELEMENT(firstLetter, ":first-letter",
  28. CSS_PSEUDO_ELEMENT_IS_CSS2 |
  29. CSS_PSEUDO_ELEMENT_CONTAINS_ELEMENTS)
  30. CSS_PSEUDO_ELEMENT(firstLine, ":first-line",
  31. CSS_PSEUDO_ELEMENT_IS_CSS2 |
  32. CSS_PSEUDO_ELEMENT_CONTAINS_ELEMENTS)
  33. CSS_PSEUDO_ELEMENT(selection, ":selection",
  34. CSS_PSEUDO_ELEMENT_CONTAINS_ELEMENTS)
  35. // Keep the prefixed version for now.
  36. CSS_PSEUDO_ELEMENT(mozSelection, ":-moz-selection",
  37. CSS_PSEUDO_ELEMENT_CONTAINS_ELEMENTS)
  38. // XXXbz should we really allow random content to style these? Maybe
  39. // use our flags to prevent that?
  40. CSS_PSEUDO_ELEMENT(mozFocusInner, ":-moz-focus-inner", 0)
  41. CSS_PSEUDO_ELEMENT(mozFocusOuter, ":-moz-focus-outer", 0)
  42. // XXXbz should we really allow random content to style these? Maybe
  43. // use our flags to prevent that?
  44. CSS_PSEUDO_ELEMENT(mozListBullet, ":-moz-list-bullet", 0)
  45. CSS_PSEUDO_ELEMENT(mozListNumber, ":-moz-list-number", 0)
  46. CSS_PSEUDO_ELEMENT(mozMathAnonymous, ":-moz-math-anonymous", 0)
  47. // HTML5 Forms pseudo elements
  48. CSS_PSEUDO_ELEMENT(mozNumberWrapper, ":-moz-number-wrapper",
  49. CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE |
  50. CSS_PSEUDO_ELEMENT_UA_SHEET_ONLY)
  51. CSS_PSEUDO_ELEMENT(mozNumberText, ":-moz-number-text",
  52. CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE |
  53. CSS_PSEUDO_ELEMENT_UA_SHEET_ONLY)
  54. CSS_PSEUDO_ELEMENT(mozNumberSpinBox, ":-moz-number-spin-box",
  55. CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE |
  56. CSS_PSEUDO_ELEMENT_UA_SHEET_ONLY)
  57. CSS_PSEUDO_ELEMENT(mozNumberSpinUp, ":-moz-number-spin-up",
  58. CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE |
  59. CSS_PSEUDO_ELEMENT_UA_SHEET_ONLY)
  60. CSS_PSEUDO_ELEMENT(mozNumberSpinDown, ":-moz-number-spin-down",
  61. CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE |
  62. CSS_PSEUDO_ELEMENT_UA_SHEET_ONLY)
  63. CSS_PSEUDO_ELEMENT(mozProgressBar, ":-moz-progress-bar",
  64. CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE)
  65. CSS_PSEUDO_ELEMENT(mozRangeTrack, ":-moz-range-track",
  66. CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE)
  67. CSS_PSEUDO_ELEMENT(mozRangeProgress, ":-moz-range-progress",
  68. CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE)
  69. CSS_PSEUDO_ELEMENT(mozRangeThumb, ":-moz-range-thumb",
  70. CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE)
  71. CSS_PSEUDO_ELEMENT(mozMeterBar, ":-moz-meter-bar",
  72. CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE)
  73. CSS_PSEUDO_ELEMENT(mozPlaceholder, ":-moz-placeholder",
  74. CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE)
  75. CSS_PSEUDO_ELEMENT(placeholder, ":placeholder",
  76. CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE)
  77. CSS_PSEUDO_ELEMENT(mozColorSwatch, ":-moz-color-swatch",
  78. CSS_PSEUDO_ELEMENT_SUPPORTS_STYLE_ATTRIBUTE |
  79. CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE)