Back to index

lightning-sunbird  0.9+nobinonly
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes | Friends
nsXULPrototypeDocument Class Reference
Inheritance diagram for nsXULPrototypeDocument:
Inheritance graph
[legend]
Collaboration diagram for nsXULPrototypeDocument:
Collaboration graph
[legend]

List of all members.

Public Member Functions

NS_DECL_ISUPPORTS
NS_DECL_NSISERIALIZABLE
NS_IMETHOD 
GetURI (nsIURI **aResult)
NS_IMETHOD SetURI (nsIURI *aURI)
 Retrieve the URI of the document.
NS_IMETHOD GetRootElement (nsXULPrototypeElement **aResult)
 Retrieve the root XULPrototype element of the document.
NS_IMETHOD SetRootElement (nsXULPrototypeElement *aElement)
NS_IMETHOD AddStyleSheetReference (nsIURI *aStyleSheet)
NS_IMETHOD GetStyleSheetReferences (nsISupportsArray **aResult)
NS_IMETHOD AddOverlayReference (nsIURI *aURI)
NS_IMETHOD GetOverlayReferences (nsISupportsArray **aResult)
NS_IMETHOD GetHeaderData (nsIAtom *aField, nsAString &aData) const
NS_IMETHOD SetHeaderData (nsIAtom *aField, const nsAString &aData)
virtual nsIPrincipalGetDocumentPrincipal ()
void SetDocumentPrincipal (nsIPrincipal *aPrincipal)
NS_IMETHOD AwaitLoadDone (nsIXULDocument *aDocument, PRBool *aResult)
NS_IMETHOD NotifyLoadDone ()
virtual nsNodeInfoManagerGetNodeInfoManager ()
virtual nsIScriptGlobalObjectGetScriptGlobalObject ()
 Returns the script global object.
 NS_DEFINE_STATIC_CID_ACCESSOR (NS_XULPROTOTYPEDOCUMENT_CID)
 NS_DEFINE_STATIC_IID_ACCESSOR (NS_IXULPROTOTYPEDOCUMENT_IID)
void read (in nsIObjectInputStream aInputStream)
 Initialize the object implementing nsISerializable, which must have been freshly constructed via CreateInstance.
void write (in nsIObjectOutputStream aOutputStream)
 Serialize the object implementing nsISerializable to aOutputStream, by writing each data member that must be recovered later to reconstitute a working replica of this object, in a canonical member and byte order, to aOutputStream.

Static Public Member Functions

static nsresult Create (nsIURI *aURI, nsXULPrototypeDocument **aResult)

Protected Member Functions

 nsXULPrototypeDocument ()
virtual ~nsXULPrototypeDocument ()
nsresult Init ()
nsresult NewXULPDGlobalObject (nsIScriptGlobalObject **aResult)

Protected Attributes

nsCOMPtr< nsIURImURI
nsXULPrototypeElementmRoot
nsCOMPtr< nsISupportsArraymStyleSheetReferences
nsCOMPtr< nsISupportsArraymOverlayReferences
nsCOMPtr< nsIPrincipalmDocumentPrincipal
nsCOMPtr< nsIScriptGlobalObjectmGlobalObject
PRPackedBool mLoaded
nsCOMPtr< nsICollectionmPrototypeWaiters
nsRefPtr< nsNodeInfoManagermNodeInfoManager

Static Protected Attributes

static nsIPrincipalgSystemPrincipal
static nsIScriptGlobalObjectgSystemGlobal
static PRUint32 gRefCnt

Friends

class nsXULPDGlobalObject
NS_IMETHODIMP NS_NewXULPrototypeDocument (nsISupports *aOuter, REFNSIID aIID, void **aResult)

Detailed Description

Definition at line 124 of file nsXULPrototypeDocument.cpp.


Constructor & Destructor Documentation

Definition at line 268 of file nsXULPrototypeDocument.cpp.

{
    if (mGlobalObject) {
        mGlobalObject->SetContext(nsnull); // remove circular reference
        mGlobalObject->SetGlobalObjectOwner(nsnull); // just in case
    }
    
    if (mRoot)
        mRoot->ReleaseSubtree();

    if (--gRefCnt == 0) {
        NS_IF_RELEASE(gSystemPrincipal);
        NS_IF_RELEASE(gSystemGlobal);
    }
}

Here is the call graph for this function:


Member Function Documentation

NS_IMETHOD nsXULPrototypeDocument::AwaitLoadDone ( nsIXULDocument aDocument,
PRBool aResult 
) [virtual]
static nsresult nsXULPrototypeDocument::Create ( nsIURI aURI,
nsXULPrototypeDocument **  aResult 
) [static]
NS_IMETHOD nsXULPrototypeDocument::GetHeaderData ( nsIAtom aField,
nsAString &  aData 
) const [virtual]

Retrieve the root XULPrototype element of the document.

Implements nsIXULPrototypeDocument.

Returns the script global object.

Implements nsIScriptGlobalObjectOwner.

NS_DECL_ISUPPORTS NS_DECL_NSISERIALIZABLE NS_IMETHOD nsXULPrototypeDocument::GetURI ( nsIURI **  aResult) [virtual]
void nsISerializable::read ( in nsIObjectInputStream  aInputStream) [inherited]

Initialize the object implementing nsISerializable, which must have been freshly constructed via CreateInstance.

All data members that can't be set to default values must have been serialized by write, and should be read from aInputStream in the same order by this method.

NS_IMETHOD nsXULPrototypeDocument::SetHeaderData ( nsIAtom aField,
const nsAString &  aData 
) [virtual]

Retrieve the URI of the document.

Implements nsIXULPrototypeDocument.

void nsISerializable::write ( in nsIObjectOutputStream  aOutputStream) [inherited]

Serialize the object implementing nsISerializable to aOutputStream, by writing each data member that must be recovered later to reconstitute a working replica of this object, in a canonical member and byte order, to aOutputStream.

NB: a class that implements nsISerializable must also implement nsIClassInfo, in particular nsIClassInfo::GetClassID.

Here is the caller graph for this function:


Friends And Related Function Documentation

NS_IMETHODIMP NS_NewXULPrototypeDocument ( nsISupports *  aOuter,
REFNSIID  aIID,
void **  aResult 
) [friend]
friend class nsXULPDGlobalObject [friend]

Definition at line 194 of file nsXULPrototypeDocument.cpp.


Member Data Documentation

Definition at line 192 of file nsXULPrototypeDocument.cpp.

Definition at line 191 of file nsXULPrototypeDocument.cpp.

Definition at line 190 of file nsXULPrototypeDocument.cpp.

Definition at line 171 of file nsXULPrototypeDocument.cpp.

Definition at line 173 of file nsXULPrototypeDocument.cpp.

Definition at line 175 of file nsXULPrototypeDocument.cpp.

Definition at line 178 of file nsXULPrototypeDocument.cpp.

Definition at line 170 of file nsXULPrototypeDocument.cpp.

Definition at line 176 of file nsXULPrototypeDocument.cpp.

Definition at line 168 of file nsXULPrototypeDocument.cpp.

Definition at line 169 of file nsXULPrototypeDocument.cpp.

Definition at line 167 of file nsXULPrototypeDocument.cpp.


The documentation for this class was generated from the following file: