Index: gecko-sdk/include/nsIObserverService.h |
=================================================================== |
--- gecko-sdk/include/nsIObserverService.h (revision 0) |
+++ gecko-sdk/include/nsIObserverService.h (revision 0) |
@@ -0,0 +1,179 @@ |
+/* |
+ * DO NOT EDIT. THIS FILE IS GENERATED FROM c:/builds/tinderbox/XR-Mozilla1.8.0-Release/WINNT_5.2_Depend/mozilla/xpcom/ds/nsIObserverService.idl |
+ */ |
+ |
+#ifndef __gen_nsIObserverService_h__ |
+#define __gen_nsIObserverService_h__ |
+ |
+ |
+#ifndef __gen_nsISupports_h__ |
+#include "nsISupports.h" |
+#endif |
+ |
+/* For IDL files that don't want to include root IDL files. */ |
+#ifndef NS_NO_VTABLE |
+#define NS_NO_VTABLE |
+#endif |
+class nsIObserver; /* forward declaration */ |
+ |
+class nsISimpleEnumerator; /* forward declaration */ |
+ |
+ |
+/* starting interface: nsIObserverService */ |
+#define NS_IOBSERVERSERVICE_IID_STR "d07f5192-e3d1-11d2-8acd-00105a1b8860" |
+ |
+#define NS_IOBSERVERSERVICE_IID \ |
+ {0xd07f5192, 0xe3d1, 0x11d2, \ |
+ { 0x8a, 0xcd, 0x00, 0x10, 0x5a, 0x1b, 0x88, 0x60 }} |
+ |
+/** |
+ * nsIObserverService |
+ * |
+ * Service allows a client listener (nsIObserver) to register and unregister for |
+ * notifications of specific string referenced topic. Service also provides a |
+ * way to notify registered listeners and a way to enumerate registered client |
+ * listeners. |
+ * |
+ * @status FROZEN |
+ */ |
+class NS_NO_VTABLE nsIObserverService : public nsISupports { |
+ public: |
+ |
+ NS_DEFINE_STATIC_IID_ACCESSOR(NS_IOBSERVERSERVICE_IID) |
+ |
+ /** |
+ * AddObserver |
+ * |
+ * Registers a given listener for a notifications regarding the specified |
+ * topic. |
+ * |
+ * @param anObserve : The interface pointer which will receive notifications. |
+ * @param aTopic : The notification topic or subject. |
+ * @param ownsWeak : If set to false, the nsIObserverService will hold a |
+ * strong reference to |anObserver|. If set to true and |
+ * |anObserver| supports the nsIWeakReference interface, |
+ * a weak reference will be held. Otherwise an error will be |
+ * returned. |
+ */ |
+ /* void addObserver (in nsIObserver anObserver, in string aTopic, in boolean ownsWeak); */ |
+ NS_IMETHOD AddObserver(nsIObserver *anObserver, const char *aTopic, PRBool ownsWeak) = 0; |
+ |
+ /** |
+ * removeObserver |
+ * |
+ * Unregisters a given listener from notifications regarding the specified |
+ * topic. |
+ * |
+ * @param anObserver : The interface pointer which will stop recieving |
+ * notifications. |
+ * @param aTopic : The notification topic or subject. |
+ */ |
+ /* void removeObserver (in nsIObserver anObserver, in string aTopic); */ |
+ NS_IMETHOD RemoveObserver(nsIObserver *anObserver, const char *aTopic) = 0; |
+ |
+ /** |
+ * notifyObservers |
+ * |
+ * Notifies all registered listeners of the given topic. |
+ * |
+ * @param aSubject : Notification specific interface pointer. |
+ * @param aTopic : The notification topic or subject. |
+ * @param someData : Notification specific wide string. |
+ */ |
+ /* void notifyObservers (in nsISupports aSubject, in string aTopic, in wstring someData); */ |
+ NS_IMETHOD NotifyObservers(nsISupports *aSubject, const char *aTopic, const PRUnichar *someData) = 0; |
+ |
+ /** |
+ * enumerateObservers |
+ * |
+ * Returns an enumeration of all registered listeners. |
+ * |
+ * @param aTopic : The notification topic or subject. |
+ */ |
+ /* nsISimpleEnumerator enumerateObservers (in string aTopic); */ |
+ NS_IMETHOD EnumerateObservers(const char *aTopic, nsISimpleEnumerator **_retval) = 0; |
+ |
+}; |
+ |
+/* Use this macro when declaring classes that implement this interface. */ |
+#define NS_DECL_NSIOBSERVERSERVICE \ |
+ NS_IMETHOD AddObserver(nsIObserver *anObserver, const char *aTopic, PRBool ownsWeak); \ |
+ NS_IMETHOD RemoveObserver(nsIObserver *anObserver, const char *aTopic); \ |
+ NS_IMETHOD NotifyObservers(nsISupports *aSubject, const char *aTopic, const PRUnichar *someData); \ |
+ NS_IMETHOD EnumerateObservers(const char *aTopic, nsISimpleEnumerator **_retval); |
+ |
+/* Use this macro to declare functions that forward the behavior of this interface to another object. */ |
+#define NS_FORWARD_NSIOBSERVERSERVICE(_to) \ |
+ NS_IMETHOD AddObserver(nsIObserver *anObserver, const char *aTopic, PRBool ownsWeak) { return _to AddObserver(anObserver, aTopic, ownsWeak); } \ |
+ NS_IMETHOD RemoveObserver(nsIObserver *anObserver, const char *aTopic) { return _to RemoveObserver(anObserver, aTopic); } \ |
+ NS_IMETHOD NotifyObservers(nsISupports *aSubject, const char *aTopic, const PRUnichar *someData) { return _to NotifyObservers(aSubject, aTopic, someData); } \ |
+ NS_IMETHOD EnumerateObservers(const char *aTopic, nsISimpleEnumerator **_retval) { return _to EnumerateObservers(aTopic, _retval); } |
+ |
+/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */ |
+#define NS_FORWARD_SAFE_NSIOBSERVERSERVICE(_to) \ |
+ NS_IMETHOD AddObserver(nsIObserver *anObserver, const char *aTopic, PRBool ownsWeak) { return !_to ? NS_ERROR_NULL_POINTER : _to->AddObserver(anObserver, aTopic, ownsWeak); } \ |
+ NS_IMETHOD RemoveObserver(nsIObserver *anObserver, const char *aTopic) { return !_to ? NS_ERROR_NULL_POINTER : _to->RemoveObserver(anObserver, aTopic); } \ |
+ NS_IMETHOD NotifyObservers(nsISupports *aSubject, const char *aTopic, const PRUnichar *someData) { return !_to ? NS_ERROR_NULL_POINTER : _to->NotifyObservers(aSubject, aTopic, someData); } \ |
+ NS_IMETHOD EnumerateObservers(const char *aTopic, nsISimpleEnumerator **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->EnumerateObservers(aTopic, _retval); } |
+ |
+#if 0 |
+/* Use the code below as a template for the implementation class for this interface. */ |
+ |
+/* Header file */ |
+class nsObserverService : public nsIObserverService |
+{ |
+public: |
+ NS_DECL_ISUPPORTS |
+ NS_DECL_NSIOBSERVERSERVICE |
+ |
+ nsObserverService(); |
+ |
+private: |
+ ~nsObserverService(); |
+ |
+protected: |
+ /* additional members */ |
+}; |
+ |
+/* Implementation file */ |
+NS_IMPL_ISUPPORTS1(nsObserverService, nsIObserverService) |
+ |
+nsObserverService::nsObserverService() |
+{ |
+ /* member initializers and constructor code */ |
+} |
+ |
+nsObserverService::~nsObserverService() |
+{ |
+ /* destructor code */ |
+} |
+ |
+/* void addObserver (in nsIObserver anObserver, in string aTopic, in boolean ownsWeak); */ |
+NS_IMETHODIMP nsObserverService::AddObserver(nsIObserver *anObserver, const char *aTopic, PRBool ownsWeak) |
+{ |
+ return NS_ERROR_NOT_IMPLEMENTED; |
+} |
+ |
+/* void removeObserver (in nsIObserver anObserver, in string aTopic); */ |
+NS_IMETHODIMP nsObserverService::RemoveObserver(nsIObserver *anObserver, const char *aTopic) |
+{ |
+ return NS_ERROR_NOT_IMPLEMENTED; |
+} |
+ |
+/* void notifyObservers (in nsISupports aSubject, in string aTopic, in wstring someData); */ |
+NS_IMETHODIMP nsObserverService::NotifyObservers(nsISupports *aSubject, const char *aTopic, const PRUnichar *someData) |
+{ |
+ return NS_ERROR_NOT_IMPLEMENTED; |
+} |
+ |
+/* nsISimpleEnumerator enumerateObservers (in string aTopic); */ |
+NS_IMETHODIMP nsObserverService::EnumerateObservers(const char *aTopic, nsISimpleEnumerator **_retval) |
+{ |
+ return NS_ERROR_NOT_IMPLEMENTED; |
+} |
+ |
+/* End of implementation class template. */ |
+#endif |
+ |
+ |
+#endif /* __gen_nsIObserverService_h__ */ |
Property changes on: gecko-sdk\include\nsIObserverService.h |
___________________________________________________________________ |
Added: svn:eol-style |
+ LF |