ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

nsiface.idl
Go to the documentation of this file.
00001 /*
00002  * Copyright 2005-2007 Jacek Caban for CodeWeavers
00003  *
00004  * This library is free software; you can redistribute it and/or
00005  * modify it under the terms of the GNU Lesser General Public
00006  * License as published by the Free Software Foundation; either
00007  * version 2.1 of the License, or (at your option) any later version.
00008  *
00009  * This library is distributed in the hope that it will be useful,
00010  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00011  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00012  * Lesser General Public License for more details.
00013  *
00014  * You should have received a copy of the GNU Lesser General Public
00015  * License along with this library; if not, write to the Free Software
00016  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
00017  */
00018 
00019 /* 
00020  * NOTE:
00021  * This file is not a typical idl file. Interfaces in this file are XPCOM
00022  * interfaces (NOT MSCOM!), but we generate the header file with WIDL
00023  * compatible with XPCOM, usable in C code.
00024  */
00025 
00026 cpp_quote("#define GECKO_VERSION \"1.0.0\"")
00027 cpp_quote("#define GECKO_VERSION_STRING \"Wine Gecko \" GECKO_VERSION")
00028 
00029 import "wtypes.idl";
00030 
00031 cpp_quote("#ifdef WINE_NO_UNICODE_MACROS")
00032 cpp_quote("#undef GetForm")
00033 cpp_quote("#undef SetPort")
00034 cpp_quote("#endif")
00035 
00036 typedef HRESULT nsresult;
00037 typedef ULONG nsrefcnt;
00038 
00039 typedef IID nsID;
00040 typedef IID nsIID;
00041 typedef nsIID nsCID;
00042 typedef REFIID nsIIDRef;
00043 typedef nsIIDRef nsCIDRef;
00044 
00045 typedef void** nsQIResult;
00046 typedef WCHAR PRUnichar;
00047 typedef ULONG PRUint32;
00048 typedef LONG PRInt32;
00049 typedef WORD PRUint16;
00050 typedef INT16 PRInt16;
00051 typedef BYTE PRUint8;
00052 typedef BOOL PRBool;
00053 typedef LARGE_INTEGER PRInt64;
00054 typedef ULARGE_INTEGER PRUint64;
00055 typedef PRUint64 DOMTimeStamp;
00056 typedef PRUint32 nsLoadFlags;
00057 
00058 typedef struct {
00059     void *v;
00060     void *d1;
00061     PRUint32 d2;
00062     void *d3;
00063 } nsCStringContainer;
00064 
00065 typedef struct {
00066     void *v;
00067     void *d1;
00068     PRUint32 d2;
00069     void *d3;
00070 } nsStringContainer;
00071 
00072 typedef nsCStringContainer nsACString;
00073 typedef nsStringContainer nsAString;
00074 
00075 interface nsIWebBrowserChrome;
00076 interface nsILoadGroup;
00077 interface nsIDOMNode;
00078 interface nsIDOMDocument;
00079 interface nsIDOMEvent;
00080 interface nsIEditor;
00081 interface nsISelectionController;
00082 interface nsITransactionManager;
00083 interface nsITransaction;
00084 interface nsIInlineSpellChecker;
00085 interface nsIOutputStream;
00086 interface nsIEditorObserver;
00087 interface nsIEditActionListener;
00088 interface nsIDocumentStateListener;
00089 interface nsIDOMCSSStyleSheet;
00090 interface nsIDOMDocumentView;
00091 interface nsIDocumentObserver;
00092 interface nsIDOMWindow;
00093 
00094 interface IMoniker;
00095 
00096 [
00097     object,
00098     uuid(00000000-0000-0000-c000-000000000046),
00099     local
00100 ]
00101 interface nsISupports
00102 {
00103     nsresult QueryInterface(nsIIDRef riid, nsQIResult result);
00104     nsrefcnt AddRef();
00105     nsrefcnt Release();
00106 }
00107 
00108 /* Currently we don't need a full declaration of these interfaces */
00109 typedef nsISupports nsISHistory;
00110 typedef nsISupports nsIWidget;
00111 typedef nsISupports nsIHttpHeaderVisitor;
00112 typedef nsISupports nsIDOMBarProp;
00113 typedef nsISupports nsIPrompt;
00114 typedef nsISupports nsIAuthPrompt;
00115 typedef nsISupports nsIDOMNamedNodeMap;
00116 typedef nsISupports nsIDOMAttr;
00117 typedef nsISupports nsIDOMDocumentType;
00118 typedef nsISupports nsIDOMDOMImplementation;
00119 typedef nsISupports nsIDOMCDATASection;
00120 typedef nsISupports nsIDOMProcessingInstruction;
00121 typedef nsISupports nsIDOMEntityReference;
00122 typedef nsISupports nsIWebProgressListener;
00123 typedef nsISupports nsIDOMCSSValue;
00124 typedef nsISupports nsIPrintSession;
00125 typedef nsISupports nsIControllerCommandTable;
00126 typedef nsISupports nsIPrincipal;
00127 typedef nsISupports nsIAtom;
00128 typedef nsISupports nsISupportsArray;
00129 typedef nsISupports nsIContentFilter;
00130 typedef nsISupports nsIDOMMediaList;
00131 typedef nsISupports nsIDOMHTMLTableCaptionElement;
00132 typedef nsISupports nsIDOMHTMLTableSectionElement;
00133 typedef nsISupports nsIDOMClientRectList;
00134 typedef nsISupports nsIDOMLocation;
00135 typedef nsISupports nsIDocument;
00136 typedef nsISupports nsIContent;
00137 typedef nsISupports nsINode;
00138 typedef nsISupports nsIStyleSheet;
00139 typedef nsISupports nsIStyleRule;
00140 typedef nsISupports nsIVariant;
00141 typedef nsISupports nsIDOMUserDataHandler;
00142 typedef nsISupports nsIDocShellLoadInfo;
00143 typedef nsISupports nsISHEntry;
00144 typedef nsISupports nsIPresShell;
00145 typedef nsISupports nsIContentViewer;
00146 typedef nsISupports nsIDocumentCharsetInfo;
00147 typedef nsISupports nsILayoutHistoryState;
00148 typedef nsISupports nsISecureBrowserUI;
00149 typedef nsISupports nsIDOMStorage;
00150 
00151 [
00152     object,
00153     uuid(8bb35ed9-e332-462d-9155-4a002ab5c958),
00154     local
00155     /* FROZEN */
00156 ]
00157 interface nsIServiceManager : nsISupports
00158 {
00159     nsresult GetService(nsCIDRef aClass, nsIIDRef aIID, void **result);
00160     nsresult GetServiceByContractID(const char *aContractID, nsIIDRef aIID, void **result);
00161     nsresult IsServiceInstantiated(nsCIDRef aClass, nsIIDRef aIID, BOOL *_retval);
00162     nsresult IsServiceInstantiatedByContractID(const char *aContractID, nsIIDRef aIID, BOOL *_retval);
00163 }
00164 
00165 [
00166     object,
00167     uuid(00000001-0000-0000-c000-000000000046),
00168     local
00169     /* FROZEN */
00170 ]
00171 interface nsIFactory : nsISupports
00172 {
00173     nsresult CreateInstance(nsISupports *aOuter, const nsIID *iid, void **result);
00174     nsresult LockFactory(PRBool lock);
00175 }
00176 
00177 [
00178     object,
00179     uuid(db242e01-e4d9-11d2-9dde-000064657374),
00180     local
00181     /* FROZEN */
00182 ]
00183 interface nsIObserver : nsISupports
00184 {
00185     nsresult Observe(nsISupports *aSubject, const char *aTopic, const PRUnichar *aData);
00186 }
00187 
00188 [
00189     object,
00190     uuid(a88e5a60-205a-4bb1-94e1-2628daf51eae),
00191     local
00192     /* FROZEN */
00193 ]
00194 interface nsIComponentManager : nsISupports
00195 {
00196     nsresult GetClassObject(nsCIDRef aClass, nsIIDRef aIID, nsQIResult result);
00197     nsresult GetClassObjectByContractID(const char *aContractID, nsIIDRef aIID, nsQIResult result);
00198     nsresult CreateInstance(nsCIDRef aClass, nsISupports *aDelegate, nsIIDRef aIID,
00199             nsQIResult result);
00200     nsresult CreateInstanceByContractID(const char *aContractID, nsISupports *aDelegate,
00201             nsIIDRef aIID, nsQIResult result);
00202 }
00203 
00204 [
00205     object,
00206     uuid(59e7e77a-38e4-11d4-8cf5-0060b0fc14a3),
00207     local
00208     /* FROZEN */
00209 ]
00210 interface nsIMemory : nsISupports
00211 {
00212     void *Alloc(/*size_t*/ int size);
00213     void *Realloc(void *_ptr, /*size_t*/ int newSize);
00214     void Free(void *_ptr);
00215     nsresult HeapMinimize(PRBool immediate);
00216     nsresult IsLowMemory(PRBool *_retval);
00217 }
00218 
00219 [
00220     object,
00221     uuid(9188bc85-f92e-11d2-81ef-0060083a0bcf),
00222     local
00223     /* FROZEN */
00224 ]
00225 interface nsIWeakReference : nsISupports
00226 {
00227     nsresult QueryReferent(const nsIID *riid, void **result);
00228 }
00229 
00230 [
00231     object,
00232     uuid(9188bc86-f92e-11d2-81ef-0060083a0bcf),
00233     local
00234     /* FROZEN */
00235 ]
00236 interface nsISupportsWeakReference : nsISupports
00237 {
00238     nsresult GetWeakReference(nsIWeakReference **_retval);
00239 }
00240 
00241 [
00242     object,
00243     uuid(033a1470-8b2a-11d3-af88-00a024ffc08c),
00244     local
00245     /* FROZEN */
00246 ]
00247 interface nsIInterfaceRequestor : nsISupports
00248 {
00249     nsresult GetInterface(const nsIID *riid, void **result);
00250 }
00251 
00252 [
00253     object,
00254     uuid(4a2abaf0-6886-11d3-9382-00104ba0fd40),
00255     local
00256     /* NOT_FROZEN */
00257 ]
00258 interface nsIRunnable : nsISupports
00259 {
00260     nsresult Run();
00261 }
00262 
00263 [
00264     object,
00265     uuid(d1899240-f9d2-11d2-bdd6-000064657374),
00266     local
00267     /* FROZEN */
00268 ]
00269 interface nsISimpleEnumerator : nsISupports
00270 {
00271     nsresult HasMoreElements(PRBool *_retval);
00272     nsresult GetNext(nsISupports **_retval);
00273 }
00274 
00275 [
00276     object,
00277     uuid(fa9c7f6c-61b3-11d4-9877-00c04fa0cf4a),
00278     local
00279     /* FROZEN */
00280 ]
00281 interface nsIInputStream : nsISupports
00282 {
00283     nsresult Close();
00284     nsresult Available(PRUint32 *_retval);
00285     nsresult Read(char *aBuf, PRUint32 aCount, PRUint32 *_retval);
00286     nsresult ReadSegments(nsresult (*aWriter)(nsIInputStream *aInStream, 
00287             void *aClosure, const char *aFromSegment, PRUint32 aToOffset,
00288             PRUint32 aCount, PRUint32 *aWriteCount),
00289             void *aClosure, PRUint32 aCount, PRUint32 *_retval);
00290     nsresult IsNonBlocking(PRBool *_retval);
00291 }
00292 
00293 [
00294     object,
00295     uuid(07a22cc0-0ce5-11d3-9331-00104ba0fd40),
00296     local
00297     /* FROZEN */
00298 ]
00299 interface nsIURI : nsISupports
00300 {
00301     nsresult GetSpec(nsACString *aSpec);
00302     nsresult SetSpec(const nsACString *aSpec);
00303     nsresult GetPrePath(nsACString *aPrePath);
00304     nsresult GetScheme(nsACString *aScheme);
00305     nsresult SetScheme(const nsACString *aScheme);
00306     nsresult GetUserPass(nsACString *aUserPass);
00307     nsresult SetUserPass(const nsACString *aUserPass);
00308     nsresult GetUsername(nsACString *aUsername);
00309     nsresult SetUsername(const nsACString *aUsername);
00310     nsresult GetPassword(nsACString *aPassword);
00311     nsresult SetPassword(const nsACString *aPassword);
00312     nsresult GetHostPort(nsACString *aHostPort);
00313     nsresult SetHostPort(const nsACString *aHostPort);
00314     nsresult GetHost(nsACString *aHost);
00315     nsresult SetHost(const nsACString *aHost);
00316     nsresult GetPort(PRInt32 *aPort);
00317     nsresult SetPort(PRInt32 aPort);
00318     nsresult GetPath(nsACString *aPath);
00319     nsresult SetPath(const nsACString *aPath);
00320     nsresult Equals(nsIURI *other, PRBool *_retval);
00321     nsresult SchemeIs(const char *scheme, PRBool *_retval);
00322     nsresult Clone(nsIURI **_retval);
00323     nsresult Resolve(const nsACString *relativePath, nsACString *_retval);
00324     nsresult GetAsciiSpec(nsACString *aAsciiSpec);
00325     nsresult GetAsciiHost(nsACString *aAsciiHost);
00326     nsresult GetOriginCharset(nsACString *aOriginCharset);
00327 }
00328 
00329 [
00330     object,
00331     uuid(d6116970-8034-11d3-9399-00104ba0fd40),
00332     local
00333     /* FROZEN */
00334 ]
00335 interface nsIURL : nsIURI
00336 {
00337     nsresult GetFilePath(nsACString *aFilePath);
00338     nsresult SetFilePath(const nsACString *aFilePath);
00339     nsresult GetParam(nsACString *aParam);
00340     nsresult SetParam(const nsACString *aParam);
00341     nsresult GetQuery(nsACString *aQuery);
00342     nsresult SetQuery(const nsACString *aQuery);
00343     nsresult GetRef(nsACString *aRef);
00344     nsresult SetRef(const nsACString *aRef);
00345     nsresult GetDirectory(nsACString *aDirectory);
00346     nsresult SetDirectory(const nsACString *aDirectory);
00347     nsresult GetFileName(nsACString *aFileName);
00348     nsresult SetFileName(const nsACString *aFileName);
00349     nsresult GetFileBaseName(nsACString *aFileBaseName);
00350     nsresult SetFileBaseName(const nsACString *aFileBaseName);
00351     nsresult GetFileExtension(nsACString *aFileExtension);
00352     nsresult SetFileExtension(const nsACString *aFileExtension);
00353     nsresult GetCommonBaseSpec(nsIURI *aURIToCompare, nsACString *_retval);
00354     nsresult GetRelativeSpec(nsIURI *aURIToCompare, nsACString *_retval);
00355 }
00356 
00357 [
00358     object,
00359     uuid(ef6bfbd2-fd46-48d8-96b7-9f8f0fd387fe),
00360     local
00361     /* FROZEN */
00362 ]
00363 interface nsIRequest : nsISupports
00364 {
00365     nsresult GetName(nsACString *aName);
00366     nsresult IsPending(PRBool *_retval);
00367     nsresult GetStatus(nsresult *aStatus);
00368     nsresult Cancel(nsresult aStatus);
00369     nsresult Suspend();
00370     nsresult Resume();
00371     nsresult GetLoadGroup(nsILoadGroup **aLoadGroup);
00372     nsresult SetLoadGroup(nsILoadGroup *aLoadGroup);
00373     nsresult GetLoadFlags(nsLoadFlags *aLoadFlags);
00374     nsresult SetLoadFlags(nsLoadFlags aLoadFlags);
00375 }
00376 
00377 [
00378     object,
00379     uuid(fd91e2e0-1481-11d3-9333-00104ba0fd40),
00380     local
00381     /* FROZEN */
00382 ]
00383 interface nsIRequestObserver : nsISupports
00384 {
00385     nsresult OnStartRequest(nsIRequest *aRequest, nsISupports *aContext);
00386     nsresult OnStopRequest(nsIRequest *aRequest, nsISupports *aContext, nsresult aStatusCode);
00387 }
00388 
00389 [
00390     object,
00391     uuid(1a637020-1482-11d3-9333-00104ba0fd40),
00392     local
00393     /* FROZEN */
00394 ] 
00395 interface nsIStreamListener : nsIRequestObserver
00396 {
00397     nsresult OnDataAvailable(nsIRequest *aRequest, nsISupports *aContext,
00398                              nsIInputStream *aInputStream, PRUint32 aOffset, PRUint32 aCount);
00399 }
00400 
00401 [
00402     object,
00403     uuid(3de0a31c-feaf-400f-9f1e-4ef71f8b20cc),
00404     local
00405     /* FROZEN */
00406 ]
00407 interface nsILoadGroup : nsIRequest
00408 {
00409     nsresult GetGroupObserver(nsIRequestObserver **aGroupObserver);
00410     nsresult SetGroupObserver(nsIRequestObserver *aGroupObserver);
00411     nsresult GetDefaultLoadRequest(nsIRequest **aDefaultLoadRequest);
00412     nsresult SetDefaultLoadRequest(nsIRequest *aDefaultLoadRequest);
00413     nsresult AddRequest(nsIRequest *aRequest, nsISupports *aContext);
00414     nsresult RemoveRequest(nsIRequest *aRequest, nsISupports *aContext, nsresult aStatus);
00415     nsresult GetRequests(nsISimpleEnumerator **aRequests);
00416     nsresult GetActiveCount(PRUint32 *aActiveCount);
00417     nsresult GetNotificationCallbacks(nsIInterfaceRequestor **aNotificationCallbacks);
00418     nsresult SetNotificationCallbacks(nsIInterfaceRequestor *aNotificationCallbacks);
00419 }
00420 
00421 [
00422     object,
00423     uuid(c63a055a-a676-4e71-bf3c-6cfa11082018),
00424     local
00425     /* FROZEN */
00426 ]
00427 interface nsIChannel : nsIRequest
00428 {
00429     nsresult GetOriginalURI(nsIURI **aOriginalURI);
00430     nsresult SetOriginalURI(nsIURI *aOriginalURI);
00431     nsresult GetURI(nsIURI **aURI);
00432     nsresult GetOwner(nsISupports **aOwner);
00433     nsresult SetOwner(nsISupports *aOwner);
00434     nsresult GetNotificationCallbacks(nsIInterfaceRequestor **aNotificationCallbacks);
00435     nsresult SetNotificationCallbacks(nsIInterfaceRequestor *aNotificationCallbacks);
00436     nsresult GetSecurityInfo(nsISupports **aSecurityInfo);
00437     nsresult GetContentType(nsACString *aContentType);
00438     nsresult SetContentType(const nsACString *aContentType);
00439     nsresult GetContentCharset(nsACString *aContentCharset);
00440     nsresult SetContentCharset(const nsACString *aContentCharset);
00441     nsresult GetContentLength(PRInt32 *aContentLength);
00442     nsresult SetContentLength(PRInt32 aContentLength);
00443     nsresult Open(nsIInputStream **_retval);
00444     nsresult AsyncOpen(nsIStreamListener *aListener, nsISupports *aContext);
00445 }
00446 
00447 [
00448     object,
00449     uuid(9277fe09-f0cc-4cd9-bbce-581dd94b0260),
00450     local
00451     /* FROZEN */
00452 ]
00453 interface nsIHttpChannel : nsIChannel
00454 {
00455     nsresult GetRequestMethod(nsACString *aRequestMethod);
00456     nsresult SetRequestMethod(const nsACString *aRequestMethod);
00457     nsresult GetReferrer(nsIURI **aReferrer);
00458     nsresult SetReferrer(nsIURI *aReferrer);
00459     nsresult GetRequestHeader(const nsACString *aHeader, nsACString *_retval);
00460     nsresult SetRequestHeader(const nsACString *aHeader, const nsACString *aValue, PRBool aMerge);
00461     nsresult VisitRequestHeaders(nsIHttpHeaderVisitor *aVisitor);
00462     nsresult GetAllowPipelining(PRBool *aAllowPipelining);
00463     nsresult SetAllowPipelining(PRBool aAllowPipelining);
00464     nsresult GetRedirectionLimit(PRUint32 *aRedirectionLimit);
00465     nsresult SetRedirectionLimit(PRUint32 aRedirectionLimit);
00466     nsresult GetResponseStatus(PRUint32 *aResponseStatus);
00467     nsresult GetResponseStatusText(nsACString *aResponseStatusText);
00468     nsresult GetRequestSucceeded(PRBool *aRequestSucceeded);
00469     nsresult GetResponseHeader(const nsACString *header, nsACString *_retval);
00470     nsresult SetResponseHeader(const nsACString *header, const nsACString *value, PRBool merge);
00471     nsresult VisitResponseHeaders(nsIHttpHeaderVisitor *aVisitor);
00472     nsresult IsNoStoreResponse(PRBool *_retval);
00473     nsresult IsNoCacheResponse(PRBool *_retval);
00474 }
00475 
00476 [
00477     object,
00478     uuid(0eb66361-faaa-4e52-8c7e-6c25f11f8e3c),
00479     local
00480     /* NOT_FROZEN */
00481 ]
00482 interface nsIHttpChannelInternal : nsISupports
00483 {
00484     nsresult GetDocumentURI(nsIURI **aDocumentURI);
00485     nsresult SetDocumentURI(nsIURI *aDocumentURI);
00486     nsresult GetRequestVersion(PRUint32 *major, PRUint32 *minor);
00487     nsresult GetResponseVersion(PRUint32 *major, PRUint32 *minor);
00488     nsresult SetCookie(const char *aCookieHeader);
00489     nsresult SetupFallbackChannel(const char *aFallbackKey);
00490     nsresult GetForceAllowThirdPartyCookie(PRBool *aForceAllowThirdPartyCookie);
00491     nsresult SetForceAllowThirdPartyCookie(PRBool aForceAllowThirdPartyCookie);
00492 }
00493 
00494 [
00495     object,
00496     uuid(ddf633d8-e9a4-439d-ad88-de636fd9bb75),
00497     local
00498     /* FROZEN */
00499 ]
00500 interface nsIUploadChannel : nsISupports
00501 {
00502     nsresult SetUploadStream(nsIInputStream *aStream, const nsACString *aContentType,
00503                              PRInt32 aContentLength);
00504     nsresult GetUploadStream(nsIInputStream **aUploadStream);
00505 }
00506 
00507 [
00508     object,
00509     uuid(a6cf90c1-15b3-11d2-932e-00805f8add32),
00510     local
00511     /* FROZEN */
00512 ]
00513 interface nsIDOMCSSRule : nsISupports
00514 {
00515     nsresult GetType(PRUint16 *aType);
00516     nsresult GetCssText(nsAString *aCssText);
00517     nsresult SetCssText(const nsAString *aCssText);
00518     nsresult GetParentStyleSheet(nsIDOMCSSStyleSheet **aParentStyleSheet);
00519     nsresult GetParentRule(nsIDOMCSSRule **aParentRule);
00520 }
00521 
00522 [
00523     object,
00524     uuid(a6cf90be-15b3-11d2-932e-00805f8add32),
00525     local
00526     /* FROZEN */
00527 ]
00528 interface nsIDOMCSSStyleDeclaration : nsISupports
00529 {
00530     nsresult GetCssText(nsAString *aCssText);
00531     nsresult SetCssText(const nsAString *aCssText);
00532     nsresult GetPropertyValue(const nsAString *propertyName, nsAString *_retval);
00533     nsresult GetPropertyCSSValue(const nsAString *propertyName, nsIDOMCSSValue **_retval);
00534     nsresult RemoveProperty(const nsAString *propertyName, nsAString *_retval);
00535     nsresult GetPropertyPriority(const nsAString *propertyName, nsAString *_retval);
00536     nsresult SetProperty(const nsAString *propertyName, const nsAString *value,
00537                          const nsAString *priority);
00538     nsresult GetLength(PRUint32 *aLength);
00539     nsresult Item(PRUint32 index, nsAString *_retval);
00540     nsresult GetParentRule(nsIDOMCSSRule **aParentRule);
00541 }
00542 
00543 [
00544     object,
00545     uuid(a6cf90c0-15b3-11d2-932e-00805f8add32),
00546     local
00547     /* FROZEN */
00548 ]
00549 interface nsIDOMCSSRuleList : nsISupports
00550 {
00551     nsresult GetLength(PRUint32 *aLength);
00552     nsresult Item(PRUint32 index, nsIDOMCSSRule **_retval);
00553 }
00554 
00555 [
00556     object,
00557     uuid(a6cf9080-15b3-11d2-932e-00805f8add32),
00558     local
00559     /* FROZEN */
00560 ]
00561 interface nsIDOMStyleSheet : nsISupports
00562 {
00563     nsresult GetType(nsAString *aType);
00564     nsresult GetDisabled(PRBool *aDisabled);
00565     nsresult SetDisabled(PRBool aDisabled);
00566     nsresult GetOwnerNode(nsIDOMNode **aOwnerNode);
00567     nsresult GetParentStyleSheet(nsIDOMStyleSheet **aParentStyleSheet);
00568     nsresult GetHref(nsAString *aHref);
00569     nsresult GetTitle(nsAString *aTitle);
00570     nsresult GetMedia(nsIDOMMediaList **aMedia);
00571 }
00572 
00573 [
00574     object,
00575     uuid(a6cf90c2-15b3-11d2-932e-00805f8add32),
00576     local
00577     /* FROZEN */
00578 ]
00579 interface nsIDOMCSSStyleSheet : nsIDOMStyleSheet
00580 {
00581     nsresult GetOwnerRule(nsIDOMCSSRule **aOwnerRule);
00582     nsresult GetCssRules(nsIDOMCSSRuleList **aCssRules);
00583     nsresult InsertRule(const nsAString *rule, PRUint32 index, PRUint32 *_retval);
00584     nsresult DeleteRule(PRUint32 index);
00585 }
00586 
00587 [
00588     object,
00589     uuid(a6cf9081-15b3-11d2-932e-00805f8add32),
00590     local
00591     /* FROZEN */
00592 ]
00593 interface nsIDOMStyleSheetList : nsISupports
00594 {
00595     nsresult GetLength(PRUint32 *aLength);
00596     nsresult Item(PRUint32 index, nsIDOMStyleSheet **_retval);
00597 }
00598 
00599 [
00600     object,
00601     uuid(a6cf907d-15b3-11d2-932e-00805f8add32),
00602     local
00603     /* FROZEN */
00604 ]
00605 interface nsIDOMNodeList : nsISupports
00606 {
00607     nsresult Item(PRUint32 index, nsIDOMNode **_retval);
00608     nsresult GetLength(PRUint32 *aLength);
00609 }
00610 
00611 [
00612     object,
00613     uuid(29fb2a18-1dd2-11b2-8dd9-a6fd5d5ad12f),
00614     local
00615     /* NOT_FROZEN */
00616 ]
00617 interface nsIDOM3Node : nsISupports
00618 {
00619     enum NSDOCPOSITION {
00620         DISCONNECTED = 1,
00621         PRECEDING = 2,
00622         FOLLOWING = 4,
00623         CONTAINS = 8,
00624         CONTAINED_BY = 16,
00625         IMPLEMENTATION_SPECIFIC = 32
00626     };
00627 
00628     nsresult GetBaseURI(nsAString *aBaseURI);
00629     nsresult CompareDocumentPosition(nsIDOMNode *other, PRUint16 *_retval);
00630     nsresult GetTextContent(nsAString *aTextContent);
00631     nsresult SetTextContent(const nsAString *aTextContent);
00632     nsresult IsSameNode(nsIDOMNode *other, PRBool *_retval);
00633     nsresult LookupPrefix(const nsAString *namespaceURI, PRBool *_retval);
00634     nsresult IsDefaultNamespace(const nsAString *namespaceURI, PRBool *_retval);
00635     nsresult LookupNamespaceURI(const nsAString *prefix, nsAString _retval);
00636     nsresult IsEqualNode(nsIDOMNode *arg, PRBool *_retval);
00637     nsresult GetFeature(const nsAString *feature, const nsAString *version, nsISupports **_retval);
00638     nsresult SetUserData(const nsAString *key, nsIVariant *data, nsIDOMUserDataHandler *handler, nsIVariant **_retval);
00639     nsresult GetUserData(const nsAString *key, nsIVariant **_retval);
00640 }
00641 
00642 [
00643     object,
00644     uuid(a6cf907c-15b3-11d2-932e-00805f8add32),
00645     local
00646     /* FROZEN */
00647 ]
00648 interface nsIDOMNode : nsISupports
00649 {
00650     enum NSNODETYPE {
00651         ELEMENT_NODE = 1,
00652         ATTRIBUTE_NODE = 2,
00653         TEXT_NODE = 3,
00654         CDATA_SELECTION_NODE = 4,
00655         ENTITY_REFERENCE_NODE = 5,
00656         ENTITY_NODE = 6,
00657         PROCESSING_INSTRUCTION_NODE = 7,
00658         COMMENT_NODE = 8,
00659         DOCUMENT_NODE = 9,
00660         DOCUMENT_TYPE_NODE = 10,
00661         DOCUMENT_FRAGMENT_NODE = 11,
00662         NOTATION_NODE = 12
00663     };
00664 
00665     nsresult GetNodeName(nsAString *aNodeName);
00666     nsresult GetNodeValue(nsAString *aNodeValue);
00667     nsresult SetNodeValue(const nsAString *aNodeValue);
00668     nsresult GetNodeType(PRUint16 *aNodeType);
00669     nsresult GetParentNode(nsIDOMNode **aParentNode);
00670     nsresult GetChildNodes(nsIDOMNodeList **aChildNodes);
00671     nsresult GetFirstChild(nsIDOMNode **aFirstChild);
00672     nsresult GetLastChild(nsIDOMNode **aLastChild);
00673     nsresult GetPreviousSibling(nsIDOMNode **aPreviousSibling);
00674     nsresult GetNextSibling(nsIDOMNode **aNextSibling);
00675     nsresult GetAttributes(nsIDOMNamedNodeMap **aAttributes);
00676     nsresult GetOwnerDocument(nsIDOMDocument **aOwnerDocument);
00677     nsresult InsertBefore(nsIDOMNode *newChild, nsIDOMNode *refChild, nsIDOMNode **_retval);
00678     nsresult ReplaceChild(nsIDOMNode *newChild, nsIDOMNode *oldChild, nsIDOMNode **_retval);
00679     nsresult RemoveChild(nsIDOMNode *oldChild, nsIDOMNode **_retval);
00680     nsresult AppendChild(nsIDOMNode *newChild, nsIDOMNode **_retval);
00681     nsresult HasChildNodes(PRBool *_retval);
00682     nsresult CloneNode(PRBool deep, nsIDOMNode **_retval);
00683     nsresult Normalize();
00684     nsresult IsSupported(const nsAString *feature, const nsAString *version, PRBool *_retval);
00685     nsresult GetNamespaceURI(nsAString *aNamespaceURI);
00686     nsresult GetPrefix(nsAString *aPrefix);
00687     nsresult SetPrefix(const nsAString *aPrefix);
00688     nsresult GetLocalName(nsAString *aLocalName);
00689     nsresult HasAttributes(PRBool *_retval);
00690 }
00691 
00692 [
00693     object,
00694     uuid(a6cf9078-15b3-11d2-932e-00805f8add32),
00695     local
00696     /* FROZEN */
00697 ]
00698 interface nsIDOMElement : nsIDOMNode
00699 {
00700     nsresult GetTagName(nsAString *aTagName);
00701     nsresult GetAttribute(const nsAString *name, nsAString *_retval);
00702     nsresult SetAttribute(const nsAString *name, const nsAString *value);
00703     nsresult RemoveAttribute(const nsAString *name);
00704     nsresult GetAttributeNode(const nsAString *name, nsIDOMAttr **_retval);
00705     nsresult SetAttributeNode(nsIDOMAttr *newAttr, nsIDOMAttr **_retval);
00706     nsresult RemoveAttributeNode(nsIDOMAttr *oldAttr, nsIDOMAttr **_retval);
00707     nsresult GetElementsByTagName(const nsAString *name, nsIDOMNodeList **_retval);
00708     nsresult GetAttributeNS(const nsAString *namespaceURI, const nsAString *localName,
00709                             nsAString *_retval);
00710     nsresult SetAttributeNS(const nsAString *namespaceURI, const nsAString *qualifiedName,
00711                             const nsAString *value);
00712     nsresult RemoveAttributeNS(const nsAString *namespaceURI, const nsAString *localName);
00713     nsresult GetAttributeNodeNS(const nsAString *namespaceURI, const nsAString *localName,
00714                                 nsIDOMAttr **_retval);
00715     nsresult SetAttributeNodeNS(nsIDOMAttr *newAttr, nsIDOMAttr **_retval);
00716     nsresult GetElementsByTagNameNS(const nsAString *namespaceURI, const nsAString *localName,
00717                                     nsIDOMNodeList **_retval);
00718     nsresult HasAttribute(const nsAString *name, PRBool *_retval);
00719     nsresult HasAttributeNS(const nsAString *namespaceURI, const nsAString *localName,
00720                             PRBool *_retval);
00721 }
00722 
00723 [
00724     object,
00725     uuid(99715845-95fc-4a56-aa53-214b65c26e22),
00726     local
00727     /* FROZEN */
00728 ]
00729 interface nsIDOMElementCSSInlineStyle : nsISupports
00730 {
00731     nsresult GetStyle(nsIDOMCSSStyleDeclaration **aStyle);
00732 }
00733 
00734 [
00735     object,
00736     uuid(b2f824c4-d9d3-499b-8d3b-45c8245497c6),
00737     local
00738     /* NOT_FROZEN */
00739 ]
00740 interface nsIDOMClientRect : nsISupports
00741 {
00742     nsresult GetLeft(float *aLeft);
00743     nsresult GetTop(float *aTop);
00744     nsresult GetRight(float *aRight);
00745     nsresult GetBottom(float *aBottom);
00746     nsresult GetWidth(float *aWidth);
00747     nsresult GetHeight(float *aHeight);
00748 }
00749 
00750 [
00751     object,
00752     uuid(f0aef489-18c5-4de6-99d5-58b3758b098c),
00753     local
00754     /* NOT_FROZEN */
00755 ]
00756 interface nsIDOMNSElement : nsISupports
00757 {
00758     nsresult GetElementsByClassName(const nsAString *classes, nsIDOMNodeList **_retval);
00759     nsresult GetClientRects(nsIDOMClientRectList **_retval);
00760     nsresult GetBoundingClientRect(nsIDOMClientRect **_retval);
00761     nsresult GetScrollTop(PRInt32 *aScrollTop);
00762     nsresult SetScrollTop(PRInt32 aScrollTop);
00763     nsresult GetScrollLeft(PRInt32 *aScrollLeft);
00764     nsresult SetScrollLeft(PRInt32 aScrollLeft);
00765     nsresult GetScrollHeight(PRInt32 *aScrollHeight);
00766     nsresult GetScrollWidth(PRInt32 *aScrollWidth);
00767     nsresult GetClientTop(PRInt32 *aClientTop);
00768     nsresult GetClientLeft(PRInt32 *aClientLeft);
00769     nsresult GetClientHeight(PRInt32 *aClientHeight);
00770     nsresult GetClientWidth(PRInt32 *aClientWidth);
00771     nsresult GetFirstElementChild(nsIDOMElement **aFirstElementChild);
00772     nsresult GetLastElementChild(nsIDOMElement **aLastElementChild);
00773     nsresult GetPreviousElementSibling(nsIDOMElement **aPreviousElementSibling);
00774     nsresult GetNextElementSibling(nsIDOMElement **aNextElementSibling);
00775     nsresult GetChildElementCount(PRUint32 *aChildElementCount);
00776     nsresult GetChildren(nsIDOMNodeList **aChildren);
00777 }
00778 
00779 cpp_quote("#undef GetClassName")
00780 
00781 [
00782     object,
00783     uuid(a6cf9085-15b3-11d2-932e-00805f8add32),
00784     local
00785     /* FROZEN */
00786 ]
00787 interface nsIDOMHTMLElement : nsIDOMElement
00788 {
00789     nsresult GetId(nsAString *aId);
00790     nsresult SetId(const nsAString *aId);
00791     nsresult GetTitle(nsAString *aTitle);
00792     nsresult SetTitle(const nsAString *aTitle);
00793     nsresult GetLang(nsAString *aLang);
00794     nsresult SetLang(const nsAString *aLang);
00795     nsresult GetDir(nsAString *aDir);
00796     nsresult SetDir(const nsAString *aDir);
00797     nsresult GetClassName(nsAString *aClassName);
00798     nsresult SetClassName(const nsAString *aClassName);
00799 }
00800 
00801 [
00802     object,
00803     uuid(7f142f9a-fba7-4949-93d6-cf08a974ac51),
00804     local
00805     /* NOT_FROZEN */
00806 ]
00807 interface nsIDOMNSHTMLElement : nsISupports
00808 {
00809     nsresult GetOffsetTop(PRInt32 *aOffsetTop);
00810     nsresult GetOffsetLeft(PRInt32 *aOffsetLeft);
00811     nsresult GetOffsetWidth(PRInt32 *aOffsetWidth);
00812     nsresult GetOffsetHeight(PRInt32 *aOffsetHeight);
00813     nsresult GetOffsetParent(nsIDOMElement **aOffsetParent);
00814     nsresult GetInnerHTML(nsAString *aInnerHTML);
00815     nsresult SetInnerHTML(const nsAString *aInnerHTML);
00816     nsresult GetTabIndex(PRInt32 *aTabIndex);
00817     nsresult SetTabIndex(PRInt32 aTabIndex);
00818     nsresult GetContentEditable(nsAString *aContentEditable);
00819     nsresult SetContentEditable(const nsAString *aContentEditable);
00820     nsresult GetDraggable(PRBool *aDraggable);
00821     nsresult SetDraggable(PRBool aDraggable);
00822     nsresult Blur();
00823     nsresult Focus();
00824     nsresult ScrollIntoView(PRBool top);
00825     nsresult GetSpellcheck(PRBool *aSpellcheck);
00826     nsresult SetSpellcheck(PRBool aSpellcheck);
00827 }
00828 
00829 [
00830     object,
00831     uuid(a6cf9083-15b3-11d2-932e-00805f8add32),
00832     local
00833     /* FROZEN */
00834 ]
00835 interface nsIDOMHTMLCollection : nsISupports
00836 {
00837     nsresult GetLength(PRUint32 *aLength);
00838     nsresult Item(PRUint32 index, nsIDOMNode **_retval);
00839     nsresult NamedItem(const nsAString *name, nsIDOMNode **_retval);
00840 }
00841 
00842 [
00843     object,
00844     uuid(a6cf9072-15b3-11d2-932e-00805f8add32),
00845     local
00846     /* FROZEN */
00847 ]
00848 interface nsIDOMCharacterData : nsIDOMNode
00849 {
00850     nsresult GetData(nsAString *aData);
00851     nsresult SetData(const nsAString *aData);
00852     nsresult GetLength(PRUint32 *aLength);
00853     nsresult SubstringData(PRUint32 offset, PRUint32 count, nsAString *_retval);
00854     nsresult AppendData(const nsAString *arg);
00855     nsresult InsertData(PRUint32 offset, const nsAString *arg);
00856     nsresult DeleteData(PRUint32 offset, PRUint32 count);
00857     nsresult ReplaceData(PRUint32 offset, PRUint32 count, const nsAString *arg);
00858 }
00859 
00860 [
00861     object,
00862     uuid(a6cf9082-15b3-11d2-932e-00805f8add32),
00863     local
00864     /* FROZEN */
00865 ]
00866 interface nsIDOMText : nsIDOMCharacterData
00867 {
00868     nsresult SplitText(PRUint32 offset, nsIDOMText **_retval);
00869 }
00870 
00871 [
00872     object,
00873     uuid(a6cf9073-15b3-11d2-932e-00805f8add32),
00874     local
00875     /* FROZEN */
00876 ]
00877 interface nsIDOMComment : nsIDOMCharacterData
00878 {
00879 }
00880 
00881 [
00882     object,
00883     uuid(a6cf9076-15b3-11d2-932e-00805f8add32),
00884     local
00885     /* FROZEN */
00886 ]
00887 interface nsIDOMDocumentFragment : nsIDOMNode
00888 {
00889 }
00890 
00891 [
00892     object,
00893     uuid(f51ebade-8b1a-11d3-aae7-0010830123b4),
00894     local
00895     /* FROZEN */
00896 ]
00897 interface nsIDOMAbstractView : nsISupports
00898 {
00899     nsresult GetDocument(nsIDOMDocumentView **aDocument);
00900 }
00901 
00902 [
00903     object,
00904     uuid(0b9341f3-95d4-4fa4-adcd-e119e0db2889),
00905     local
00906     /* NOT_FROZEN */
00907 ]
00908 interface nsIDOMViewCSS : nsIDOMAbstractView
00909 {
00910     nsresult GetComputedStyle(nsIDOMElement *elt, const nsAString *pseudoElt, nsIDOMCSSStyleDeclaration **_retval);
00911 }
00912 
00913 [
00914     object,
00915     uuid(a6cf9075-15b3-11d2-932e-00805f8add32),
00916     local
00917     /* FROZEN */
00918 ]
00919 interface nsIDOMDocument : nsIDOMNode
00920 {
00921     nsresult GetDoctype(nsIDOMDocumentType **aDoctype);
00922     nsresult GetImplementation(nsIDOMDOMImplementation **aImplementation);
00923     nsresult GetDocumentElement(nsIDOMElement **aDocumentElement);
00924     nsresult CreateElement(const nsAString *tagName, nsIDOMElement **_retval);
00925     nsresult CreateDocumentFragment(nsIDOMDocumentFragment **_retval);
00926     nsresult CreateTextNode(const nsAString *data, nsIDOMText **_retval);
00927     nsresult CreateComment(const nsAString *data, nsIDOMComment **_retval);
00928     nsresult CreateCDATASection(const nsAString *data, nsIDOMCDATASection **_retval);
00929     nsresult CreateProcessingInstruction(const nsAString *target, const nsAString *data,
00930                                          nsIDOMProcessingInstruction **_retval);
00931     nsresult CreateAttribute(const nsAString *name, nsIDOMAttr **_retval);
00932     nsresult CreateEntityReference(const nsAString *name, nsIDOMEntityReference **_retval);
00933     nsresult GetElementsByTagName(const nsAString *tagname, nsIDOMNodeList **_retval);
00934     nsresult ImportNode(nsIDOMNode *importedNode, PRBool deep, nsIDOMNode **_retval);
00935     nsresult CreateElementNS(const nsAString *namespaceURI, const nsAString *qualifiedName,
00936                              nsIDOMElement **_retval);
00937     nsresult CreateAttributeNS(const nsAString *namespaceURI, const nsAString *qualifiedName,
00938                                nsIDOMAttr **_retval);
00939     nsresult GetElementsByTagNameNS(const nsAString *namespaceURI, const nsAString *localName,
00940                                     nsIDOMNodeList **_retval);
00941     nsresult GetElementById(const nsAString *elementId, nsIDOMElement **_retval);
00942 }
00943 
00944 [
00945     object,
00946     uuid(09a439ad-4079-46d5-a050-4d7015d1a108),
00947     local
00948     /* NOT_FROZEN */
00949 ]
00950 interface nsIDOMNSDocument : nsISupports
00951 {
00952     nsresult GetCharacterSet(nsAString *aCharacterSet);
00953     nsresult GetDir(nsAString *aDir);
00954     nsresult SetDir(const nsAString *aDir);
00955     nsresult GetLocation(nsIDOMLocation **aLocation);
00956     nsresult GetTitle(nsAString *aTitle);
00957     nsresult SetTitle(const nsAString *aTitle);
00958     nsresult GetContentType(nsAString *aContentType);
00959     nsresult GetReadyState(nsAString *aReadyState);
00960     nsresult GetLastModified(nsAString *aLastModified);
00961     nsresult GetReferrer(nsAString *aReferrer);
00962     nsresult HasFocus(PRBool *_retval);
00963     nsresult GetActiveElement(nsIDOMElement **aActiveElement);
00964     nsresult GetElementsByClassName(const nsAString *classes, nsIDOMNodeList **_retval);
00965     nsresult ElementFromPoint(PRInt32 x, PRInt32 y, nsIDOMElement **_retval);
00966 
00967     /* Wine extensions */
00968     nsresult WineAddObserver(nsIDocumentObserver *aObserver);
00969     nsresult WineRemoveObserver(nsIDocumentObserver *aObserver);
00970     nsresult WineAddScriptRunner(nsIRunnable *aRunnable);
00971 }
00972 
00973 [
00974     object,
00975     uuid(a6cf9084-15b3-11d2-932e-00805f8add32),
00976     local
00977     /* FROZEN */
00978 ]
00979 interface nsIDOMHTMLDocument : nsIDOMDocument
00980 {
00981     nsresult GetTitle(nsAString *aTitle);
00982     nsresult SetTitle(const nsAString *aTitle);
00983     nsresult GetReferrer(nsAString *aReferrer);
00984     nsresult GetDomain(nsAString *aDomain);
00985     nsresult GetURL(nsAString *aURL);
00986     nsresult GetBody(nsIDOMHTMLElement **aBody);
00987     nsresult SetBody(nsIDOMHTMLElement *aBody);
00988     nsresult GetImages(nsIDOMHTMLCollection **aImages);
00989     nsresult GetApplets(nsIDOMHTMLCollection **aApplets);
00990     nsresult GetLinks(nsIDOMHTMLCollection **aLinks);
00991     nsresult GetForms(nsIDOMHTMLCollection **aForms);
00992     nsresult GetAnchors(nsIDOMHTMLCollection **aAnchors);
00993     nsresult GetCookie(nsAString *aCookie);
00994     nsresult SetCookie(const nsAString *aCookie);
00995     nsresult Open();
00996     nsresult Close();
00997     nsresult Write(const nsAString *text);
00998     nsresult Writeln(const nsAString *text);
00999     nsresult GetElementsByName(const nsAString *elementName, nsIDOMNodeList **_retval);
01000 }
01001 
01002 [
01003     object,
01004     uuid(79beb289-3644-4b54-9432-9fb993945629),
01005     local
01006     /* NOT_FROZEN */
01007 ]
01008 interface nsIDOMNSHTMLDocument : nsISupports
01009 {
01010     nsresult GetWidth(PRInt32 *aWidth);
01011     nsresult GetHeight(PRInt32 *aHeight);
01012     nsresult GetAlinkColor(nsAString *aAlinkColor);
01013     nsresult SetAlinkColor(const nsAString *aAlinkColor);
01014     nsresult GetLinkColor(nsAString *aLinkColor);
01015     nsresult SetLinkColor(const nsAString *aLinkColor);
01016     nsresult GetVlinkColor(nsAString *aVlinkColor);
01017     nsresult SetVlinkColor(const nsAString *aVlinkColor);
01018     nsresult GetBgColor(nsAString *aBgColor);
01019     nsresult SetBgColor(const nsAString *aBgColor);
01020     nsresult GetFgColor(nsAString *aFgColor);
01021     nsresult SetFgColor(const nsAString *aFgColor);
01022     nsresult GetDomain(nsAString *aDomain);
01023     nsresult SetDomain(const nsAString *aDomain);
01024     nsresult GetEmbeds(nsIDOMHTMLCollection **aEmbeds);
01025     nsresult GetSelection(nsAString *_retval);
01026     nsresult Open(nsACString *aContentType, PRBool aReplace, nsIDOMDocument **_retval);
01027     nsresult Write();
01028     nsresult Writeln();
01029     nsresult Clear();
01030     nsresult CaptureEvents(PRInt32 eventFlags);
01031     nsresult ReleaseEvents(PRInt32 eventFlags);
01032     nsresult RouteEvent(nsIDOMEvent *evt);
01033     nsresult GetCompatMode(nsAString *aCompatMode);
01034     nsresult GetPlugins(nsIDOMHTMLCollection **aPlugins);
01035     nsresult GetDesignMode(nsAString *aDesignMode);
01036     nsresult SetDesignMode(const nsAString *aDesignMode);
01037     nsresult ExecCommand(const nsAString *commandID, PRBool doShowUI, const nsAString *value, PRBool *_retval);
01038     nsresult ExecCommandShowHelp(const nsAString *commandID, PRBool *_retval);
01039     nsresult QueryCommandEnabled(const nsAString *commandID, PRBool *_retval);
01040     nsresult QueryCommandIndeterm(const nsAString *commandID, PRBool *_retval);
01041     nsresult QueryCommandState(const nsAString *commandID, PRBool *_retval);
01042     nsresult QueryCommandSupported(const nsAString *commandID, PRBool *_retval);
01043     nsresult QueryCommandText(const nsAString *commandID, nsAString *_retval);
01044     nsresult QueryCommandValue(const nsAString *commandID, nsAString *_retval);
01045 }
01046 
01047 [
01048     object,
01049     uuid(3d9f4973-dd2e-48f5-b5f7-2634e09eadd9),
01050     local
01051     /* FROZEN */
01052 ]
01053 interface nsIDOMDocumentStyle : nsISupports
01054 {
01055     nsresult GetStyleSheets(nsIDOMStyleSheetList **aStyleSheets);
01056 }
01057 
01058 [
01059     object,
01060     uuid(1acdb2ba-1dd2-11b2-95bc-9542495d2569),
01061     local
01062     /* FROZEN */
01063 ]
01064 interface nsIDOMDocumentView : nsISupports
01065 {
01066     nsresult GetDefaultView(nsIDOMAbstractView **aDefaultView);
01067 }
01068 
01069 [
01070     object,
01071     uuid(46b91d66-28e2-11d4-ab1e-0010830123b4),
01072     local
01073     /* FROZEN */
01074 ]
01075 interface nsIDOMDocumentEvent : nsISupports
01076 {
01077 cpp_quote("#undef CreateEvent")
01078     nsresult CreateEvent(const nsAString *eventType, nsIDOMEvent **_retval);
01079 }
01080 
01081 [
01082     object,
01083     uuid(a6cf90ce-15b3-11d2-932e-00805f8add32),
01084     local
01085     /* FROZEN */
01086 ]
01087 interface nsIDOMRange : nsISupports
01088 {
01089     enum {
01090         NS_START_TO_START,
01091         NS_START_TO_END,
01092         NS_END_TO_END,
01093         NS_END_TO_START
01094     };
01095 
01096     nsresult GetStartContainer(nsIDOMNode **aStartContainer);
01097     nsresult GetStartOffset(PRInt32 *aStartOffset);
01098     nsresult GetEndContainer(nsIDOMNode **aEndContainer);
01099     nsresult GetEndOffset(PRInt32 *aEndOffset);
01100     nsresult GetCollapsed(PRBool *aCollapsed);
01101     nsresult GetCommonAncestorContainer(nsIDOMNode **aCommonAncestorContainer);
01102     nsresult SetStart(nsIDOMNode *refNode, PRInt32 offset);
01103     nsresult SetEnd(nsIDOMNode *refNode, PRInt32 offset);
01104     nsresult SetStartBefore(nsIDOMNode *refNode);
01105     nsresult SetStartAfter(nsIDOMNode *refNode);
01106     nsresult SetEndBefore(nsIDOMNode *refNode);
01107     nsresult SetEndAfter(nsIDOMNode *refNode);
01108     nsresult Collapse(PRBool toStart);
01109     nsresult SelectNode(nsIDOMNode *refNode);
01110     nsresult SelectNodeContents(nsIDOMNode *refNode);
01111     nsresult CompareBoundaryPoints(PRUint16 how, nsIDOMRange *sourceRange, PRInt16 *_retval);
01112     nsresult DeleteContents();
01113     nsresult ExtractContents(nsIDOMDocumentFragment **_retval);
01114     nsresult CloneContents(nsIDOMDocumentFragment **_retval);
01115     nsresult InsertNode(nsIDOMNode *newNode);
01116     nsresult SurroundContents(nsIDOMNode *newParent);
01117     nsresult CloneRange(nsIDOMRange **_retval);
01118     nsresult ToString(nsAString *_retval);
01119     nsresult Detach();
01120 }
01121 
01122 [
01123     object,
01124     uuid(59188642-23b4-41d6-bde1-302c3906d1f0),
01125     local
01126     /* NOT_FROZEN */
01127 ]
01128 interface nsIDOMNSRange : nsISupports
01129 {
01130     nsresult CreateContextualFragment([in] const nsAString *fragment, [out] nsIDOMDocumentFragment **_retval);
01131     nsresult IsPointInRange([in] nsIDOMNode *parent, [in] PRInt32 offset, [out] PRBool *_retval);
01132     nsresult ComparePoint([in] nsIDOMNode *parent, [in] PRInt32 offset, [out] PRInt16 *_retval);
01133 }
01134 
01135 
01136 [
01137     object,
01138     uuid(7b9badc6-c9bc-447a-8670-dbd195aed24b),
01139     local
01140     /* FROZEN */
01141 ]
01142 interface nsIDOMDocumentRange : nsISupports
01143 {
01144     nsresult CreateRange(nsIDOMRange **_retval);
01145 }
01146 
01147 [
01148     object,
01149     uuid(b2c7ed59-8634-4352-9e37-5484c8b6e4e1),
01150     local
01151     /* FROZEN */
01152 ]
01153 interface nsISelection : nsISupports
01154 {
01155     nsresult GetAnchorNode(nsIDOMNode **aAnchorNode);
01156     nsresult GetAnchorOffset(PRInt32 *aAnchorOffset);
01157     nsresult GetFocusNode(nsIDOMNode **aFocusNode);
01158     nsresult GetFocusOffset(PRInt32 *aFocusOffset);
01159     nsresult GetIsCollapsed(PRBool *aIsCollapsed);
01160     nsresult GetRangeCount(PRInt32 *aRangeCount);
01161     nsresult GetRangeAt(PRInt32 index, nsIDOMRange **_retval);
01162     nsresult Collapse(nsIDOMNode *parentNode, PRInt32 offset);
01163     nsresult Extend(nsIDOMNode *parentNode, PRInt32 offset);
01164     nsresult CollapseToStart();
01165     nsresult CollapseToEnd();
01166     nsresult ContainsNode(nsIDOMNode *node, PRBool entirelyContained, PRBool *_retval);
01167     nsresult SelectAllChildren(nsIDOMNode *parentNode);
01168     nsresult AddRange(nsIDOMRange *range);
01169     nsresult RemoveRange(nsIDOMRange *range);
01170     nsresult RemoveAllRanges();
01171     nsresult DeleteFromDocument();
01172     nsresult SelectionLanguageChange(PRBool langRTL);
01173     nsresult ToString(PRUnichar **_retval);
01174 }
01175 
01176 [
01177     object,
01178     uuid(a6cf906f-15b3-11d2-932e-00805f8add32),
01179     local
01180     /* FROZEN */
01181 ]
01182 interface nsIDOMWindowCollection : nsISupports
01183 {
01184     nsresult GetLength(PRUint32 *aLength);
01185     nsresult Item(PRUint32 index, nsIDOMWindow **_retval);
01186     nsresult NamedItem(const nsAString *name, nsIDOMWindow **_retval);
01187 }
01188 
01189 [
01190     object,
01191     uuid(a6cf906b-15b3-11d2-932e-00805f8add32),
01192     local
01193     /* FROZEN */
01194 ]
01195 interface nsIDOMWindow : nsISupports
01196 {
01197     nsresult GetDocument(nsIDOMDocument **aDocument);
01198     nsresult GetParent(nsIDOMWindow **aParent);
01199     nsresult GetTop(nsIDOMWindow **aTop);
01200     nsresult GetScrollbars(nsIDOMBarProp **aScrollbars);
01201     nsresult GetFrames(nsIDOMWindowCollection **aFrames);
01202     nsresult GetName(nsAString *aName);
01203     nsresult SetName(const nsAString *aName);
01204     nsresult GetTextZoom(float *aTextZoom);
01205     nsresult SetTextZoom(float aTextZoom);
01206     nsresult GetScrollX(PRInt32 *aScrollX);
01207     nsresult GetScrollY(PRInt32 *aScrollY);
01208     nsresult ScrollTo(PRInt32 xScroll, PRInt32 yScroll);
01209     nsresult ScrollBy(PRInt32 xScrollDif, PRInt32 yScrollDif);
01210     nsresult GetSelection(nsISelection **_retval);
01211     nsresult ScrollByLines(PRInt32 numLines);
01212     nsresult ScrollByPages(PRInt32 numPages);
01213     nsresult SizeToContent();
01214 }
01215 
01216 [
01217     object,
01218     uuid(a6cf908e-15b3-11d2-932e-00805f8add32),
01219     local
01220     /* FROZEN */
01221 ]
01222 interface nsIDOMHTMLBodyElement : nsIDOMHTMLElement
01223 {
01224     nsresult GetALink(nsAString *aALink);
01225     nsresult SetALink(const nsAString *aALink);
01226     nsresult GetBackground(nsAString *aBackground);
01227     nsresult SetBackground(const nsAString *aBackground);
01228     nsresult GetBgColor(nsAString *aBgColor);
01229     nsresult SetBgColor(const nsAString *aBgColor);
01230     nsresult GetLink(nsAString *aLink);
01231     nsresult SetLink(const nsAString *aLink);
01232     nsresult GetText(nsAString *aText);
01233     nsresult SetText(const nsAString *aText);
01234     nsresult GetVLink(nsAString *aVLink);
01235     nsresult SetVLink(const nsAString *aVLink);
01236 }
01237 
01238 [
01239     object,
01240     uuid(a6cf908f-15b3-11d2-932e-00805f8add32),
01241     local
01242     /* FROZEN */
01243 ]
01244 interface nsIDOMHTMLFormElement : nsIDOMHTMLElement
01245 {
01246     nsresult GetElements(nsIDOMHTMLCollection **aElements);
01247     nsresult GetLength(PRInt32 *aLength);
01248     nsresult GetName(nsAString *aName);
01249     nsresult SetName(const nsAString *aName);
01250     nsresult GetAcceptCharset(nsAString *aAcceptCharset);
01251     nsresult SetAcceptCharset(const nsAString *aAcceptCharset);
01252     nsresult GetAction(nsAString *aAction);
01253     nsresult SetAction(const nsAString *aAction);
01254     nsresult GetEnctype(nsAString *aEnctype);
01255     nsresult SetEnctype(const nsAString *aEnctype);
01256     nsresult GetMethod(nsAString *aMethod);
01257     nsresult SetMethod(const nsAString *aMethod);
01258     nsresult GetTarget(nsAString *aTarget);
01259     nsresult SetTarget(const nsAString *aTarget);
01260     nsresult Submit();
01261     nsresult Reset();
01262 }
01263 
01264 [
01265     object,
01266     uuid(a6cf9093-15b3-11d2-932e-00805f8add32),
01267     local
01268     /* FROZEN */
01269 ]
01270 interface nsIDOMHTMLInputElement : nsIDOMHTMLElement
01271 {
01272     nsresult GetDefaultValue(nsAString *aDefaultValue);
01273     nsresult SetDefaultValue(const nsAString *aDefaultValue);
01274     nsresult GetDefaultChecked(PRBool *aDefaultChecked);
01275     nsresult SetDefaultChecked(PRBool aDefaultChecked);
01276     nsresult GetForm(nsIDOMHTMLFormElement **aForm);
01277     nsresult GetAccept(nsAString *aAccept);
01278     nsresult SetAccept(const nsAString *aAccept);
01279     nsresult GetAccessKey(nsAString *aAccessKey);
01280     nsresult SetAccessKey(const nsAString *aAccessKey);
01281     nsresult GetAlign(nsAString *aAlign);
01282     nsresult SetAlign(const nsAString *aAlign);
01283     nsresult GetAlt(nsAString *aAlt);
01284     nsresult SetAlt(const nsAString *aAlt);
01285     nsresult GetChecked(PRBool *aChecked);
01286     nsresult SetChecked(PRBool aChecked);
01287     nsresult GetDisabled(PRBool *aDisabled);
01288     nsresult SetDisabled(PRBool aDisabled);
01289     nsresult GetMaxLength(PRInt32 *aMaxLength);
01290     nsresult SetMaxLength(PRInt32 aMaxLength);
01291     nsresult GetName(nsAString *aName);
01292     nsresult SetName(const nsAString *aName);
01293     nsresult GetReadOnly(PRBool *aReadOnly);
01294     nsresult SetReadOnly(PRBool aReadOnly);
01295     nsresult GetSize(PRUint32 *aSize);
01296     nsresult SetSize(PRUint32 aSize);
01297     nsresult GetSrc(nsAString *aSrc);
01298     nsresult SetSrc(const nsAString *aSrc);
01299     nsresult GetTabIndex(PRInt32 *aTabIndex);
01300     nsresult SetTabIndex(PRInt32 aTabIndex);
01301     nsresult GetType(nsAString *aType);
01302     nsresult SetType(const nsAString *aType);
01303     nsresult GetUseMap(nsAString *aUseMap);
01304     nsresult SetUseMap(const nsAString *aUseMap);
01305     nsresult GetValue(nsAString *aValue);
01306     nsresult SetValue(const nsAString *aValue);
01307     nsresult Blur();
01308     nsresult Focus();
01309     nsresult Select();
01310     nsresult Click();
01311 }
01312 
01313 [
01314     object,
01315     uuid(a6cf9092-15b3-11d2-932e-00805f8add32),
01316     local
01317     /* FROZEN */
01318 ]
01319 interface nsIDOMHTMLOptionElement : nsIDOMHTMLElement
01320 {
01321     nsresult GetForm(nsIDOMHTMLFormElement **aForm);
01322     nsresult GetDefaultSelected(PRBool *aDefaultSelected);
01323     nsresult SetDefaultSelected(PRBool aDefaultSelected);
01324     nsresult GetText(nsAString *aText);
01325     nsresult GetIndex(PRInt32 *aIndex);
01326     nsresult GetDisabled(PRBool *aDisabled);
01327     nsresult SetDisabled(PRBool aDisabled);
01328     nsresult GetLabel(nsAString *aLabel);
01329     nsresult SetLabel(const nsAString *aLabel);
01330     nsresult GetSelected(PRBool *aSelected);
01331     nsresult SetSelected(PRBool aSelected);
01332     nsresult GetValue(nsAString *aValue);
01333     nsresult SetValue(const nsAString *aValue);
01334 }
01335 
01336 [
01337     object,
01338     uuid(bce0213c-f70f-488f-b93f-688acca55d63),
01339     local
01340     /* FROZEN */
01341 ]
01342 interface nsIDOMHTMLOptionsCollection : nsISupports
01343 {
01344     nsresult GetLength(PRUint32 *aLength);
01345     nsresult SetLength(PRUint32 aLength);
01346     nsresult Item(PRUint32 index, nsIDOMNode **_retval);
01347     nsresult NamedItem(const nsAString *name, nsIDOMNode **_retval);
01348 }
01349 
01350 [
01351     object,
01352     uuid(a6cf9090-15b3-11d2-932e-00805f8add32),
01353     local
01354     /* FROZEN */
01355 ]
01356 interface nsIDOMHTMLSelectElement : nsIDOMHTMLElement
01357 {
01358     nsresult GetType(nsAString *aType);
01359     nsresult GetSelectedIndex(PRInt32 *aSelectedIndex);
01360     nsresult SetSelectedIndex(PRInt32 aSelectedIndex);
01361     nsresult GetValue(nsAString *aValue);
01362     nsresult SetValue(const nsAString *aValue);
01363     nsresult GetLength(PRUint32 *aLength);
01364     nsresult SetLength(PRUint32 aLength);
01365     nsresult GetForm(nsIDOMHTMLFormElement **aForm);
01366     nsresult GetOptions(nsIDOMHTMLOptionsCollection **aOptions);
01367     nsresult GetDisabled(PRBool *aDisabled);
01368     nsresult SetDisabled(PRBool aDisabled);
01369     nsresult GetMultiple(PRBool *aMultiple);
01370     nsresult SetMultiple(PRBool aMultiple);
01371     nsresult GetName(nsAString *aName);
01372     nsresult SetName(const nsAString *aName);
01373     nsresult GetSize(PRInt32 *aSize);
01374     nsresult SetSize(PRInt32 aSize);
01375     nsresult GetTabIndex(PRInt32 *aTabIndex);
01376     nsresult SetTabIndex(PRInt32 aTabIndex);
01377     nsresult Add(nsIDOMHTMLElement *element, nsIDOMHTMLElement *before);
01378     nsresult Remove(PRInt32 index);
01379     nsresult Blur();
01380     nsresult Focus();
01381 }
01382 
01383 [
01384     object,
01385     uuid(a6cf9094-15b3-11d2-932e-00805f8add32),
01386     local
01387     /* FROZEN */
01388 ]
01389 interface nsIDOMHTMLTextAreaElement : nsIDOMHTMLElement
01390 {
01391     nsresult GetDefaultValue(nsAString *aDefaultValue);
01392     nsresult SetDefaultValue(const nsAString *aDefaultValue);
01393     nsresult GetForm(nsIDOMHTMLFormElement **aForm);
01394     nsresult GetAccessKey(nsAString *aAccessKey);
01395     nsresult SetAccessKey(const nsAString *aAccessKey);
01396     nsresult GetCols(PRInt32 *aCols);
01397     nsresult SetCols(PRInt32 aCols);
01398     nsresult GetDisabled(PRBool *aDisabled);
01399     nsresult SetDisabled(PRBool aDisabled);
01400     nsresult GetName(nsAString *aName);
01401     nsresult SetName(const nsAString *aName);
01402     nsresult GetReadOnly(PRBool *aReadOnly);
01403     nsresult SetReadOnly(PRBool aReadOnly);
01404     nsresult GetRows(PRInt32 *aRows);
01405     nsresult SetRows(PRInt32 aRows);
01406     nsresult GetTabIndex(PRInt32 *aTabIndex);
01407     nsresult SetTabIndex(PRInt32 aTabIndex);
01408     nsresult GetType(nsAString *aType);
01409     nsresult GetValue(nsAString *aValue);
01410     nsresult SetValue(const nsAString *aValue);
01411     nsresult Blur();
01412     nsresult Focus();
01413     nsresult Select();
01414 }
01415 
01416 [
01417     object,
01418     uuid(a6cf90b1-15b3-11d2-932e-00805f8add32),
01419     local
01420     /* FROZEN */
01421 ]
01422 interface nsIDOMHTMLScriptElement : nsIDOMHTMLElement
01423 {
01424     nsresult GetText(nsAString *aText);
01425     nsresult SetText(const nsAString *aText);
01426     nsresult GetHtmlFor(nsAString *aHtmlFor);
01427     nsresult SetHtmlFor(const nsAString *aHtmlFor);
01428     nsresult GetEvent(nsAString *aEvent);
01429     nsresult SetEvent(const nsAString *aEvent);
01430     nsresult GetCharset(nsAString *aCharset);
01431     nsresult SetCharset(const nsAString *aCharset);
01432     nsresult GetDefer(PRBool *aDefer);
01433     nsresult SetDefer(PRBool aDefer);
01434     nsresult GetSrc(nsAString *aSrc);
01435     nsresult SetSrc(const nsAString *aSrc);
01436     nsresult GetType(nsAString *aType);
01437     nsresult SetType(const nsAString *aType);
01438 }
01439 
01440 [
01441     object,
01442     uuid(a6cf90ab-15b3-11d2-932e-00805f8add32),
01443     local
01444     /* FROZEN */
01445 ]
01446 interface nsIDOMHTMLImageElement : nsIDOMHTMLElement
01447 {
01448     nsresult GetName(nsAString *aName);
01449     nsresult SetName(const nsAString *aName);
01450     nsresult GetAlign(nsAString *aAlign);
01451     nsresult SetAlign(const nsAString *aAlign);
01452     nsresult GetAlt(nsAString *aAlt);
01453     nsresult SetAlt(const nsAString *aAlt);
01454     nsresult GetBorder(nsAString *aBorder);
01455     nsresult SetBorder(const nsAString *aBorder);
01456     nsresult GetHeight(PRInt32 *aHeight);
01457     nsresult SetHeight(PRInt32 aHeight);
01458     nsresult GetHspace(PRInt32 *aHspace);
01459     nsresult SetHspace(PRInt32 aHspace);
01460     nsresult GetIsMap(PRBool *aIsMap);
01461     nsresult SetIsMap(PRBool aIsMap);
01462     nsresult GetLongDesc(nsAString *aLongDesc);
01463     nsresult SetLongDesc(const nsAString *aLongDesc);
01464     nsresult GetSrc(nsAString *aSrc);
01465     nsresult SetSrc(const nsAString *aSrc);
01466     nsresult GetUseMap(nsAString *aUseMap);
01467     nsresult SetUseMap(const nsAString *aUseMap);
01468     nsresult GetVspace(PRInt32 *aVspace);
01469     nsresult SetVspace(PRInt32 aVspace);
01470     nsresult GetWidth(PRInt32 *aWidth);
01471     nsresult SetWidth(PRInt32 aWidth);
01472 }
01473 
01474 [
01475     object,
01476     uuid(a6cf90aa-15b3-11d2-932e-00805f8add32),
01477     local
01478     /* FROZEN */
01479 ]
01480 interface nsIDOMHTMLAnchorElement : nsIDOMHTMLElement
01481 {
01482     nsresult GetAccessKey(nsAString *aAccessKey);
01483     nsresult SetAccessKey(const nsAString *aAccessKey);
01484     nsresult GetCharset(nsAString *aCharset);
01485     nsresult SetCharset(const nsAString *aCharset);
01486     nsresult GetCoords(nsAString *aCoords);
01487     nsresult SetCoords(const nsAString *aCoords);
01488     nsresult GetHref(nsAString *aHref);
01489     nsresult SetHref(const nsAString *aHref);
01490     nsresult GetHreflang(nsAString *aHreflang);
01491     nsresult SetHreflang(const nsAString *aHreflang);
01492     nsresult GetName(nsAString *aName);
01493     nsresult SetName(const nsAString *aName);
01494     nsresult GetRel(nsAString *aRel);
01495     nsresult SetRel(const nsAString *aRel);
01496     nsresult GetRev(nsAString *aRev);
01497     nsresult SetRev(const nsAString *aRev);
01498     nsresult GetShape(nsAString *aShape);
01499     nsresult SetShape(const nsAString *aShape);
01500     nsresult GetTabIndex(PRInt32 *aTabIndex);
01501     nsresult SetTabIndex(PRInt32 aTabIndex);
01502     nsresult GetTarget(nsAString *aTarget);
01503     nsresult SetTarget(const nsAString *aTarget);
01504     nsresult GetType(nsAString *aType);
01505     nsresult SetType(const nsAString *aType);
01506     nsresult Blur();
01507     nsresult Focus();
01508 }
01509 
01510 [
01511     object,
01512     uuid(a6cf90b2-15b3-11d2-932e-00805f8add32),
01513     local
01514     /* FROZEN */
01515 ]
01516 interface nsIDOMHTMLTableElement : nsIDOMHTMLElement
01517 {
01518     nsresult GetCaption(nsIDOMHTMLTableCaptionElement **aCaption);
01519     nsresult SetCaption(nsIDOMHTMLTableCaptionElement *aCaption);
01520     nsresult GetTHead(nsIDOMHTMLTableSectionElement **aTHead);
01521     nsresult SetTHead(nsIDOMHTMLTableSectionElement *aTHead);
01522     nsresult GetTFoot(nsIDOMHTMLTableSectionElement **aTFoot);
01523     nsresult SetTFoot(nsIDOMHTMLTableSectionElement *aTFoot);
01524     nsresult GetRows(nsIDOMHTMLCollection **aRows);
01525     nsresult GetTBodies(nsIDOMHTMLCollection **aTBodies);
01526     nsresult GetAlign(nsAString *aAlign);
01527     nsresult SetAlign(const nsAString *aAlign);
01528     nsresult GetBgColor(nsAString *aBgColor);
01529     nsresult SetBgColor(const nsAString *aBgColor);
01530     nsresult GetBorder(nsAString *aBorder);
01531     nsresult SetBorder(const nsAString *aBorder);
01532     nsresult GetCellPadding(nsAString *aCellPadding);
01533     nsresult SetCellPadding(const nsAString *aCellPadding);
01534     nsresult GetCellSpacing(nsAString *aCellSpacing);
01535     nsresult SetCellSpacing(const nsAString *aCellSpacing);
01536     nsresult GetFrame(nsAString *aFrame);
01537     nsresult SetFrame(const nsAString *aFrame);
01538     nsresult GetRules(nsAString *aRules);
01539     nsresult SetRules(const nsAString *aRules);
01540     nsresult GetSummary(nsAString *aSummary);
01541     nsresult SetSummary(const nsAString *aSummary);
01542     nsresult GetWidth(nsAString *aWidth);
01543     nsresult SetWidth(const nsAString *aWidth);
01544     nsresult CreateTHead(nsIDOMHTMLElement **_retval);
01545     nsresult DeleteTHead();
01546     nsresult CreateTFoot(nsIDOMHTMLElement **_retval);
01547     nsresult DeleteTFoot();
01548     nsresult CreateCaption(nsIDOMHTMLElement **_retval);
01549     nsresult DeleteCaption();
01550     nsresult InsertRow(PRInt32 index, nsIDOMHTMLElement **_retval);
01551     nsresult DeleteRow(PRInt32 index);
01552 }
01553 
01554 [
01555     object,
01556     uuid(a6cf90b6-15b3-11d2-932e-00805f8add32),
01557     local
01558     /* FROZEN */
01559 ]
01560 interface nsIDOMHTMLTableRowElement : nsIDOMHTMLElement
01561 {
01562     nsresult GetRowIndex(PRInt32 *aRowIndex);
01563     nsresult GetSectionRowIndex(PRInt32 *aSectionRowIndex);
01564     nsresult GetCells(nsIDOMHTMLCollection **aCells);
01565     nsresult GetAlign(nsAString *aAlign);
01566     nsresult SetAlign(const nsAString *aAlign);
01567     nsresult GetBgColor(nsAString *aBgColor);
01568     nsresult SetBgColor(const nsAString *aBgColor);
01569     nsresult GetCh(nsAString *aCh);
01570     nsresult SetCh(const nsAString *aCh);
01571     nsresult GetChOff(nsAString *aChOff);
01572     nsresult SetChOff(const nsAString *aChOff);
01573     nsresult GetVAlign(nsAString *aVAlign);
01574     nsresult SetVAlign(const nsAString *aVAlign);
01575     nsresult InsertCell(PRInt32 index, nsIDOMHTMLElement **_retval);
01576     nsresult DeleteCell(PRInt32 index);
01577 }
01578 
01579 [
01580     object,
01581     uuid(a6cf90ba-15b3-11d2-932e-00805f8add32),
01582     local
01583     /* FROZEN */
01584 ]
01585 interface nsIDOMHTMLIFrameElement : nsIDOMHTMLElement
01586 {
01587     nsresult GetAlign(nsAString *aAlign);
01588     nsresult SetAlign(const nsAString *aAlign);
01589     nsresult GetFrameBorder(nsAString *aFrameBorder);
01590     nsresult SetFrameBorder(const nsAString *aFrameBorder);
01591     nsresult GetHeight(nsAString *aHeight);
01592     nsresult SetHeight(const nsAString *aHeight);
01593     nsresult GetLongDesc(nsAString *aLongDesc);
01594     nsresult SetLongDesc(const nsAString *aLongDesc);
01595     nsresult GetMarginHeight(nsAString *aMarginHeight);
01596     nsresult SetMarginHeight(const nsAString *aMarginHeight);
01597     nsresult GetMarginWidth(nsAString *aMarginWidth);
01598     nsresult SetMarginWidth(const nsAString *aMarginWidth);
01599     nsresult GetName(nsAString *aName);
01600     nsresult SetName(const nsAString *aName);
01601     nsresult GetScrolling(nsAString *aScrolling);
01602     nsresult SetScrolling(const nsAString *aScrolling);
01603     nsresult GetSrc(nsAString *aSrc);
01604     nsresult SetSrc(const nsAString *aSrc);
01605     nsresult GetWidth(nsAString *aWidth);
01606     nsresult SetWidth(const nsAString *aWidth);
01607     nsresult GetContentDocument(nsIDOMDocument **aContentDocument);
01608 }
01609 
01610 [
01611     object,
01612     uuid(a6cf90b9-15b3-11d2-932e-00805f8add32),
01613     local
01614     /* FROZEN */
01615 ]
01616 interface nsIDOMHTMLFrameElement : nsIDOMHTMLElement
01617 {
01618     nsresult GetFrameBorder(nsAString *aFrameBorder);
01619     nsresult SetFrameBorder(const nsAString *aFrameBorder);
01620     nsresult GetLongDesc(nsAString *aLongDesc);
01621     nsresult SetLongDesc(const nsAString *aLongDesc);
01622     nsresult GetMarginHeight(nsAString *aMarginHeight);
01623     nsresult SetMarginHeight(const nsAString *aMarginHeight);
01624     nsresult GetMarginWidth(nsAString *aMarginWidth);
01625     nsresult SetMarginWidth(const nsAString *aMarginWidth);
01626     nsresult GetName(nsAString *aName);
01627     nsresult SetName(const nsAString *aName);
01628     nsresult GetNoResize(PRBool *aNoResize);
01629     nsresult SetNoResize(PRBool aNoResize);
01630     nsresult GetScrolling(nsAString *aScrolling);
01631     nsresult SetScrolling(const nsAString *aScrolling);
01632     nsresult GetSrc(nsAString *aSrc);
01633     nsresult SetSrc(const nsAString *aSrc);
01634     nsresult GetContentDocument(nsIDOMDocument **aContentDocument);
01635 }
01636 
01637 [
01638     object,
01639     uuid(94928ab3-8b63-11d3-989d-001083010e9b),
01640     local
01641     /* FROZEN */
01642 ]
01643 interface nsIURIContentListener : nsISupports
01644 {
01645     nsresult OnStartURIOpen(nsIURI *aURI, PRBool *_retval);
01646     nsresult DoContent(const char *aContentType, PRBool aIsContentPreferred, nsIRequest *aRequest,
01647         nsIStreamListener **aContentHandler, PRBool *_retval);
01648     nsresult IsPreferred(const char *aContentType, char **aDesiredContentType, PRBool *_retval);
01649     nsresult CanHandleContent(const char *aContentType, PRBool aIsContentPreferred,
01650         char **aDesiredContentType, PRBool *_retval);
01651     nsresult GetLoadCookie(nsISupports **aLoadCookie);
01652     nsresult SetLoadCookie(nsISupports *aLoadCookie);
01653     nsresult GetParentContentListener(nsIURIContentListener **aParentContentListener);
01654     nsresult SetParentContentListener(nsIURIContentListener *aParentContentListener);
01655 }
01656 
01657 [
01658     object,
01659     uuid(44b78386-1dd2-11b2-9ad2-e4eee2ca1916),
01660     local
01661     /* FROZEN */
01662 ]
01663 interface nsITooltipListener : nsISupports
01664 {
01665     nsresult OnShowTooltip(PRInt32 aXCoords, PRInt32 aYCoords, const PRUnichar *aTipText);
01666     nsresult OnHideTooltip();
01667 }
01668 
01669 [
01670     object,
01671     uuid(69e5df00-7b8b-11d3-af61-00a024ffc08c),
01672     local
01673     /* FROZEN */
01674 ]
01675 interface nsIWebBrowser : nsISupports
01676 {
01677     nsresult AddWebBrowserListener(nsIWeakReference *aListener, const nsIID *aIID);
01678     nsresult RemoveWebBrowserListener(nsIWeakReference *aListener, const nsIID *aIID);
01679     nsresult GetContainerWindow(nsIWebBrowserChrome **aContainerWindow);
01680     nsresult SetContainerWindow(nsIWebBrowserChrome *aContainerWindow);
01681     nsresult GetParentURIContentListener(nsIURIContentListener **aParentURIContentListener);
01682     nsresult SetParentURIContentListener(nsIURIContentListener *aParentURIContentListener);
01683     nsresult GetContentDOMWindow(nsIDOMWindow **aContentDOMWindow);
01684 }
01685 
01686 cpp_quote("#define SETUP_ALLOW_JAVASCRIPT  2")
01687 cpp_quote("#define SETUP_IS_CHROME_WRAPPER 7")
01688 
01689 [
01690     object,
01691     uuid(f15398a0-8018-11d3-af70-00a024ffc08c),
01692     local
01693     /* FROZEN */
01694 ]
01695 interface nsIWebBrowserSetup : nsISupports
01696 {
01697     nsresult SetProperty(PRUint32 aId, PRUint32 aValue);
01698 }
01699 
01700 typedef void* nativeWindow;
01701 
01702 [
01703     object,
01704     uuid(046bc8a0-8015-11d3-af70-00a024ffc08c),
01705     local
01706     /* NOT_FROZEN */
01707 ]
01708 interface nsIBaseWindow : nsISupports
01709 {
01710     nsresult InitWindow(nativeWindow parentNativeWindow, nsIWidget *parentWidget, PRInt32 x,
01711             PRInt32 y, PRInt32 cx, PRInt32 cy);
01712     nsresult Create();
01713     nsresult Destroy();
01714     nsresult SetPosition(PRInt32 x, PRInt32 y);
01715     nsresult GetPosition(PRInt32 *x, PRInt32 *y);
01716     nsresult SetSize(PRInt32 cx, PRInt32 cy, PRBool fRepaint);
01717     nsresult GetSize(PRInt32 *cx, PRInt32 *cy);
01718     nsresult SetPositionAndSize(PRInt32 x, PRInt32 y, PRInt32 cx, PRInt32 cy, PRBool fRepaint);
01719     nsresult GetPositionAndSize(PRInt32 *x, PRInt32 *y, PRInt32 *cx, PRInt32 *cy);
01720     nsresult Repaint(PRBool force);
01721     nsresult GetParentWidget(nsIWidget **aParentWidget); 
01722     nsresult SetParentWidget(nsIWidget *aParentWidget);
01723     nsresult GetParentNativeWindow(nativeWindow *aParentNativeWindow);
01724     nsresult SetParentNativeWindow(nativeWindow aParentNativeWindow);
01725     nsresult GetVisibility(PRBool *aVisibility);
01726     nsresult SetVisibility(PRBool aVisibility);
01727     nsresult GetEnabled(PRBool *aEnabled);
01728     nsresult SetEnabled(PRBool aEnabled);
01729     nsresult GetBlurSuppression(PRBool *aBlurSuppression);
01730     nsresult SetBlurSuppression(PRBool aBlurSuppression);
01731     nsresult GetMainWidget(nsIWidget **aMainWidget);
01732     nsresult SetFocus();
01733     nsresult GetTitle(PRUnichar **aTitle);
01734     nsresult SetTitle(const PRUnichar *aTitle);
01735 }
01736 
01737 cpp_quote("#define LOAD_FLAGS_NONE           0x00000")
01738 cpp_quote("#define LOAD_INITIAL_DOCUMENT_URI 0x80000")
01739 
01740 [
01741     object,
01742     uuid(f5d9e7b0-d930-11d3-b057-00a024ffc08c),
01743     local
01744     /* NOT_FROZEN */
01745 ]
01746 interface nsIWebNavigation : nsISupports
01747 {
01748     nsresult GetCanGoBack(PRBool *aCanGoBack);
01749     nsresult GetCanGoForward(PRBool *aCanGoForward);
01750     nsresult GoBack();
01751     nsresult GoForward();
01752     nsresult GotoIndex(PRInt32 index);
01753     nsresult LoadURI(const PRUnichar *aURI, PRUint32 aLoadFlags, nsIURI *aReferrer,
01754             nsIInputStream *aPostData, nsIInputStream *aHeaders);
01755     nsresult Reload(PRUint32 aReloadFlags);
01756     nsresult Stop(PRUint32 aStopFlags);
01757     nsresult GetDocument(nsIDOMDocument **aDocument);
01758     nsresult GetCurrentURI(nsIURI **aCurrentURI);
01759     nsresult GetReferringURI(nsIURI **aReferringURI);
01760     nsresult GetSessionHistory(nsISHistory **aSessionHistory);
01761     nsresult SetSessionHistory(nsISHistory *aSessionHistory);
01762 }
01763 
01764 [
01765     object,
01766     uuid(570f39d0-efd0-11d3-b093-00a024ffc08c),
01767     local
01768     /* FROZEN */
01769 ]
01770 interface nsIWebProgress : nsISupports
01771 {
01772     nsresult AddProgressListener(nsIWebProgressListener *aListener, PRUint32 aNotifyMask);
01773     nsresult RemoveProgressListener(nsIWebProgressListener *aListener);
01774     nsresult GetDOMWindow(nsIDOMWindow **aDOMWindow);
01775     nsresult GetIsLoadingDocument(PRBool *aIsLoadingDocument);
01776 }
01777 
01778 [
01779     object,
01780     uuid(343700dd-078b-42b6-a809-b9c1d7e951d0),
01781     local
01782     /* NOT_FROZEN */
01783 ]
01784 interface nsIPrintSettings : nsISupports
01785 {
01786     typedef struct { char dummy; } nsIntMargin;
01787 
01788     nsresult SetPrintOptions(PRInt32 aType, PRBool aTurnOnOff);
01789     nsresult GetPrintOptions(PRInt32 aType, PRBool *_retval);
01790     nsresult GetPrintOptionsBits(PRInt32 *_retval);
01791     nsresult GetEffectivePageSize(double *aWidth, double *aHeight);
01792     nsresult Clone(nsIPrintSettings **_retval);
01793     nsresult Assign(nsIPrintSettings *aPS);
01794     nsresult GetPrintSession(nsIPrintSession **aPrintSession);
01795     nsresult SetPrintSession(nsIPrintSession *aPrintSession);
01796     nsresult GetStartPageRange(PRInt32 *aStartPageRange);
01797     nsresult SetStartPageRange(PRInt32 aStartPageRange);
01798     nsresult GetEndPageRange(PRInt32 *aEndPageRange);
01799     nsresult SetEndPageRange(PRInt32 aEndPageRange);
01800     nsresult GetEdgeTop(double *aEdgeTop);
01801     nsresult SetEdgeTop(double aEdgeTop);
01802     nsresult GetEdgeLeft(double *aEdgeLeft);
01803     nsresult SetEdgeLeft(double aEdgeLeft);
01804     nsresult GetEdgeBottom(double *aEdgeBottom);
01805     nsresult SetEdgeBottom(double aEdgeBottom);
01806     nsresult GetEdgeRight(double *aEdgeRight);
01807     nsresult SetEdgeRight(double aEdgeRight);
01808     nsresult GetMarginTop(double *aMarginTop);
01809     nsresult SetMarginTop(double aMarginTop);
01810     nsresult GetMarginLeft(double *aMarginLeft);
01811     nsresult SetMarginLeft(double aMarginLeft);
01812     nsresult GetMarginBottom(double *aMarginBottom);
01813     nsresult SetMarginBottom(double aMarginBottom);
01814     nsresult GetMarginRight(double *aMarginRight);
01815     nsresult SetMarginRight(double aMarginRight);
01816     nsresult GetUnwriteableMarginTop(double *aUnwriteableMarginTop);
01817     nsresult SetUnwriteableMarginTop(double aUnwriteableMarginTop);
01818     nsresult GetUnwriteableMarginLeft(double *aUnwriteableMarginLeft);
01819     nsresult SetUnwriteableMarginLeft(double aUnwriteableMarginLeft);
01820     nsresult GetUnwriteableMarginBottom(double *aUnwriteableMarginBottom);
01821     nsresult SetUnwriteableMarginBottom(double aUnwriteableMarginBottom);
01822     nsresult GetUnwriteableMarginRight(double *aUnwriteableMarginRight);
01823     nsresult SetUnwriteableMarginRight(double aUnwriteableMarginRight);
01824     nsresult GetScaling(double *aScaling);
01825     nsresult SetScaling(double aScaling);
01826     nsresult GetPrintBGColors(PRBool *aPrintBGColors);
01827     nsresult SetPrintBGColors(PRBool aPrintBGColors);
01828     nsresult GetPrintBGImages(PRBool *aPrintBGImages);
01829     nsresult SetPrintBGImages(PRBool aPrintBGImages);
01830     nsresult GetPrintRange(PRInt16 *aPrintRange);
01831     nsresult SetPrintRange(PRInt16 aPrintRange);
01832     nsresult GetTitle(PRUnichar **aTitle);
01833     nsresult SetTitle(const PRUnichar *aTitle);
01834     nsresult GetDocURL(PRUnichar **aDocURL);
01835     nsresult SetDocURL(const PRUnichar *aDocURL);
01836     nsresult GetHeaderStrLeft(PRUnichar **aHeaderStrLeft);
01837     nsresult SetHeaderStrLeft(const PRUnichar *aHeaderStrLeft);
01838     nsresult GetHeaderStrCenter(PRUnichar **aHeaderStrCenter);
01839     nsresult SetHeaderStrCenter(const PRUnichar *aHeaderStrCenter);
01840     nsresult GetHeaderStrRight(PRUnichar **aHeaderStrRight);
01841     nsresult SetHeaderStrRight(const PRUnichar *aHeaderStrRight);
01842     nsresult GetFooterStrLeft(PRUnichar **aFooterStrLeft);
01843     nsresult SetFooterStrLeft(const PRUnichar *aFooterStrLeft);
01844     nsresult GetFooterStrCenter(PRUnichar **aFooterStrCenter);
01845     nsresult SetFooterStrCenter(const PRUnichar *aFooterStrCenter);
01846     nsresult GetFooterStrRight(PRUnichar **aFooterStrRight);
01847     nsresult SetFooterStrRight(const PRUnichar *aFooterStrRight);
01848     nsresult GetHowToEnableFrameUI(PRInt16 *aHowToEnableFrameUI);
01849     nsresult SetHowToEnableFrameUI(PRInt16 aHowToEnableFrameUI);
01850     nsresult GetIsCancelled(PRBool *aIsCancelled);
01851     nsresult SetIsCancelled(PRBool aIsCancelled);
01852     nsresult GetPrintFrameTypeUsage(PRInt16 *aPrintFrameTypeUsage);
01853     nsresult SetPrintFrameTypeUsage(PRInt16 aPrintFrameTypeUsage);
01854     nsresult GetPrintFrameType(PRInt16 *aPrintFrameType);
01855     nsresult SetPrintFrameType(PRInt16 aPrintFrameType);
01856     nsresult GetPrintSilent(PRBool *aPrintSilent);
01857     nsresult SetPrintSilent(PRBool aPrintSilent);
01858     nsresult GetShrinkToFit(PRBool *aShrinkToFit);
01859     nsresult SetShrinkToFit(PRBool aShrinkToFit);
01860     nsresult GetShowPrintProgress(PRBool *aShowPrintProgress);
01861     nsresult SetShowPrintProgress(PRBool aShowPrintProgress);
01862     nsresult GetPaperName(PRUnichar **aPaperName);
01863     nsresult SetPaperName(const PRUnichar *aPaperName);
01864     nsresult GetPaperSizeType(PRInt16 *aPaperSizeType);
01865     nsresult SetPaperSizeType(PRInt16 aPaperSizeType);
01866     nsresult GetPaperData(PRInt16 *aPaperData);
01867     nsresult SetPaperData(PRInt16 aPaperData);
01868     nsresult GetPaperWidth(double *aPaperWidth);
01869     nsresult SetPaperWidth(double aPaperWidth);
01870     nsresult GetPaperHeight(double *aPaperHeight);
01871     nsresult SetPaperHeight(double aPaperHeight);
01872     nsresult GetPaperSizeUnit(PRInt16 *aPaperSizeUnit);
01873     nsresult SetPaperSizeUnit(PRInt16 aPaperSizeUnit);
01874     nsresult GetPlexName(PRUnichar **aPlexName);
01875     nsresult SetPlexName(const PRUnichar *aPlexName);
01876     nsresult GetColorspace(PRUnichar **aColorspace);
01877     nsresult SetColorspace(const PRUnichar *aColorspace);
01878     nsresult GetResolutionName(PRUnichar **aResolutionName);
01879     nsresult SetResolutionName(const PRUnichar aResolutionName);
01880     nsresult GetDownloadFonts(PRBool *aDownloadFonts);
01881     nsresult SetDownloadFonts(PRBool aDownloadFonts);
01882     nsresult GetPrintReversed(PRBool *aPrintReversed);
01883     nsresult SetPrintReversed(PRBool aPrintReversed);
01884     nsresult GetPrintInColor(PRBool *aPrintInColor);
01885     nsresult SetPrintInColor(PRBool aPrintInColor);
01886     nsresult GetOrientation(PRInt32 *aOrientation);
01887     nsresult SetOrientation(PRInt32 aOrientation);
01888     nsresult GetPrintCommand(PRUnichar **aPrintCommand);
01889     nsresult SetPrintCommand(const PRUnichar *aPrintCommand);
01890     nsresult GetNumCopies(PRInt32 *aNumCopies);
01891     nsresult SetNumCopies(PRInt32 aNumCopies);
01892     nsresult GetPrinterName(PRUnichar **aPrinterName);
01893     nsresult SetPrinterName(const PRUnichar *aPrinterName);
01894     nsresult GetPrintToFile(PRBool *aPrintToFile);
01895     nsresult SetPrintToFile(PRBool aPrintToFile);
01896     nsresult GetToFileName(PRUnichar **aToFileName);
01897     nsresult SetToFileName(const PRUnichar *aToFileName);
01898     nsresult GetOutputFormat(PRInt16 *aOutputFormat);
01899     nsresult SetOutputFormat(PRInt16 aOutputFormat);
01900     nsresult GetPrintPageDelay(PRInt32 *aPrintPageDelay);
01901     nsresult SetPrintPageDelay(PRInt32 aPrintPageDelay);
01902     nsresult GetIsInitializedFromPrinter(PRBool *aIsInitializedFromPrinter);
01903     nsresult SetIsInitializedFromPrinter(PRBool aIsInitializedFromPrinter);
01904     nsresult GetIsInitializedFromPrefs(PRBool *aIsInitializedFromPrefs);
01905     nsresult SetIsInitializedFromPrefs(PRBool aIsInitializedFromPrefs);
01906     nsresult SetMarginInTwips(nsIntMargin *aMargin);
01907     nsresult SetEdgeInTwips(nsIntMargin *aEdge);
01908     nsresult GetMarginInTwips(nsIntMargin *aMargin);
01909     nsresult GetEdgeInTwips(nsIntMargin *aEdge);
01910     nsresult SetupSilentPrinting();
01911     nsresult SetUnwriteableMarginInTwips(nsIntMargin *aEdge);
01912     nsresult GetUnwriteableMarginInTwips(nsIntMargin *aEdge);
01913 }
01914 
01915 [
01916     object,
01917     uuid(9a7ca4b0-fbba-11d4-a869-00105a183419),
01918     local
01919     /* FROZEN */
01920 ]
01921 interface nsIWebBrowserPrint : nsISupports
01922 {
01923     nsresult GetGlobalPrintSettings(nsIPrintSettings **aGlobalPrintSettings);
01924     nsresult GetCurrentPrintSettings(nsIPrintSettings **aCurrentPrintSettings);
01925     nsresult GetCurrentChildDOMWindow(nsIDOMWindow **aCurrentChildDOMWindow);
01926     nsresult GetDoingPrint(PRBool *aDoingPrint);
01927     nsresult GetDoingPrintPreview(PRBool *aDoingPrintPreview);
01928     nsresult GetIsFramesetDocument(PRBool *aIsFramesetDocument);
01929     nsresult GetIsFramesetFrameSelected(PRBool *aIsFramesetFrameSelected);
01930     nsresult GetIsIFrameSelected(PRBool *aIsIFrameSelected);
01931     nsresult GetIsRangeSelection(PRBool *aIsRangeSelection);
01932     nsresult GetPrintPreviewNumPages(PRInt32 *aPrintPreviewNumPages);
01933     nsresult Print(nsIPrintSettings *aThePrintSettings, nsIWebProgressListener *aWPListener);
01934     nsresult PrintPreview(nsIPrintSettings *aThePrintSettings, nsIDOMWindow *aChildDOMWin,
01935                           nsIWebProgressListener *aWPListener);
01936     nsresult PrintPreviewNavigate(PRInt16 aNavType, PRInt32 aPageNum);
01937     nsresult Cancel();
01938     nsresult EnumerateDocumentNames(PRUint32 *aCount, PRUnichar ***aResult);
01939     nsresult ExitPrintPreview();
01940 }
01941 
01942 [
01943     object,
01944     uuid(919e792a-6490-40b8-bba5-f9e9ad5640c8),
01945     local
01946     /* NOT_FROZEN */
01947 ]
01948 interface nsIScrollable : nsISupports
01949 {
01950     enum {
01951         ScrollOrientation_X = 1,
01952         ScrollOrientation_Y = 2
01953     };
01954 
01955     enum {
01956         Scrollbar_Auto   = 1,
01957         Scrollbar_Never  = 2,
01958         Scrollbar_Always = 3
01959     };
01960 
01961     nsresult GetCurScrollPos(PRInt32 scrollOrientation, PRInt32 *curPos);
01962     nsresult SetCurScrollPos(PRInt32 scrollOrientation, PRInt32 curPos);
01963     nsresult SetCurScrollPosEx(PRInt32 curHorizontalPos, PRInt32 curVerticalPos);
01964     nsresult GetScrollRange(PRInt32 scrollOrientation, PRInt32 *minPos, PRInt32 *maxPos);
01965     nsresult SetScrollRange(PRInt32 scrollOrientation, PRInt32 minPos, PRInt32 maxPos);
01966     nsresult SetScrollRangeEx(PRInt32 minHorizontalPos, PRInt32 maxHorizontalPos,
01967             PRInt32 minVerticalPos, PRInt32 maxVerticalPos);
01968     nsresult GetDefaultScrollbarPreferences(PRInt32 scrollOrientation, PRInt32 *scrollbarPref);
01969     nsresult SetDefaultScrollbarPreferences(PRInt32 scrollOrientation, PRInt32 scrollbarPref);
01970     nsresult GetScrollbarVisibility(PRBool *verticalVisible, PRBool *horizontalVisible);
01971 }
01972 
01973 [
01974     object,
01975     uuid(c8c0a080-0868-11d3-915f-d9d889d48e3c),
01976     local
01977     /* FROZEN */
01978 ]
01979 interface nsIFile : nsISupports
01980 {
01981     nsresult Append(const nsAString *node);
01982     nsresult AppendNative(const nsAString *node);
01983     nsresult Normalize();
01984     nsresult Create(PRUint32 type, PRUint32 permission);
01985     nsresult GetLeafName(nsAString *aLeafName);
01986     nsresult SetLeafName(const nsAString *aLeafName);
01987     nsresult GetNativeLeafName(nsAString *aLeafName);
01988     nsresult SetNativeLeafName(const nsAString *aLeafName);
01989     nsresult CopyTo(nsIFile *newParentDir, const nsAString *newName);
01990     nsresult CopyToNative(nsIFile *newParentDir, const nsAString *newName);
01991     nsresult CopyToFollowingLinks(nsIFile *newParentDir, const nsAString *newName);
01992     nsresult CopyToFollowingLinksNative(nsIFile *newParentDir, const nsAString *newName);
01993     nsresult MoveTo(nsIFile *newParentDir, const nsAString *newName);
01994     nsresult MoveToNative(nsIFile *newParentDir, const nsAString *newName);
01995     nsresult Remove(PRBool recursive);
01996     nsresult GetPermissions(PRUint32 *aPermissions);
01997     nsresult SetPermissions(PRUint32 pPermissions);
01998     nsresult GetPermissionsOfLink(PRUint32 *aPermissions);
01999     nsresult SetPermissionsOfLink(PRUint32 pPermissions);
02000     nsresult GetLastModifiedTime(PRInt64 *aLastModifiedTime);
02001     nsresult SetLastModifiedTime(PRInt64 aLastModifiedTime);
02002     nsresult GetFileSize(PRInt64 *aFileSize);
02003     nsresult SetFileSize(PRInt64 aFileSize);
02004     nsresult GetFileSizeOfLink(PRInt64 *aFileSizeOfLink);
02005     nsresult GetTarget(nsAString *aTarget);
02006     nsresult GetNativeTarget(nsACString *aNativeTarget);
02007     nsresult GetPath(nsAString *aPath);
02008     nsresult GetNativePath(nsACString *aNativePath);
02009     nsresult Exists(PRBool *_retval);
02010     nsresult IsWritable(PRBool *_retval);
02011     nsresult IsReadable(PRBool *_retval);
02012     nsresult IsExecutable(PRBool *_retval);
02013     nsresult IsHidden(PRBool *_retval);
02014     nsresult IsDirectory(PRBool *_retval);
02015     nsresult IsFile(PRBool *_retval);
02016     nsresult IsSymlink(PRBool *_retval);
02017     nsresult IsSpecial(PRBool *_retval);
02018     nsresult CreateUnique(PRUint32 type, PRUint32 permission);
02019     nsresult Clone(nsIFile **_retval);
02020     nsresult Equals(nsIFile *inFile, PRBool *_retval);
02021     nsresult Contains(nsIFile *inFile, PRBool recir, PRBool *_retval);
02022     nsresult GetParent(nsIFile **aParent);
02023     nsresult GetDirectoryEntries(nsISimpleEnumerator **aDirectoryEntries);
02024 }
02025 
02026 [
02027     object,
02028     uuid(56c35506-f14b-11d3-99d3-ddbfac2ccf65),
02029     local
02030     /* FROZEN */
02031 ]
02032 interface nsIPrefBranch : nsISupports
02033 {
02034     nsresult GetRoot(char **aRoot);
02035     nsresult GetPrefType(const char *aPrefName, PRInt32 *_retval);
02036     nsresult GetBoolPref(const char *aPrefName, PRBool *_retval);
02037     nsresult SetBoolPref(const char *aPrefName, PRInt32 aValue);
02038     nsresult GetCharPref(const char *aPrefName, char **_retval);
02039     nsresult SetCharPref(const char *aPrefName, const char *aValue);
02040     nsresult GetIntPref(const char *aPrefName, PRInt32 *_retval);
02041     nsresult SetIntPref(const char *aPrefName, PRInt32 aValue);
02042     nsresult GetComplexValue(const char *aPrefName, const nsIID *aType, void **aValue);
02043     nsresult SetComplexValue(const char *aPrefName, const nsIID *aType, nsISupports *aValue);
02044     nsresult ClearUserPref(const char *aPrefName);
02045     nsresult LockPref(const char *aPrefName);
02046     nsresult PrefHasUserValue(const char *aPrefName, PRBool *_retval);
02047     nsresult PrefIsLocked(const char *aPrefName, PRBool *_retval);
02048     nsresult UnlockPref(const char *aPrefName);
02049     nsresult DeleteBranch(const char *aStartingAt);
02050     nsresult GetChildList(const char *aStartingAt, PRUint32 *aCount, char ***aChildArray);
02051     nsresult ResetBranch(const char *aStartingAt);
02052 }
02053 
02054 [
02055     object,
02056     uuid(15fd6940-8ea7-11d3-93ad-00104ba0fd40),
02057     local
02058     /* FROZEN */
02059 ]
02060 interface nsIProtocolHandler : nsISupports
02061 {
02062     nsresult GetScheme(nsACString *aScheme);
02063     nsresult GetDefaultPort(PRInt32 *aDefaultPort);
02064     nsresult GetProtocolFlags(PRUint32 *aProtocolFlags);
02065     nsresult NewURI(const nsACString *aSpec, const char *aOriginCharset,
02066                     nsIURI *aBaseURI, nsIURI **_retval);
02067     nsresult NewChannel(nsIURI *aURI, nsIChannel **_retval);
02068     nsresult AllowPort(PRInt32 port, const char *scheme, PRBool *_retval);
02069 }
02070 
02071 [
02072     object,
02073     uuid(0e61f3b2-34d7-4c79-bfdc-4860bc7341b7),
02074     local
02075     /* NOT_FROZEN */
02076 ]
02077 interface nsIExternalProtocolHandler : nsIProtocolHandler
02078 {
02079     nsresult ExternalAppExistsForScheme(const nsACString *scheme, PRBool *_retval);
02080 }
02081 
02082 [
02083     object,
02084     uuid(bddeda3f-9020-4d12-8c70-984ee9f7935e),
02085     local
02086     /* FROZEN */
02087 ]
02088 interface nsIIOService : nsISupports
02089 {
02090     nsresult GetProtocolHandler(const char *aScheme, nsIProtocolHandler **_retval);
02091     nsresult GetProtocolFlags(const char *aScheme, PRUint32 *_retval);
02092     nsresult NewURI(const nsACString *aSpec, const char *aOriginCharset, nsIURI *aBaseURI,
02093                     nsIURI **_retval);
02094     nsresult NewFileURI(nsIFile *aFile, nsIURI **_retval);
02095     nsresult NewChannelFromURI(nsIURI *aURI, nsIChannel **_retval);
02096     nsresult NewChannel(const nsACString *aSpec, const char *aOriginCharset, nsIURI *aBaseURI,
02097                         nsIChannel **_retval);
02098     nsresult GetOffline(PRBool *aOffline);
02099     nsresult SetOffline(PRBool aOffline);
02100     nsresult AllowPort(PRInt32 aPort, const char *aScheme, PRBool *_retval);
02101     nsresult ExtractScheme(const nsACString *urlString, nsACString * _retval);
02102 }
02103 
02104 [
02105     object,
02106     uuid(a50d5516-5c0a-4f08-b427-703ca0c44ac3),
02107     local,
02108     /* NOT_FROZEN */
02109 ]
02110 interface nsINetUtil : nsISupports
02111 {
02112     nsresult ParseContentType(const nsACString *aTypeHeader, nsACString *aCharset,
02113             PRBool *aHadCharset, nsACString *_retval);
02114     nsresult ProtocolHasFlags(nsIURI *aURI, PRUint32 aFlag, PRBool *_retval);
02115     nsresult URIChainHasFlags(nsIURI *aURI, PRUint32 aFlags, PRBool *_retval);
02116     nsresult ToImmutableURI(nsIURI *aURI, nsIURI **_retval);
02117     nsresult EscapeString(const nsACString *aString, PRUint32 aEscapeType, nsACString *_retval);
02118     nsresult EscapeURL(const nsACString *aStr, PRUint32 aFlags, nsACString *_retval);
02119     nsresult UnescapeString(const nsACString *aStr, PRUint32 aFlags, nsACString *_retval);
02120     nsresult ExtractCharsetFromContentType(const nsACString *aTypeHeader, nsACString *aCharset,
02121             PRInt32 *aCharsetStart, PRInt32 *aCharsetEnd, PRBool *_retval);
02122 }
02123 
02124 [
02125     object,
02126     uuid(9c5d3c58-1dd1-11b2-a1c9-f3699284657a),
02127     local
02128     /* FROZEN */
02129 ]
02130 interface nsIWebBrowserFocus : nsISupports
02131 {
02132     nsresult Activate();
02133     nsresult Deactivate();
02134     nsresult SetFocusAtFirstElement();
02135     nsresult SetFocusAtLastElement();
02136     nsresult GetFocusedWindow(nsIDOMWindow **aFocusedWindow);
02137     nsresult SetFocusedWindow(nsIDOMWindow *aFocusedWindow);
02138     nsresult GetFocusedElement(nsIDOMElement **aFocusedElement);
02139     nsresult SetFocusedElement(nsIDOMElement *aFocusedElement);
02140 }
02141 
02142 [
02143     object,
02144     uuid(ba434c60-9d52-11d3-afb0-00a024ffc08c),
02145     local
02146     /* FROZEN */
02147 ]
02148 interface nsIWebBrowserChrome : nsISupports
02149 {
02150     nsresult SetStatus(PRUint32 statusType, const PRUnichar *status);
02151     nsresult GetWebBrowser(nsIWebBrowser **aWebBrowser);
02152     nsresult SetWebBrowser(nsIWebBrowser *aWebBrowser);
02153     nsresult GetChromeFlags(PRUint32 *aChromeFlags);
02154     nsresult SetChromeFlags(PRUint32 aChromeFlags);
02155     nsresult DestroyBrowserWindow();
02156     nsresult SizeBrowserTo(PRInt32 aCX, PRInt32 aCY);
02157     nsresult ShowAsModal();
02158     nsresult IsWindowModal(PRBool *_retval);
02159     nsresult ExitModalEventLoop(nsresult aStatus);
02160 }
02161 
02162 [
02163     object,
02164     uuid(df31c120-ded6-11d1-bd85-00805f8ae3f4),
02165     local
02166     /* FROZEN */
02167 ]
02168 interface nsIDOMEventListener : nsISupports
02169 {
02170     nsresult HandleEvent(nsIDOMEvent *event);
02171 }
02172 
02173 [
02174     object,
02175     uuid(1c773b30-d1cf-11d2-bd95-00805f8ae3f4),
02176     local
02177     /* FROZEN */
02178 ]
02179 interface nsIDOMEventTarget : nsISupports
02180 {
02181     nsresult AddEventListener(const nsAString *type, nsIDOMEventListener *listener, PRBool useCapture);
02182     nsresult RemoveEventListener(const nsAString *type, nsIDOMEventListener *listener, PRBool useCapture);
02183     nsresult DispatchEvent(nsIDOMEvent *evt, PRBool *_retval);
02184 }
02185 
02186 [
02187     object,
02188     uuid(a66b7b80-ff46-bd97-0080-5f8ae38add32),
02189     local
02190     /* FROZEN */
02191 ]
02192 interface nsIDOMEvent : nsISupports
02193 {
02194     nsresult GetType(nsAString *aType);
02195     nsresult GetTarget(nsIDOMEventTarget **aTarget);
02196     nsresult GetCurrentTarget(nsIDOMEventTarget **aCurrentTarget);
02197     nsresult GetEventPhase(PRUint16 *aEventPhase);
02198     nsresult GetBubbles(PRBool *aBubbles);
02199     nsresult GetCancelable(PRBool *aCancelable);
02200     nsresult GetTimeStamp(DOMTimeStamp *aTimeStamp);
02201     nsresult StopPropagation();
02202     nsresult PreventDefault();
02203     nsresult InitEvent(const nsAString *eventTypeArg, PRBool canBubbleArg, PRBool cancelableArg);
02204 }
02205 
02206 cpp_quote("#define CONTEXT_NONE              0x00")
02207 cpp_quote("#define CONTEXT_LINK              0x01")
02208 cpp_quote("#define CONTEXT_IMAGE             0x02")
02209 cpp_quote("#define CONTEXT_DOCUMENT          0x04")
02210 cpp_quote("#define CONTEXT_TEXT              0x08")
02211 cpp_quote("#define CONTEXT_INPUT             0x10")
02212 cpp_quote("#define CONTEXT_BACKGROUND_IMAGE  0x20")
02213 
02214 [
02215     object,
02216     uuid(3478b6b0-3875-11d4-94ef-0020183bf181),
02217     local
02218     /* FROZEN */
02219 ]
02220 interface nsIContextMenuListener : nsISupports
02221 {
02222     nsresult OnShowContextMenu(PRUint32 aContextFlags, nsIDOMEvent *aEvent, nsIDOMNode *aNode);
02223 }
02224 
02225 [
02226     object,
02227     uuid(a6cf90c3-15b3-11d2-932e-00805f8add32),
02228     local
02229     /* FROZEN */
02230 ]
02231 interface nsIDOMUIEvent : nsIDOMEvent
02232 {
02233     nsresult GetView(nsIDOMAbstractView **aView);
02234     nsresult GetDetail(PRInt32 *aDetail);
02235     nsresult InitUIEvent(const nsAString *typeArg, PRBool canBubbleArg, PRBool cancelableArg,
02236             nsIDOMAbstractView *viewArg, PRInt32 detailArg);
02237 }
02238 
02239 [
02240     object,
02241     uuid(ff751edc-8b02-aae7-0010-8301838a3123),
02242     local
02243     /* FROZEN */
02244 ]
02245 interface nsIDOMMouseEvent : nsIDOMUIEvent
02246 {
02247     nsresult GetScreenX(PRInt32 *aScreenX);
02248     nsresult GetScreenY(PRInt32 *aScreenY);
02249     nsresult GetClientX(PRInt32 *aClientX);
02250     nsresult GetClientY(PRInt32 *aClientY);
02251     nsresult GetCtrlKey(PRBool *aCtrlKey);
02252     nsresult GetShiftKey(PRBool *aShiftKey);
02253     nsresult GetAltKey(PRBool *aAltKey);
02254     nsresult GetMetaKey(PRBool *aMetaKey);
02255     nsresult GetButton(PRUint16 *aButton);
02256     nsresult GetRelatedTarget(nsIDOMEventTarget **aRelatedTarget);
02257     nsresult InitMouseEvent(const nsAString *typeArg, PRBool canBubbleArg, PRBool cancelableArg,
02258             nsIDOMAbstractView *viewArg, PRInt32 detailArg, PRInt32 screenXArg, PRInt32 screenYArg,
02259             PRInt32 clientXArg, PRInt32 clientYArg, PRBool ctrlKeyArg, PRBool altKeyArg,
02260             PRBool shiftKeyArg, PRBool metaKeyArg, PRUint16 buttonArg,
02261             nsIDOMEventTarget *relatedTargetArg);
02262 }
02263 
02264 [
02265     object,
02266     uuid(028e0e6e-8b01-11d3-aae7-0010838a3123),
02267     local
02268     /* NOT_FROZEN */
02269 ]
02270 interface nsIDOMKeyEvent : nsIDOMUIEvent
02271 {
02272     nsresult GetCharCode(PRUint32 *aCharCode);
02273     nsresult GetKeyCode(PRUint32 *aKeyCode);
02274     nsresult GetAltKey(PRBool *aAltKey);
02275     nsresult GetCtrlKey(PRBool *aCtrlKey);
02276     nsresult GetShiftKey(PRBool *aShiftKey);
02277     nsresult GetMetaKey(PRBool *aMetaKey);
02278     nsresult InitKeyEvent(const nsAString *typeArg, PRBool canBubbleArg,
02279             PRBool cancelableArg, nsIDOMAbstractView *viewArg, PRBool ctrlKeyArg,
02280             PRBool altKeyArg, PRBool shiftKeyArg, PRBool metaKeyArg, PRUint32 keyCodeArg,
02281             PRUint32 charCodeArg);
02282 }
02283 
02284 [
02285     object,
02286     uuid(3e5432cd-9568-4bd1-8cbe-d50aba110743),
02287     local
02288     /* FROZEN */
02289 ]
02290 interface nsIEmbeddingSiteWindow : nsISupports
02291 {
02292     nsresult SetDimensions(PRUint32 flags, PRInt32 x, PRInt32 y, PRInt32 cx, PRInt32 cy);
02293     nsresult GetDimensions(PRUint32 flags, PRInt32 *x, PRInt32 *y, PRInt32 *cx, PRInt32 *cy);
02294     nsresult SetFocus();
02295     nsresult GetVisibility(PRBool *aVisibility);
02296     nsresult SetVisibility(PRBool aVisibility);
02297     nsresult GetTitle(PRUnichar **aTitle);
02298     nsresult SetTitle(const PRUnichar *aTitle);
02299     nsresult GetSiteWindow(void **aSiteWindow);
02300 }
02301 
02302 [
02303     object,
02304     uuid(2417cbfe-65ad-48a6-b4b6-eb84db174392),
02305     local
02306     /* FROZEN */
02307 ]
02308 interface nsIComponentRegistrar : nsISupports
02309 {
02310     nsresult AutoRegister(nsIFile *aSpec);
02311     nsresult AutoUnregister(nsIFile *aSpec);
02312     nsresult RegisterFactory(const nsCID *aClass, const char *aClassName,
02313             const char *aContractID, nsIFactory *aFactory);
02314     nsresult UnregisterFactory(const nsCID *aClass, nsIFactory *aFactory);
02315     nsresult RegisterFactoryLocation(const nsCID *aClass, const char *aClassName,
02316             const char *aContractID, nsIFile *aFile, const char *aLoaderStr,
02317             const char *aType);
02318     nsresult UnregisterFactoryLocation(const nsCID *aClass, nsIFile *aFile);
02319     nsresult IsCIDRegistered(const nsCID *aClass, PRBool *_retval);
02320     nsresult IsContractIDRegistered(const char *aContractID, PRBool *_retval);
02321     nsresult EnumerateCIDs(nsISimpleEnumerator **_retval);
02322     nsresult EnumerateContractIDs(nsISimpleEnumerator **_retval);
02323     nsresult CIDToContractID(const nsCID *aClass, char **_retval);
02324     nsresult ContractIDToCID(const char *aContractID, nsCID **_retval);
02325 }
02326 
02327 [
02328     object,
02329     uuid(1630c61a-325e-49ca-8759-a31b16c47aa5),
02330     local
02331     /* FROZEN */
02332 ]
02333 interface nsIPromptService : nsISupports
02334 {
02335     nsresult Alert(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
02336             const PRUnichar *aText);
02337     nsresult AlertCheck(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
02338             const PRUnichar *aText, const PRUnichar *aCheckMsg, PRBool *aCheckState);
02339     nsresult Confirm(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
02340             const PRUnichar *aText, PRBool *_retval);
02341     nsresult ConfirmCheck(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
02342             const PRUnichar *aText, const PRUnichar *aCheckMsg, PRBool *aCheckState,
02343             PRBool *_retval);
02344     nsresult ConfirmEx(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
02345             const PRUnichar *aText, PRUint32 aButtonFlags, const PRUnichar *aButton0Title,
02346             const PRUnichar *aButton1Title, const PRUnichar *aButton2Title,
02347             const PRUnichar *aCheckMsg, PRBool *aCheckState, PRInt32 *_retval);
02348     nsresult Prompt(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
02349             const PRUnichar *aText, PRUnichar **aValue, const PRUnichar *aCheckMsg,
02350             PRBool *aCheckState, PRBool *_retval);
02351     nsresult PromptUsernameAndPassword(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
02352             const PRUnichar *aText, PRUnichar **aUsername, PRUnichar **aPassword,
02353             const PRUnichar *aCheckMsg, PRBool *aCheckState, PRBool *_retval);
02354     nsresult PromptPassword(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
02355             const PRUnichar *aText, PRUnichar **aPassword, const PRUnichar *aCheckMsg,
02356             PRBool *aCheckState, PRBool *_retval);
02357     nsresult Select(nsIDOMWindow *aParent, const PRUnichar *aDialogTitle,
02358             const PRUnichar *aText, PRUint32 aCount, const PRUnichar **aSelectList,
02359             PRInt32 *aOutSelection, PRBool *_retval);
02360 }
02361 
02362 [
02363     object,
02364     uuid(b128a1e6-44f3-4331-8fbe-5af360ff21ee),
02365     local
02366     /* FROZEN */
02367 ]
02368 interface nsITooltipTextProvider : nsISupports
02369 {
02370     nsresult GetNodeText(nsIDOMNode *aNode, PRUnichar **aText, PRBool *_retval);
02371 }
02372 
02373 [
02374     object,
02375     uuid(02b0625a-e7f3-11d2-9f5a-006008a6efe9),
02376     local
02377     /* FROZEN */
02378 ]
02379 interface nsIProfile : nsISupports
02380 {
02381     nsresult GetProfileCount(PRInt32 *aProfileCount);
02382     nsresult GetProfileList(PRUint32 *length, PRUnichar ***profileNames);
02383     nsresult ProfileExists(const PRUnichar *profileName, PRBool *_retval);
02384     nsresult GetCurrentProfile(PRUnichar **aCurrentProfile);
02385     nsresult SetCurrentProfile(const PRUnichar * aCurrentProfile);
02386     nsresult ShutDownCurrentProfile(PRUint32 shutDownType);
02387     nsresult CreateNewProfile(const PRUnichar *profileName,
02388             const PRUnichar *nativeProfileDir, const PRUnichar *langcode,
02389             PRBool useExistingDir);
02390     nsresult RenameProfile(const PRUnichar *oldName, const PRUnichar *newName);
02391     nsresult DeleteProfile(const PRUnichar *name, PRBool canDeleteFiles);
02392     nsresult CloneProfile(const PRUnichar *profileName);
02393 }
02394 
02395 [
02396     object,
02397     uuid(30465632-a777-44cc-90f9-8145475ef999),
02398     local
02399     /* FROZEN */
02400 ]
02401 interface nsIWindowCreator : nsISupports
02402 {
02403     nsresult CreateChromeWindow(nsIWebBrowserChrome *parent, PRUint32 chromeFlags,
02404                                    nsIWebBrowserChrome **_retval);
02405 }
02406 
02407 [
02408     object,
02409     uuid(f673ec81-a4b0-11d6-964b-eb5a2bf216fc),
02410     local
02411     /* NOT_FROZEN */
02412 ]
02413 interface nsIWindowCreator2 : nsIWindowCreator
02414 {
02415     nsresult CreateChromeWindow2(nsIWebBrowserChrome *parent, PRUint32 chromeFlags,
02416                                  PRUint32 contextFlags, nsIURI *uri, PRBool *cancel,
02417                                  nsIWebBrowserChrome **_retval);
02418 }
02419 
02420 [
02421     object,
02422     uuid(002286a8-494b-43b3-8ddd-49e3fc50622b),
02423     local
02424     /* FROZEN */
02425 ]
02426 interface nsIWindowWatcher : nsISupports
02427 {
02428     nsresult OpenWindow(nsIDOMWindow *aParent, const char *aUrl, const char *aName,
02429                         const char *aFeatures, nsISupports *aArguments, nsIDOMWindow **_retval);
02430     nsresult RegisterNotification(nsIObserver *aObserver);
02431     nsresult UnregisterNotification(nsIObserver *aObserver);
02432     nsresult GetWindowEnumerator(nsISimpleEnumerator **_retval);
02433     nsresult GetNewPrompter(nsIDOMWindow *aParent, nsIPrompt **_retval);
02434     nsresult GetNewAuthPrompter(nsIDOMWindow *aParent, nsIAuthPrompt **_retval);
02435     nsresult SetWindowCreator(nsIWindowCreator *creator);
02436     nsresult GetChromeForWindow(nsIDOMWindow *aWindow, nsIWebBrowserChrome **_retval);
02437     nsresult GetWindowByName(const PRUnichar *aTargetName, nsIDOMWindow *aCurrentWindow,
02438                              nsIDOMWindow **_retval);
02439     nsresult GetActiveWindow(nsIDOMWindow **aActiveWindow);
02440     nsresult SetActiveWindow(nsIDOMWindow *aActiveWindow);
02441 }
02442 
02443 [
02444     object,
02445     uuid(274cd32e-3675-47e1-9d8a-fc6504ded9ce),
02446     local
02447     /* NOT_FROZEN */
02448 ]
02449 interface nsIEditingSession : nsISupports
02450 {
02451     nsresult GetEditorStatus(PRUint32 *aEditorStatus);
02452     nsresult MakeWindowEditable(nsIDOMWindow *window, const char *aEditorType,
02453             PRBool doAfterUriLoad, PRBool aMakeWholeDocumentEditable, PRBool aInteractive);
02454     nsresult WindowIsEditable(nsIDOMWindow *window, PRBool *_retval);
02455     nsresult GetEditorForWindow(nsIDOMWindow *window, nsIEditor **_retval);
02456     nsresult SetupEditorOnWindow(nsIDOMWindow *window);
02457     nsresult TearDownEditorOnWindow(nsIDOMWindow *window);
02458     nsresult SetEditorOnControllers(nsIDOMWindow *aWindow, nsIEditor *aEditor);
02459     nsresult DisableJSAndPlugins(nsIDOMWindow *aWindow);
02460     nsresult RestoreJSAndPlugins(nsIDOMWindow *aWindow);
02461     nsresult DetachFromWindow(nsIDOMWindow *aWindow);
02462     nsresult ReattachToWindow(nsIDOMWindow *aWindow);
02463 }
02464 
02465 [
02466     object,
02467     uuid(83f892cf-7ed3-490e-967a-62640f3158e1),
02468     local
02469     /* NOT_FROZEN */
02470 ]
02471 interface nsICommandParams : nsISupports
02472 {
02473     nsresult GetValueType(const char *name, PRInt16 *_retval);
02474     nsresult GetBooleanValue(const char *name, PRBool *_retval);
02475     nsresult GetLongValue(const char *name, PRInt32 *_retval);
02476     nsresult GetDoubleValue(const char *name, double *_retval);
02477     nsresult GetStringValue(const char *name, nsAString *_retval);
02478     nsresult GetCStringValue(const char *name, char **_retval);
02479     nsresult GetISupportsValue(const char *name, nsISupports **_retval);
02480     nsresult SetBooleanValue(const char *name, PRBool value);
02481     nsresult SetLongValue(const char *name, PRInt32 value);
02482     nsresult SetDoubleValue(const char *name, double value);
02483     nsresult SetStringValue(const char *name, const nsAString *value);
02484     nsresult SetCStringValue(const char *name, const char *value);
02485     nsresult SetISupportsValue(const char *name, nsISupports *value);
02486     nsresult RemoveValue(const char *name);
02487     nsresult HasMoreElements(PRBool *_retval);
02488     nsresult First();
02489     nsresult GetNext(char **_retval);
02490 }
02491 
02492 [
02493     object,
02494     uuid(080d2001-f91e-11d4-a73c-f9242928207c),
02495     local
02496     /* NOT_FROZEN */
02497 ]
02498 interface nsICommandManager : nsISupports
02499 {
02500     nsresult AddCommandObserver(nsIObserver *aCommandObserver, const char *aCommandToObserve);
02501     nsresult RemoveCommandObserver(nsIObserver *aCommandObserver, const char *aCommandObserved);
02502     nsresult IsCommandSupported(const char *aCommandName, nsIDOMWindow *aTargetWindow, PRBool *_retval);
02503     nsresult IsCommandEnabled(const char *aCommandName, nsIDOMWindow *aTargetWindow, PRBool *_retval);
02504     nsresult GetCommandState(const char *aCommandName, nsIDOMWindow *aTargetWindow,
02505             nsICommandParams *aCommandParams);
02506     nsresult DoCommand(const char *aCommandName, nsICommandParams *aCommandParams,
02507             nsIDOMWindow *aTargetWindow);
02508 }
02509 
02510 [
02511     object,
02512     uuid(47b82b60-a36f-4167-8072-6f421151ed50),
02513     local
02514     /* NOT_FROZEN */
02515 ]
02516 interface nsIControllerContext : nsISupports
02517 {
02518     nsresult Init(nsIControllerCommandTable *aCommandTable);
02519     nsresult SetCommandContext(nsISupports *aCommandContext);
02520 }
02521 
02522 [
02523     object,
02524     uuid(d5b61b82-1da4-11d3-bf87-00105a1b0627),
02525     local
02526     /* NOT_FROZEN */
02527 ]
02528 interface nsIController : nsISupports
02529 {
02530     nsresult IsCommandEnabled(const char *command, PRBool *_retval);
02531     nsresult SupportsCommand(const char *command, PRBool *_retval);
02532     nsresult DoCommand(const char *command);
02533     nsresult OnEvent(const char *eventName);
02534 }
02535 
02536 [
02537     object,
02538     uuid(34769de0-30d0-4cef-894a-fcd8bb27c4b4),
02539     local
02540     /* NOT_FROZEN */
02541 ]
02542 interface nsIContentSerializer : nsISupports
02543 {
02544     nsresult Init(PRUint32 flags, PRUint32 aWrapColumn, const char* aCharSet, PRBool aIsCopying,
02545             PRBool aIsWholeDocument);
02546     nsresult AppendText(nsIDOMText *aText, PRInt32 aStartOffset, PRInt32 aEndOffset, nsAString *aStr);
02547     nsresult AppendCDATASection(nsIDOMCDATASection *aCDATASection, PRInt32 aStartOffset,
02548             PRInt32 aEndOffset, nsAString *aStr);
02549     nsresult AppendProcessingInstruction(nsIDOMProcessingInstruction* aPI, PRInt32 aStartOffset,
02550             PRInt32 aEndOffset, nsAString *aStr);
02551     nsresult AppendComment(nsIDOMComment *aComment, PRInt32 aStartOffset, PRInt32 aEndOffset,
02552             nsAString *aStr);
02553     nsresult AppendDoctype(nsIDOMDocumentType *aDoctype, nsAString *aStr);
02554     nsresult AppendElementStart(nsIDOMElement *aElement, nsIDOMElement *aOriginalElement,
02555             nsAString *aStr);
02556     nsresult AppendElementEnd(nsIDOMElement *aElement, nsAString *aStr);
02557     nsresult Flush(nsAString *aStr);
02558     nsresult AppendDocumentStart(nsIDOMDocument *aDocument, nsAString *aStr);
02559 }
02560 
02561 [
02562     object,
02563     uuid(96b60ba0-634a-41e4-928e-78ab0b3c4b46),
02564     local
02565     /* NOT_FROZEN */
02566 ]
02567 interface nsIEditor  : nsISupports
02568 {
02569     typedef void *nsIPresShellPtr;
02570     typedef void *nsIContentPtr;
02571 
02572     nsresult GetSelection([out] nsISelection *_retval);
02573     nsresult Init([in] nsIDOMDocument *doc, [in] nsIPresShellPtr shell, [in] nsIContentPtr aRoot, [in] nsISelectionController *aSelCon, [in] PRUint32 aFlags);
02574     nsresult SetAttributeOrEquivalent([in] nsIDOMElement *element, [in] const nsAString *sourceAttrName, [in] const nsAString *sourceAttrValue, [in] PRBool aSuppressTransaction);
02575     nsresult RemoveAttributeOrEquivalent([in] nsIDOMElement *element, [in] const nsAString *sourceAttrName, [in] PRBool aSuppressTransaction);
02576     nsresult PostCreate();
02577     nsresult PreDestroy();
02578     nsresult GetFlags([out] PRUint32 *_retval);
02579     nsresult SetFlags([in] PRUint32 val);
02580     nsresult GetContentsMIMEType([out] char **_retval);
02581     nsresult SetContentsMIMEType([in] const char *val);
02582     nsresult GetIsDocumentEditable([out] PRBool *_retval);
02583     nsresult GetDocument([out] nsIDOMDocument **_retval);
02584     nsresult GetRootElement([out] nsIDOMElement **_retval);
02585     nsresult GetSelectionController([out] nsISelectionController **_retval);
02586     nsresult DeleteSelection([in] PRInt16 action);
02587     nsresult GetDocumentIsEmpty([out] PRBool *_retval);
02588     nsresult GetDocumentModified([out] PRBool *_retval);
02589     nsresult GetDocumentCharacterSet([out] nsACString *_retval);
02590     nsresult SetDocumentCharacterSet([in] const nsACString *val);
02591     nsresult ResetModificationCount();
02592     nsresult GetModificationCount([out] PRInt32 *_retval);
02593     nsresult IncrementModificationCount([in] PRInt32 aModCount);
02594     nsresult GetTransactionManager([out] nsITransactionManager **_retval);
02595     nsresult SetTransactionManager(nsITransactionManager *aTransactionManager);
02596     nsresult DoTransaction([in] nsITransaction *txn);
02597     nsresult EnableUndo([in] PRBool enable);
02598     nsresult Undo([in] PRUint32 count);
02599     nsresult CanUndo([out] PRBool *isEnabled, [out] PRBool *canUndo);
02600     nsresult Redo([in] PRUint32 count);
02601     nsresult CanRedo([out] PRBool *isEnabled, [out] PRBool *canRedo);
02602     nsresult BeginTransaction();
02603     nsresult EndTransaction();
02604     nsresult BeginPlaceHolderTransaction([in] nsIAtom *name);
02605     nsresult EndPlaceHolderTransaction();
02606     nsresult ShouldTxnSetSelection([out] PRBool *_retval);
02607     nsresult SetShouldTxnSetSelection([in] PRBool should);
02608     nsresult GetInlineSpellChecker([out] nsIInlineSpellChecker **_retval);
02609     nsresult SyncRealTimeSpell();
02610     nsresult SetSpellcheckUserOverride(PRBool enable);
02611     nsresult Cut();
02612     nsresult CanCut([out] PRBool *_retval);
02613     nsresult Copy();
02614     nsresult CanCopy([out] PRBool *_retval);
02615     nsresult Paste([in] PRInt32 aSelectionType);
02616     nsresult CanPaste([in] PRInt32 aSelectionType, [out] PRBool *_retval);
02617     nsresult SelectAll();
02618     nsresult BeginningOfDocument();
02619     nsresult EndOfDocument();
02620     nsresult CanDrag([in] nsIDOMEvent *aEvent, [out] PRBool *_retval);
02621     nsresult DoDrag([in] nsIDOMEvent *aEvent);
02622     nsresult InsertFromDrop([in] nsIDOMEvent *aEvent);
02623     nsresult SetAttribute([in] nsIDOMElement *aElement, [in] const nsAString *attributestr, [in] const nsAString *attvalue);
02624     nsresult GetAttributeValue([in] nsIDOMElement *aElement, [in] const nsAString *attributestr, [out] nsAString *resultValue, PRBool *_retval);
02625     nsresult RemoveAttribute([in] nsIDOMElement *aElement, [in] const nsAString *aAttribute);
02626     nsresult CloneAttribute([in] const nsAString *aAttribute, [in] nsIDOMNode *aDestNode, [in] nsIDOMNode *aSourceNode);
02627     nsresult CloneAttributes([in] nsIDOMNode *destNode, [in] nsIDOMNode *sourceNode);
02628     nsresult CreateNode([in] const nsAString *tag, [in] nsIDOMNode *parent, [in] PRInt32 position, [out] nsIDOMNode **_retval);
02629     nsresult InsertNode([in] nsIDOMNode *node, [in] nsIDOMNode *parent, [in] PRInt32 aPosition);
02630     nsresult SplitNode([in] nsIDOMNode *existingRightNode, [in] PRInt32 offset, [out] nsIDOMNode **newLeftNode);
02631     nsresult JoinNodes([in] nsIDOMNode *leftNode, [in] nsIDOMNode *rightNode, [in] nsIDOMNode *parent);
02632     nsresult DeleteNode([in] nsIDOMNode *child);
02633     nsresult MarkNodeDirty([in] nsIDOMNode *node);
02634     nsresult SwitchTextDirection();
02635     nsresult OutputToString([in] nsAString formatType, [in] PRUint32 flags, [out] nsAString *_retval);
02636     nsresult OutputToStream([in] nsIOutputStream *aStream, [in] nsAString *formatType, [in] nsACString *charsetOverride, [in] PRUint32 flags);
02637     nsresult AddEditorObserver([in] nsIEditorObserver *observer);
02638     nsresult RemoveEditorObserver([in] nsIEditorObserver *observer);
02639     nsresult AddEditActionListener([in] nsIEditActionListener *listener);
02640     nsresult RemoveEditActionListener([in] nsIEditActionListener *listener);
02641     nsresult AddDocumentStateListener([in] nsIDocumentStateListener *listener);
02642     nsresult RemoveDocumentStateListener([in] nsIDocumentStateListener *listener);
02643     nsresult DumpContentTree();
02644     nsresult DebugDumpContent();
02645     nsresult DebugUnitTests([out] PRInt32 *outNumTests, [out] PRInt32 *outNumTestsFailed);
02646     PRBool IsModifiableNode(nsIDOMNode *aNode);
02647 }
02648 
02649 [
02650     object,
02651     uuid(afc36593-5787-4420-93d9-b2c0ccbf0cad),
02652     local
02653     /* NOT_FROZEN */
02654 ]
02655 interface nsIHTMLEditor : nsISupports
02656 {
02657     nsresult AddDefaultProperty([in] nsIAtom *aProperty, [in] nsAString *aAttribute, [in] nsAString *aValue);
02658     nsresult RemoveDefaultProperty([in] nsIAtom *aProperty, [in] nsAString *aAttribute, [in] nsAString *aValue);
02659     nsresult RemoveAllDefaultProperties();
02660     nsresult SetCSSInlineProperty([in] nsIAtom *aProperty, [in] nsAString *aAttribute, [in] nsAString *aValue);
02661     nsresult SetInlineProperty([in] nsIAtom *aProperty, [in] nsAString *aAttribute, [in] nsAString *aValue);
02662     nsresult GetInlineProperty([in] nsIAtom *aProperty, [in] nsAString *aAttribute, [in] nsAString *aValue, [out] PRBool *aFirst, [out] PRBool *aAny, [out] PRBool *aAll);
02663     nsresult GetInlinePropertyWithAttrValue([in] nsIAtom *aProperty, [in] nsAString *aAttribute, [in] nsAString *aValue, [out] PRBool *aFirst, [out] PRBool *aAny, [out] PRBool *aAll, [out] nsAString *_retval);
02664     nsresult RemoveAllInlineProperties();
02665     nsresult RemoveInlineProperty([in] nsIAtom *aProperty, [in] nsAString *aAttribute);
02666     nsresult IncreaseFontSize();
02667     nsresult DecreaseFontSize();
02668     nsresult CanDrag([in] nsIDOMEvent *aEvent, [out] PRBool *_retval);
02669     nsresult DoDrag([in] nsIDOMEvent *aEvent);
02670     nsresult InsertFromDrop([in] nsIDOMEvent *aEvent);
02671     nsresult NodeIsBlock([in] nsIDOMNode *node, PRBool *_retval);
02672     nsresult InsertHTML([in] nsAString *aInputString);
02673     nsresult PasteNoFormatting([in] PRInt32 aSelectionType);
02674     nsresult RebuildDocumentFromSource([in] nsAString *aSourceString);
02675     nsresult InsertHTMLWithContext([in] nsAString *aInputString, [in] nsAString *aContextStr, [in] nsAString *aInfoStr, [in] nsAString *aFlavor, [in] nsIDOMDocument *aSourceDoc, [in] nsIDOMNode *aDestinationNode, [in] PRInt32 aDestinationOffset, [in] PRBool aDeleteSelection);
02676     nsresult InsertElementAtSelection([in] nsIDOMElement *aElement, [in] PRBool aDeleteSelection);
02677     nsresult SetDocumentTitle([in] nsAString *aTitle);
02678     nsresult UpdateBaseURL();
02679     nsresult SelectElement([in] nsIDOMElement *aElement);
02680     nsresult SetCaretAfterElement([in] nsIDOMElement *aElement);
02681     nsresult SetParagraphFormat([in] nsAString *aParagraphFormat);
02682     nsresult GetParagraphState([out] PRBool *aMixed, [out] nsAString *_retval);
02683     nsresult GetFontFaceState([out] PRBool *aMixed, [out] nsAString *_retval);
02684     nsresult GetFontColorState([out] PRBool *aMixed, [out] nsAString *_retval);
02685     nsresult GetBackgroundColorState([out] PRBool *aMixed, [out] nsAString *_retval);
02686     nsresult GetHighlightColorState([out] PRBool *aMixed, [out] nsAString *_retval);
02687     nsresult GetListState([out] PRBool *aMixed, [out] PRBool *aOL, [out] PRBool *aUL, [out] PRBool *aDL);
02688     nsresult GetListItemState([out] PRBool *aMixed, [out] PRBool *aLI, [out] PRBool *aDT, [out] PRBool *aDD);
02689     nsresult GetAlignment([out] PRBool *aMixed, [out] PRInt16 *aAlign);
02690     nsresult GetIndentState([out] PRBool *aCanIndent, [out] PRBool *aCanOutdent);
02691     nsresult MakeOrChangeList([in] nsAString *aListType, [in] PRBool entireList, [in] nsAString *aBulletType);
02692     nsresult RemoveList([in] nsAString *aListType);
02693     nsresult Indent([in] nsAString *aIndent);
02694     nsresult Align([in] nsAString *aAlign);
02695     nsresult GetElementOrParentByTagName([in] nsAString *aTagName, [in] nsIDOMNode *aNode, [out] nsIDOMElement **_retval);
02696     nsresult GetSelectedElement([in] nsAString *aTagName, [out] nsIDOMElement **_retval);
02697     nsresult GetHeadContentsAsHTML([out] nsAString *_retval);
02698     nsresult ReplaceHeadContentsWithHTML([in] nsAString *aSourceToInsert);
02699     nsresult CreateElementWithDefaults([in] nsAString *aTagName, [out] nsIDOMElement **_retval);
02700     nsresult InsertLinkAroundSelection([in] nsIDOMElement *aAnchorElement);
02701     nsresult SetBackgroundColor([in] nsAString *aColor);
02702     nsresult SetBodyAttribute([in] nsAString *aAttr, [in] nsAString *aValue);
02703     nsresult IgnoreSpuriousDragEvent([in] PRBool aIgnoreSpuriousDragEvent);
02704     nsresult GetLinkedObjects([out] nsISupportsArray **_retval);
02705     nsresult GetIsCSSEnabled([out] PRBool *_retval);
02706     nsresult SetIsCSSEnabled([in] PRBool prb);
02707     nsresult AddInsertionListener([in] nsIContentFilter *inFilter);
02708     nsresult RemoveInsertionListener([in] nsIContentFilter *inFilter);
02709     nsresult CreateAnonymousElement([in] nsAString *aTag, [in] nsIDOMNode *aParentNode, [in] nsAString *aAnonClass, [in] PRBool aIsCreatedHidden, [out] nsIDOMElement **_retval);
02710     nsresult GetSelectionContainer([out] nsIDOMElement **_retval);
02711     nsresult CheckSelectionStateForAnonymousButtons([in] nsISelection *aSelection);
02712     nsresult IsAnonymousElement([in] nsIDOMElement *aElement, [out] PRBool *_retval);
02713     nsresult GetReturnInParagraphCreatesNewParagraph([out] PRBool *_retval);
02714     nsresult SetReturnInParagraphCreatesNewParagraph([in] PRBool prb);
02715 }
02716 
02717 [
02718     object,
02719     uuid(8adfb831-1053-4a19-884d-bcdad7277b4b),
02720     local
02721     /* NOT_FROZEN */
02722 ]
02723 interface nsIDocShell : nsISupports
02724 {
02725     nsresult LoadURI(nsIURI *uri, nsIDocShellLoadInfo *loadInfo, PRUint32 aLoadFlags, PRBool firstParty);
02726     nsresult LoadStream(nsIInputStream *aStream, nsIURI *aURI, const nsACString *aContentType,
02727             const nsACString *aContentCharset, nsIDocShellLoadInfo *aLoadInfo);
02728     nsresult InternalLoad(nsIURI *aURI, nsIURI *aReferrer, nsISupports *aOwner, PRUint32 aFlags, const PRUnichar *aWindowTarget,
02729             const char *aTypeHint, nsIInputStream *aPostDataStream, nsIInputStream *aHeadersStream, PRUint32 aLoadFlags,
02730             nsISHEntry *aSHEntry, PRBool firstParty, nsIDocShell **aDocShell, nsIRequest **aRequest);
02731     nsresult CreateLoadInfo(nsIDocShellLoadInfo **loadInfo);
02732     nsresult PrepareForNewContentModel();
02733     nsresult SetCurrentURI(nsIURI *aURI);
02734     nsresult FirePageHideNotification(PRBool isUnload);
02735     nsresult GetPresContext(void /*nsPresContext*/ **aPresContext);
02736     nsresult GetPresShell(nsIPresShell **aPresShell);
02737     nsresult GetEldestPresShell(nsIPresShell **aEldestPresShell);
02738     nsresult GetContentViewer(nsIContentViewer **aContentViewer);
02739     nsresult GetChromeEventHandler(nsIDOMEventTarget **aChromeEventHandler);
02740     nsresult SetChromeEventHandler(nsIDOMEventTarget *aChromeEventHandler);
02741     nsresult GetDocumentCharsetInfo(nsIDocumentCharsetInfo **aDocumentCharsetInfo);
02742     nsresult SetDocumentCharsetInfo(nsIDocumentCharsetInfo *aDocumentCharsetInfo);
02743     nsresult GetAllowPlugins(PRBool *aAllowPlugins);
02744     nsresult SetAllowPlugins(PRBool aAllowPlugins);
02745     nsresult GetAllowJavascript(PRBool *aAllowJavascript);
02746     nsresult SetAllowJavascript(PRBool aAllowJavascript);
02747     nsresult GetAllowMetaRedirects(PRBool *aAllowMetaRedirects);
02748     nsresult SetAllowMetaRedirects(PRBool aAllowMetaRedirects);
02749     nsresult GetAllowSubframes(PRBool *aAllowSubframes);
02750     nsresult SetAllowSubframes(PRBool aAllowSubframes);
02751     nsresult GetAllowImages(PRBool *aAllowImages);
02752     nsresult SetAllowImages(PRBool aAllowImages);
02753     nsresult GetAllowDNSPrefetch(PRBool *aAllowDNSPrefetch);
02754     nsresult SetAllowDNSPrefetch(PRBool aAllowDNSPrefetch);
02755     nsresult GetDocShellEnumerator(PRInt32 aItemType, PRInt32 aDirection, nsISimpleEnumerator **_retval);
02756     nsresult GetAppType(PRUint32 *aAppType);
02757     nsresult SetAppType(PRUint32 aAppType);
02758     nsresult GetAllowAuth(PRBool *aAllowAuth);
02759     nsresult SetAllowAuth(PRBool aAllowAuth);
02760     nsresult GetZoom(float *aZoom);
02761     nsresult SetZoom(float aZoom);
02762     nsresult GetMarginWidth(PRInt32 *aMarginWidth);
02763     nsresult SetMarginWidth(PRInt32 aMarginWidth);
02764     nsresult GetMarginHeight(PRInt32 *aMarginHeight);
02765     nsresult SetMarginHeight(PRInt32 aMarginHeight);
02766     nsresult TabToTreeOwner(PRBool forward, PRBool *tookFocus);
02767     nsresult GetBusyFlags(PRUint32 *aBusyFlags);
02768     nsresult GetLoadType(PRUint32 *aLoadType);
02769     nsresult SetLoadType(PRUint32 aLoadType);
02770     nsresult IsBeingDestroyed(PRBool *_retval);
02771     nsresult GetIsExecutingOnLoadHandler(PRBool *aIsExecutingOnLoadHandler);
02772     nsresult GetLayoutHistoryState(nsILayoutHistoryState **aLayoutHistoryState);
02773     nsresult SetLayoutHistoryState(nsILayoutHistoryState *aLayoutHistoryState);
02774     nsresult GetShouldSaveLayoutState(PRBool *aShouldSaveLayoutState);
02775     nsresult GetSecurityUI(nsISecureBrowserUI **aSecurityUI);
02776     nsresult SetSecurityUI(nsISecureBrowserUI *aSecurityUI);
02777     nsresult SuspendRefreshURIs();
02778     nsresult ResumeRefreshURIs();
02779     nsresult BeginRestore(nsIContentViewer *viewer, PRBool top);
02780     nsresult FinishRestore();
02781     nsresult GetRestoringDocument(PRBool *aRestoringDocument);
02782     nsresult GetUseErrorPages(PRBool *aUseErrorPages);
02783     nsresult SetUseErrorPages(PRBool aUseErrorPages);
02784     nsresult GetPreviousTransIndex(PRInt32 *aPreviousTransIndex);
02785     nsresult GetLoadedTransIndex(PRInt32 *aLoadedTransIndex);
02786     nsresult HistoryPurged(PRInt32 numEntries);
02787     nsresult GetSessionStorageForURI(nsIURI *uri, nsIDOMStorage **_retval);
02788     nsresult GetSessionStorageForPrincipal(nsIPrincipal *principal, PRBool create, nsIDOMStorage **_retval);
02789     nsresult AddSessionStorage(nsIPrincipal *principal, nsIDOMStorage *storage);
02790     nsresult GetCurrentDocumentChannel(nsIChannel **aCurrentDocumentChannel);
02791     nsresult SetChildOffset(PRUint32 offset);
02792     nsresult GetIsInUnload(PRBool *aIsInUnload);
02793     nsresult GetChannelIsUnsafe(PRBool *aChannelIsUnsafe);
02794     void DetachEditorFromWindow();
02795     nsresult GetIsOffScreenBrowser(PRBool *aIsOffScreenBrowser);
02796     nsresult SetIsOffScreenBrowser(PRBool aIsOffScreenBrowser);
02797 }
02798 
02799 [
02800     object,
02801     uuid(365d600b-868a-452a-8de8-f46fad8fee53),
02802     local
02803     /* NOT_FROZEN */
02804 ]
02805 interface nsIMutationObserver : nsISupports
02806 {
02807     void CharacterDataWillChange(nsIDocument *aDocument, nsIContent *aContent,
02808                                  void /*CharacterDataChangeInfo*/ *aInfo);
02809     void CharacterDataChanged(nsIDocument *aDocument, nsIContent *aContent,
02810                               void /*CharacterDataChangeInfo*/ *aInfo);
02811     void AttributeWillChange(nsIDocument *aDocument, nsIContent * aContent, PRInt32 aNameSpaceID,
02812                              nsIAtom *aAttribute, PRInt32 aModType);
02813     void AttributeChanged(nsIDocument *aDocument, nsIContent *aContent, PRInt32 aNameSpaceID,
02814                           nsIAtom *aAttribute, PRInt32 aModType, PRUint32 aStateMask);
02815     void ContentAppended(nsIDocument *aDocument, nsIContent *aContainer, PRInt32 aNewIndexInContainer);
02816     void ContentInserted(nsIDocument *aDocument, nsIContent *aContainer, nsIContent *aChild,
02817                          PRInt32 aIndexInContainer);
02818     void ContentRemoved(nsIDocument *aDocument, nsIContent *aContainer, nsIContent *aChild,
02819                         PRInt32 aIndexInContainer);
02820     void NodeWillBeDestroyed(const nsINode *aNode);
02821     void ParentChainChanged(nsIContent *aContent);
02822 }
02823 
02824 [
02825     object,
02826     uuid(4e14e321-a4bb-49f8-a57a-2363668d14d0),
02827     local
02828     /* NOT_FROZEN */
02829 ]
02830 interface nsIDocumentObserver : nsIMutationObserver
02831 {
02832     typedef int nsUpdateType;
02833 
02834     void BeginUpdate(nsIDocument *aDocument, nsUpdateType aUpdateType);
02835     void EndUpdate(nsIDocument *aDocument, nsUpdateType aUpdateType);
02836     void BeginLoad(nsIDocument *aDocument);
02837     void EndLoad(nsIDocument *aDocument);
02838     void ContentStatesChanged(nsIDocument *aDocument, nsIContent *aContent1, nsIContent *aContent2,
02839                               PRInt32 aStateMask);
02840     void StyleSheetAdded(nsIDocument *aDocument, nsIStyleSheet *aStyleSheet, PRBool aDocumentSheet);
02841     void StyleSheetRemoved(nsIDocument *aDocument, nsIStyleSheet *aStyleSheet, PRBool aDocumentSheet);
02842     void StyleSheetApplicableStateChanged(nsIDocument *aDocument, nsIStyleSheet *aStyleSheet,
02843                                           PRBool aApplicable);
02844     void StyleRuleChanged(nsIDocument *aDocument, nsIStyleSheet *aStyleSheet, nsIStyleRule *aOldStyleRule,
02845                           nsIStyleRule *aNewStyleRule);
02846     void StyleRuleAdded(nsIDocument *aDocument, nsIStyleSheet *aStyleSheet, nsIStyleRule *aStyleRule);
02847     void StyleRuleRemoved(nsIDocument *aDocument, nsIStyleSheet *aStyleSheet, nsIStyleRule *aStyleRule);
02848     void BindToDocument(nsIDocument *aDocument, nsIContent *aContent);
02849     void DoneAddingChildren(nsIContent *aContent, PRBool aHaveNotified);
02850 }

Generated on Sun May 27 2012 04:25:05 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.