/gecko_api/include/nsIDOMNodeList.h

http://firefox-mac-pdf.googlecode.com/ · C Header · 114 lines · 56 code · 28 blank · 30 comment · 0 complexity · 42b4138087e3310d92250200a77f9354 MD5 · raw file

  1. /*
  2. * DO NOT EDIT. THIS FILE IS GENERATED FROM /builds/tinderbox/XR-Trunk/Darwin_8.8.4_Depend/mozilla/dom/public/idl/core/nsIDOMNodeList.idl
  3. */
  4. #ifndef __gen_nsIDOMNodeList_h__
  5. #define __gen_nsIDOMNodeList_h__
  6. #ifndef __gen_domstubs_h__
  7. #include "domstubs.h"
  8. #endif
  9. /* For IDL files that don't want to include root IDL files. */
  10. #ifndef NS_NO_VTABLE
  11. #define NS_NO_VTABLE
  12. #endif
  13. /* starting interface: nsIDOMNodeList */
  14. #define NS_IDOMNODELIST_IID_STR "a6cf907d-15b3-11d2-932e-00805f8add32"
  15. #define NS_IDOMNODELIST_IID \
  16. {0xa6cf907d, 0x15b3, 0x11d2, \
  17. { 0x93, 0x2e, 0x00, 0x80, 0x5f, 0x8a, 0xdd, 0x32 }}
  18. class NS_NO_VTABLE NS_SCRIPTABLE nsIDOMNodeList : public nsISupports {
  19. public:
  20. NS_DECLARE_STATIC_IID_ACCESSOR(NS_IDOMNODELIST_IID)
  21. /**
  22. * The nsIDOMNodeList interface provides the abstraction of an ordered
  23. * collection of nodes, without defining or constraining how this collection
  24. * is implemented.
  25. * The items in the list are accessible via an integral index, starting from 0.
  26. *
  27. * For more information on this interface please see
  28. * http://www.w3.org/TR/DOM-Level-2-Core/
  29. *
  30. * @status FROZEN
  31. */
  32. /* nsIDOMNode item (in unsigned long index); */
  33. NS_SCRIPTABLE NS_IMETHOD Item(PRUint32 index, nsIDOMNode **_retval) = 0;
  34. /* readonly attribute unsigned long length; */
  35. NS_SCRIPTABLE NS_IMETHOD GetLength(PRUint32 *aLength) = 0;
  36. };
  37. NS_DEFINE_STATIC_IID_ACCESSOR(nsIDOMNodeList, NS_IDOMNODELIST_IID)
  38. /* Use this macro when declaring classes that implement this interface. */
  39. #define NS_DECL_NSIDOMNODELIST \
  40. NS_SCRIPTABLE NS_IMETHOD Item(PRUint32 index, nsIDOMNode **_retval); \
  41. NS_SCRIPTABLE NS_IMETHOD GetLength(PRUint32 *aLength);
  42. /* Use this macro to declare functions that forward the behavior of this interface to another object. */
  43. #define NS_FORWARD_NSIDOMNODELIST(_to) \
  44. NS_SCRIPTABLE NS_IMETHOD Item(PRUint32 index, nsIDOMNode **_retval) { return _to Item(index, _retval); } \
  45. NS_SCRIPTABLE NS_IMETHOD GetLength(PRUint32 *aLength) { return _to GetLength(aLength); }
  46. /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
  47. #define NS_FORWARD_SAFE_NSIDOMNODELIST(_to) \
  48. NS_SCRIPTABLE NS_IMETHOD Item(PRUint32 index, nsIDOMNode **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->Item(index, _retval); } \
  49. NS_SCRIPTABLE NS_IMETHOD GetLength(PRUint32 *aLength) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetLength(aLength); }
  50. #if 0
  51. /* Use the code below as a template for the implementation class for this interface. */
  52. /* Header file */
  53. class nsDOMNodeList : public nsIDOMNodeList
  54. {
  55. public:
  56. NS_DECL_ISUPPORTS
  57. NS_DECL_NSIDOMNODELIST
  58. nsDOMNodeList();
  59. private:
  60. ~nsDOMNodeList();
  61. protected:
  62. /* additional members */
  63. };
  64. /* Implementation file */
  65. NS_IMPL_ISUPPORTS1(nsDOMNodeList, nsIDOMNodeList)
  66. nsDOMNodeList::nsDOMNodeList()
  67. {
  68. /* member initializers and constructor code */
  69. }
  70. nsDOMNodeList::~nsDOMNodeList()
  71. {
  72. /* destructor code */
  73. }
  74. /* nsIDOMNode item (in unsigned long index); */
  75. NS_IMETHODIMP nsDOMNodeList::Item(PRUint32 index, nsIDOMNode **_retval)
  76. {
  77. return NS_ERROR_NOT_IMPLEMENTED;
  78. }
  79. /* readonly attribute unsigned long length; */
  80. NS_IMETHODIMP nsDOMNodeList::GetLength(PRUint32 *aLength)
  81. {
  82. return NS_ERROR_NOT_IMPLEMENTED;
  83. }
  84. /* End of implementation class template. */
  85. #endif
  86. #endif /* __gen_nsIDOMNodeList_h__ */