inDOMUtils.h 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. /* This Source Code Form is subject to the terms of the Mozilla Public
  2. * License, v. 2.0. If a copy of the MPL was not distributed with this
  3. * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
  4. #ifndef __inDOMUtils_h__
  5. #define __inDOMUtils_h__
  6. #include "inIDOMUtils.h"
  7. class nsRuleNode;
  8. class nsStyleContext;
  9. class nsIAtom;
  10. namespace mozilla {
  11. namespace dom {
  12. class Element;
  13. } // namespace dom
  14. } // namespace mozilla
  15. class inDOMUtils final : public inIDOMUtils
  16. {
  17. public:
  18. NS_DECL_ISUPPORTS
  19. NS_DECL_INIDOMUTILS
  20. inDOMUtils();
  21. private:
  22. virtual ~inDOMUtils();
  23. // aStyleContext must be released by the caller once he's done with aRuleNode.
  24. static nsresult GetRuleNodeForElement(mozilla::dom::Element* aElement,
  25. nsIAtom* aPseudo,
  26. nsStyleContext** aStyleContext,
  27. nsRuleNode** aRuleNode);
  28. };
  29. // {0a499822-a287-4089-ad3f-9ffcd4f40263}
  30. #define IN_DOMUTILS_CID \
  31. {0x0a499822, 0xa287, 0x4089, {0xad, 0x3f, 0x9f, 0xfc, 0xd4, 0xf4, 0x02, 0x63}}
  32. #endif // __inDOMUtils_h__