1 : /*
2 : * DO NOT EDIT. THIS FILE IS GENERATED FROM /builds/slave/m-beta-lnx-codecoverage/build/dom/interfaces/events/nsIDOMEventTarget.idl
3 : */
4 :
5 : #ifndef __gen_nsIDOMEventTarget_h__
6 : #define __gen_nsIDOMEventTarget_h__
7 :
8 :
9 : #ifndef __gen_domstubs_h__
10 : #include "domstubs.h"
11 : #endif
12 :
13 : /* For IDL files that don't want to include root IDL files. */
14 : #ifndef NS_NO_VTABLE
15 : #define NS_NO_VTABLE
16 : #endif
17 : #include "nsEvent.h"
18 : class nsPresContext;
19 : class nsEventChainPreVisitor;
20 : class nsEventChainPostVisitor;
21 : struct JSContext;
22 : class nsEventListenerManager;
23 : class nsIScriptContext; /* forward declaration */
24 :
25 : class nsIDOMEventListener; /* forward declaration */
26 :
27 : class nsIDOMEvent; /* forward declaration */
28 :
29 :
30 : /* starting interface: nsIDOMEventTarget */
31 : #define NS_IDOMEVENTTARGET_IID_STR "8e375931-298d-4d0a-9cb4-5668f0cdc5a8"
32 :
33 : #define NS_IDOMEVENTTARGET_IID \
34 : {0x8e375931, 0x298d, 0x4d0a, \
35 : { 0x9c, 0xb4, 0x56, 0x68, 0xf0, 0xcd, 0xc5, 0xa8 }}
36 :
37 119562 : class NS_SCRIPTABLE nsIDOMEventTarget : public nsISupports {
38 : public:
39 :
40 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_IDOMEVENTTARGET_IID)
41 :
42 : /* [optional_argc] void addEventListener (in DOMString type, in nsIDOMEventListener listener, [optional] in boolean useCapture, [optional] in boolean wantsUntrusted); */
43 : NS_SCRIPTABLE NS_IMETHOD AddEventListener(const nsAString & type, nsIDOMEventListener *listener, bool useCapture, bool wantsUntrusted, PRUint8 _argc) = 0;
44 :
45 : /* [noscript,optional_argc] void addSystemEventListener (in DOMString type, in nsIDOMEventListener listener, [optional] in boolean aUseCapture, [optional] in boolean aWantsUntrusted); */
46 : NS_IMETHOD AddSystemEventListener(const nsAString & type, nsIDOMEventListener *listener, bool aUseCapture, bool aWantsUntrusted, PRUint8 _argc) = 0;
47 :
48 : // non-virtual so it won't affect the vtable
49 3507 : nsresult AddEventListener(const nsAString& aType,
50 : nsIDOMEventListener* aListener,
51 : bool aUseCapture)
52 : {
53 3507 : return AddEventListener(aType, aListener, aUseCapture, PR_FALSE, 1);
54 : }
55 : // non-virtual so it won't affect the vtable
56 0 : nsresult AddEventListener(const nsAString& aType,
57 : nsIDOMEventListener* aListener,
58 : bool aUseCapture,
59 : bool aWantsUntrusted)
60 : {
61 0 : return AddEventListener(aType, aListener, aUseCapture, aWantsUntrusted, 2);
62 : }
63 : // non-virtual so it won't affect the vtable
64 0 : nsresult AddSystemEventListener(const nsAString& aType,
65 : nsIDOMEventListener* aListener,
66 : bool aUseCapture)
67 : {
68 0 : return AddSystemEventListener(aType, aListener, aUseCapture, PR_FALSE, 1);
69 : }
70 : // non-virtual so it won't affect the vtable
71 0 : nsresult AddSystemEventListener(const nsAString& aType,
72 : nsIDOMEventListener* aListener,
73 : bool aUseCapture,
74 : bool aWantsUntrusted)
75 : {
76 : return AddSystemEventListener(aType, aListener, aUseCapture,
77 0 : aWantsUntrusted, 2);
78 : }
79 : /* void removeEventListener (in DOMString type, in nsIDOMEventListener listener, [optional] in boolean useCapture); */
80 : NS_SCRIPTABLE NS_IMETHOD RemoveEventListener(const nsAString & type, nsIDOMEventListener *listener, bool useCapture) = 0;
81 :
82 : /* [noscript] void removeSystemEventListener (in DOMString type, in nsIDOMEventListener listener, [optional] in boolean aUseCapture); */
83 : NS_IMETHOD RemoveSystemEventListener(const nsAString & type, nsIDOMEventListener *listener, bool aUseCapture) = 0;
84 :
85 : /* boolean dispatchEvent (in nsIDOMEvent evt) raises (DOMException); */
86 : NS_SCRIPTABLE NS_IMETHOD DispatchEvent(nsIDOMEvent *evt, bool *_retval NS_OUTPARAM) = 0;
87 :
88 : /* [nostdcall,notxpcom] nsIDOMEventTarget GetTargetForDOMEvent (); */
89 : virtual nsIDOMEventTarget * GetTargetForDOMEvent(void) = 0;
90 :
91 : /* [nostdcall,notxpcom] nsIDOMEventTarget GetTargetForEventTargetChain (); */
92 : virtual nsIDOMEventTarget * GetTargetForEventTargetChain(void) = 0;
93 :
94 : /* [noscript,nostdcall] void PreHandleEvent (in nsEventChainPreVisitorRef aVisitor); */
95 : virtual nsresult PreHandleEvent(nsEventChainPreVisitor & aVisitor) = 0;
96 :
97 : /* [noscript,nostdcall] void WillHandleEvent (in nsEventChainPostVisitorRef aVisitor); */
98 : virtual nsresult WillHandleEvent(nsEventChainPostVisitor & aVisitor) = 0;
99 :
100 : /* [noscript,nostdcall] void PostHandleEvent (in nsEventChainPostVisitorRef aVisitor); */
101 : virtual nsresult PostHandleEvent(nsEventChainPostVisitor & aVisitor) = 0;
102 :
103 : /* [noscript,nostdcall] void DispatchDOMEvent (in nsEventPtr aEvent, in nsIDOMEvent aDOMEvent, in nsPresContextPtr aPresContext, in nsEventStatusPtr aEventStatus); */
104 : virtual nsresult DispatchDOMEvent(nsEvent *aEvent, nsIDOMEvent *aDOMEvent, nsPresContext *aPresContext, nsEventStatus *aEventStatus) = 0;
105 :
106 : /* [nostdcall,notxpcom] nsEventListenerManagerPtr GetListenerManager (in boolean aMayCreate); */
107 : virtual nsEventListenerManager * GetListenerManager(bool aMayCreate) = 0;
108 :
109 : /* [nostdcall,notxpcom] nsIScriptContext GetContextForEventHandlers (out nsresult aRv); */
110 : virtual nsIScriptContext * GetContextForEventHandlers(nsresult *aRv NS_OUTPARAM) = 0;
111 :
112 : /* [nostdcall,notxpcom] JSContextPtr GetJSContextForEventHandlers (); */
113 : virtual JSContext * GetJSContextForEventHandlers(void) = 0;
114 :
115 : };
116 :
117 : NS_DEFINE_STATIC_IID_ACCESSOR(nsIDOMEventTarget, NS_IDOMEVENTTARGET_IID)
118 :
119 : /* Use this macro when declaring classes that implement this interface. */
120 : #define NS_DECL_NSIDOMEVENTTARGET \
121 : NS_SCRIPTABLE NS_IMETHOD AddEventListener(const nsAString & type, nsIDOMEventListener *listener, bool useCapture, bool wantsUntrusted, PRUint8 _argc); \
122 : NS_IMETHOD AddSystemEventListener(const nsAString & type, nsIDOMEventListener *listener, bool aUseCapture, bool aWantsUntrusted, PRUint8 _argc); \
123 : NS_SCRIPTABLE NS_IMETHOD RemoveEventListener(const nsAString & type, nsIDOMEventListener *listener, bool useCapture); \
124 : NS_IMETHOD RemoveSystemEventListener(const nsAString & type, nsIDOMEventListener *listener, bool aUseCapture); \
125 : NS_SCRIPTABLE NS_IMETHOD DispatchEvent(nsIDOMEvent *evt, bool *_retval NS_OUTPARAM); \
126 : virtual nsIDOMEventTarget * GetTargetForDOMEvent(void); \
127 : virtual nsIDOMEventTarget * GetTargetForEventTargetChain(void); \
128 : virtual nsresult PreHandleEvent(nsEventChainPreVisitor & aVisitor); \
129 : virtual nsresult WillHandleEvent(nsEventChainPostVisitor & aVisitor); \
130 : virtual nsresult PostHandleEvent(nsEventChainPostVisitor & aVisitor); \
131 : virtual nsresult DispatchDOMEvent(nsEvent *aEvent, nsIDOMEvent *aDOMEvent, nsPresContext *aPresContext, nsEventStatus *aEventStatus); \
132 : virtual nsEventListenerManager * GetListenerManager(bool aMayCreate); \
133 : virtual nsIScriptContext * GetContextForEventHandlers(nsresult *aRv NS_OUTPARAM); \
134 : virtual JSContext * GetJSContextForEventHandlers(void);
135 :
136 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
137 : #define NS_FORWARD_NSIDOMEVENTTARGET(_to) \
138 : NS_SCRIPTABLE NS_IMETHOD AddEventListener(const nsAString & type, nsIDOMEventListener *listener, bool useCapture, bool wantsUntrusted, PRUint8 _argc) { return _to AddEventListener(type, listener, useCapture, wantsUntrusted, _argc); } \
139 : NS_IMETHOD AddSystemEventListener(const nsAString & type, nsIDOMEventListener *listener, bool aUseCapture, bool aWantsUntrusted, PRUint8 _argc) { return _to AddSystemEventListener(type, listener, aUseCapture, aWantsUntrusted, _argc); } \
140 : NS_SCRIPTABLE NS_IMETHOD RemoveEventListener(const nsAString & type, nsIDOMEventListener *listener, bool useCapture) { return _to RemoveEventListener(type, listener, useCapture); } \
141 : NS_IMETHOD RemoveSystemEventListener(const nsAString & type, nsIDOMEventListener *listener, bool aUseCapture) { return _to RemoveSystemEventListener(type, listener, aUseCapture); } \
142 : NS_SCRIPTABLE NS_IMETHOD DispatchEvent(nsIDOMEvent *evt, bool *_retval NS_OUTPARAM) { return _to DispatchEvent(evt, _retval); } \
143 : virtual nsIDOMEventTarget * GetTargetForDOMEvent(void) { return _to GetTargetForDOMEvent(); } \
144 : virtual nsIDOMEventTarget * GetTargetForEventTargetChain(void) { return _to GetTargetForEventTargetChain(); } \
145 : virtual nsresult PreHandleEvent(nsEventChainPreVisitor & aVisitor) { return _to PreHandleEvent(aVisitor); } \
146 : virtual nsresult WillHandleEvent(nsEventChainPostVisitor & aVisitor) { return _to WillHandleEvent(aVisitor); } \
147 : virtual nsresult PostHandleEvent(nsEventChainPostVisitor & aVisitor) { return _to PostHandleEvent(aVisitor); } \
148 : virtual nsresult DispatchDOMEvent(nsEvent *aEvent, nsIDOMEvent *aDOMEvent, nsPresContext *aPresContext, nsEventStatus *aEventStatus) { return _to DispatchDOMEvent(aEvent, aDOMEvent, aPresContext, aEventStatus); } \
149 : virtual nsEventListenerManager * GetListenerManager(bool aMayCreate) { return _to GetListenerManager(aMayCreate); } \
150 : virtual nsIScriptContext * GetContextForEventHandlers(nsresult *aRv NS_OUTPARAM) { return _to GetContextForEventHandlers(aRv); } \
151 : virtual JSContext * GetJSContextForEventHandlers(void) { return _to GetJSContextForEventHandlers(); }
152 :
153 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
154 : #define NS_FORWARD_SAFE_NSIDOMEVENTTARGET(_to) \
155 : NS_SCRIPTABLE NS_IMETHOD AddEventListener(const nsAString & type, nsIDOMEventListener *listener, bool useCapture, bool wantsUntrusted, PRUint8 _argc) { return !_to ? NS_ERROR_NULL_POINTER : _to->AddEventListener(type, listener, useCapture, wantsUntrusted, _argc); } \
156 : NS_IMETHOD AddSystemEventListener(const nsAString & type, nsIDOMEventListener *listener, bool aUseCapture, bool aWantsUntrusted, PRUint8 _argc) { return !_to ? NS_ERROR_NULL_POINTER : _to->AddSystemEventListener(type, listener, aUseCapture, aWantsUntrusted, _argc); } \
157 : NS_SCRIPTABLE NS_IMETHOD RemoveEventListener(const nsAString & type, nsIDOMEventListener *listener, bool useCapture) { return !_to ? NS_ERROR_NULL_POINTER : _to->RemoveEventListener(type, listener, useCapture); } \
158 : NS_IMETHOD RemoveSystemEventListener(const nsAString & type, nsIDOMEventListener *listener, bool aUseCapture) { return !_to ? NS_ERROR_NULL_POINTER : _to->RemoveSystemEventListener(type, listener, aUseCapture); } \
159 : NS_SCRIPTABLE NS_IMETHOD DispatchEvent(nsIDOMEvent *evt, bool *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->DispatchEvent(evt, _retval); } \
160 : virtual nsIDOMEventTarget * GetTargetForDOMEvent(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetTargetForDOMEvent(); } \
161 : virtual nsIDOMEventTarget * GetTargetForEventTargetChain(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetTargetForEventTargetChain(); } \
162 : virtual nsresult PreHandleEvent(nsEventChainPreVisitor & aVisitor) { return !_to ? NS_ERROR_NULL_POINTER : _to->PreHandleEvent(aVisitor); } \
163 : virtual nsresult WillHandleEvent(nsEventChainPostVisitor & aVisitor) { return !_to ? NS_ERROR_NULL_POINTER : _to->WillHandleEvent(aVisitor); } \
164 : virtual nsresult PostHandleEvent(nsEventChainPostVisitor & aVisitor) { return !_to ? NS_ERROR_NULL_POINTER : _to->PostHandleEvent(aVisitor); } \
165 : virtual nsresult DispatchDOMEvent(nsEvent *aEvent, nsIDOMEvent *aDOMEvent, nsPresContext *aPresContext, nsEventStatus *aEventStatus) { return !_to ? NS_ERROR_NULL_POINTER : _to->DispatchDOMEvent(aEvent, aDOMEvent, aPresContext, aEventStatus); } \
166 : virtual nsEventListenerManager * GetListenerManager(bool aMayCreate) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetListenerManager(aMayCreate); } \
167 : virtual nsIScriptContext * GetContextForEventHandlers(nsresult *aRv NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetContextForEventHandlers(aRv); } \
168 : virtual JSContext * GetJSContextForEventHandlers(void) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetJSContextForEventHandlers(); }
169 :
170 : #if 0
171 : /* Use the code below as a template for the implementation class for this interface. */
172 :
173 : /* Header file */
174 : class nsDOMEventTarget : public nsIDOMEventTarget
175 : {
176 : public:
177 : NS_DECL_ISUPPORTS
178 : NS_DECL_NSIDOMEVENTTARGET
179 :
180 : nsDOMEventTarget();
181 :
182 : private:
183 : ~nsDOMEventTarget();
184 :
185 : protected:
186 : /* additional members */
187 : };
188 :
189 : /* Implementation file */
190 : NS_IMPL_ISUPPORTS1(nsDOMEventTarget, nsIDOMEventTarget)
191 :
192 : nsDOMEventTarget::nsDOMEventTarget()
193 : {
194 : /* member initializers and constructor code */
195 : }
196 :
197 : nsDOMEventTarget::~nsDOMEventTarget()
198 : {
199 : /* destructor code */
200 : }
201 :
202 : /* [optional_argc] void addEventListener (in DOMString type, in nsIDOMEventListener listener, [optional] in boolean useCapture, [optional] in boolean wantsUntrusted); */
203 : NS_IMETHODIMP nsDOMEventTarget::AddEventListener(const nsAString & type, nsIDOMEventListener *listener, bool useCapture, bool wantsUntrusted, PRUint8 _argc)
204 : {
205 : return NS_ERROR_NOT_IMPLEMENTED;
206 : }
207 :
208 : /* [noscript,optional_argc] void addSystemEventListener (in DOMString type, in nsIDOMEventListener listener, [optional] in boolean aUseCapture, [optional] in boolean aWantsUntrusted); */
209 : NS_IMETHODIMP nsDOMEventTarget::AddSystemEventListener(const nsAString & type, nsIDOMEventListener *listener, bool aUseCapture, bool aWantsUntrusted, PRUint8 _argc)
210 : {
211 : return NS_ERROR_NOT_IMPLEMENTED;
212 : }
213 :
214 : /* void removeEventListener (in DOMString type, in nsIDOMEventListener listener, [optional] in boolean useCapture); */
215 : NS_IMETHODIMP nsDOMEventTarget::RemoveEventListener(const nsAString & type, nsIDOMEventListener *listener, bool useCapture)
216 : {
217 : return NS_ERROR_NOT_IMPLEMENTED;
218 : }
219 :
220 : /* [noscript] void removeSystemEventListener (in DOMString type, in nsIDOMEventListener listener, [optional] in boolean aUseCapture); */
221 : NS_IMETHODIMP nsDOMEventTarget::RemoveSystemEventListener(const nsAString & type, nsIDOMEventListener *listener, bool aUseCapture)
222 : {
223 : return NS_ERROR_NOT_IMPLEMENTED;
224 : }
225 :
226 : /* boolean dispatchEvent (in nsIDOMEvent evt) raises (DOMException); */
227 : NS_IMETHODIMP nsDOMEventTarget::DispatchEvent(nsIDOMEvent *evt, bool *_retval NS_OUTPARAM)
228 : {
229 : return NS_ERROR_NOT_IMPLEMENTED;
230 : }
231 :
232 : /* [nostdcall,notxpcom] nsIDOMEventTarget GetTargetForDOMEvent (); */
233 : nsIDOMEventTarget * nsDOMEventTarget::GetTargetForDOMEvent()
234 : {
235 : return NS_ERROR_NOT_IMPLEMENTED;
236 : }
237 :
238 : /* [nostdcall,notxpcom] nsIDOMEventTarget GetTargetForEventTargetChain (); */
239 : nsIDOMEventTarget * nsDOMEventTarget::GetTargetForEventTargetChain()
240 : {
241 : return NS_ERROR_NOT_IMPLEMENTED;
242 : }
243 :
244 : /* [noscript,nostdcall] void PreHandleEvent (in nsEventChainPreVisitorRef aVisitor); */
245 : nsresult nsDOMEventTarget::PreHandleEvent(nsEventChainPreVisitor & aVisitor)
246 : {
247 : return NS_ERROR_NOT_IMPLEMENTED;
248 : }
249 :
250 : /* [noscript,nostdcall] void WillHandleEvent (in nsEventChainPostVisitorRef aVisitor); */
251 : nsresult nsDOMEventTarget::WillHandleEvent(nsEventChainPostVisitor & aVisitor)
252 : {
253 : return NS_ERROR_NOT_IMPLEMENTED;
254 : }
255 :
256 : /* [noscript,nostdcall] void PostHandleEvent (in nsEventChainPostVisitorRef aVisitor); */
257 : nsresult nsDOMEventTarget::PostHandleEvent(nsEventChainPostVisitor & aVisitor)
258 : {
259 : return NS_ERROR_NOT_IMPLEMENTED;
260 : }
261 :
262 : /* [noscript,nostdcall] void DispatchDOMEvent (in nsEventPtr aEvent, in nsIDOMEvent aDOMEvent, in nsPresContextPtr aPresContext, in nsEventStatusPtr aEventStatus); */
263 : nsresult nsDOMEventTarget::DispatchDOMEvent(nsEvent *aEvent, nsIDOMEvent *aDOMEvent, nsPresContext *aPresContext, nsEventStatus *aEventStatus)
264 : {
265 : return NS_ERROR_NOT_IMPLEMENTED;
266 : }
267 :
268 : /* [nostdcall,notxpcom] nsEventListenerManagerPtr GetListenerManager (in boolean aMayCreate); */
269 : nsEventListenerManager * nsDOMEventTarget::GetListenerManager(bool aMayCreate)
270 : {
271 : return NS_ERROR_NOT_IMPLEMENTED;
272 : }
273 :
274 : /* [nostdcall,notxpcom] nsIScriptContext GetContextForEventHandlers (out nsresult aRv); */
275 : nsIScriptContext * nsDOMEventTarget::GetContextForEventHandlers(nsresult *aRv NS_OUTPARAM)
276 : {
277 : return NS_ERROR_NOT_IMPLEMENTED;
278 : }
279 :
280 : /* [nostdcall,notxpcom] JSContextPtr GetJSContextForEventHandlers (); */
281 : JSContext * nsDOMEventTarget::GetJSContextForEventHandlers()
282 : {
283 : return NS_ERROR_NOT_IMPLEMENTED;
284 : }
285 :
286 : /* End of implementation class template. */
287 : #endif
288 :
289 :
290 : typedef nsIDOMEventTarget nsPIDOMEventTarget;
291 : #define NS_IMPL_DOMTARGET_DEFAULTS(_class) \
292 : nsPIDOMEventTarget* _class::GetTargetForDOMEvent() { return this; } \
293 : nsPIDOMEventTarget* _class::GetTargetForEventTargetChain() { return this; } \
294 : nsresult _class::WillHandleEvent(nsEventChainPostVisitor& aVisitor) { return NS_OK; } \
295 : JSContext* _class::GetJSContextForEventHandlers() { return nsnull; }
296 : #define NS_IMPL_REMOVE_SYSTEM_EVENT_LISTENER(aClass) \
297 : NS_IMETHODIMP \
298 : aClass::RemoveSystemEventListener(const nsAString& aType, \
299 : nsIDOMEventListener *aListener, \
300 : bool aUseCapture) \
301 : { \
302 : nsEventListenerManager* listenerManager = GetListenerManager(false); \
303 : if (!listenerManager) { \
304 : return NS_OK; \
305 : } \
306 : PRUint32 flags = NS_EVENT_FLAG_SYSTEM_EVENT; \
307 : flags |= aUseCapture ? NS_EVENT_FLAG_CAPTURE : NS_EVENT_FLAG_BUBBLE; \
308 : listenerManager->RemoveEventListenerByType(aListener, aType, flags); \
309 : return NS_OK; \
310 : }
311 :
312 : #endif /* __gen_nsIDOMEventTarget_h__ */
|