зеркало из https://github.com/mozilla/gecko-dev.git
Add a SetAttribute method to nsIContent that takes a nsINodeInfo parameter.
This commit is contained in:
Родитель
f74f4da535
Коммит
f0dce37b28
|
@ -40,6 +40,7 @@ class nsIContent;
|
|||
class nsISupportsArray;
|
||||
class nsIDOMRange;
|
||||
class nsISizeOfHandler;
|
||||
class nsINodeInfo;
|
||||
|
||||
// IID for the nsIContent interface
|
||||
#define NS_ICONTENT_IID \
|
||||
|
@ -136,6 +137,23 @@ public:
|
|||
const nsString& aValue,
|
||||
PRBool aNotify) = 0;
|
||||
|
||||
/**
|
||||
* Set attribute values. All attribute values are assumed to have a
|
||||
* canonical string representation that can be used for these
|
||||
* methods. The setAttribute method is assumed to perform a translation
|
||||
* of the canonical form into the underlying content specific
|
||||
* form.
|
||||
*
|
||||
* @param aNodeInfo the node info (name, prefix, namespace id) of the
|
||||
* attribute
|
||||
* @param aValue may legitimately be the empty string.
|
||||
*
|
||||
* @param aNotify specifies whether or not the document should be
|
||||
* notified of the attribute change.
|
||||
*/
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo* aNodeInfo, const nsString& aValue,
|
||||
PRBool aNotify) = 0;
|
||||
|
||||
/**
|
||||
* Get the current value of the attribute. This returns a form that is
|
||||
* suitable for passing back into setAttribute.
|
||||
|
|
|
@ -124,6 +124,10 @@ public:
|
|||
const nsString& aValue, PRBool aNotify) {
|
||||
return mInner.SetAttribute(aNameSpaceID, aAttribute, aValue, aNotify);
|
||||
}
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo* aNodeInfo,
|
||||
const nsString& aValue, PRBool aNotify) {
|
||||
return mInner.SetAttribute(aNodeInfo, aValue, aNotify);
|
||||
}
|
||||
NS_IMETHOD UnsetAttribute(PRInt32 aNameSpaceID, nsIAtom* aAttribute,
|
||||
PRBool aNotify) {
|
||||
return mInner.UnsetAttribute(aNameSpaceID, aAttribute, aNotify);
|
||||
|
|
|
@ -164,6 +164,10 @@ public:
|
|||
const nsString& aValue,
|
||||
PRBool aNotify)
|
||||
{ return NS_OK; }
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo* aNodeInfo,
|
||||
const nsString& aValue,
|
||||
PRBool aNotify)
|
||||
{ return NS_OK; }
|
||||
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName,
|
||||
nsString& aResult) const
|
||||
{ return NS_CONTENT_ATTR_NOT_THERE; }
|
||||
|
|
|
@ -173,6 +173,10 @@ struct nsGenericDOMDataNode {
|
|||
PRBool aNotify) {
|
||||
return NS_OK;
|
||||
}
|
||||
nsresult SetAttribute(nsINodeInfo *aNodeInfo, const nsString& aValue,
|
||||
PRBool aNotify) {
|
||||
return NS_OK;
|
||||
}
|
||||
nsresult UnsetAttribute(PRInt32 aNameSpaceID, nsIAtom* aAttribute, PRBool aNotify) {
|
||||
return NS_OK;
|
||||
}
|
||||
|
@ -490,6 +494,10 @@ struct nsGenericDOMDataNode {
|
|||
const nsString& aValue, PRBool aNotify) { \
|
||||
return _g.SetAttribute(aNameSpaceID, aAttribute, aValue, aNotify); \
|
||||
} \
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo* aNodeInfo, \
|
||||
const nsString& aValue, PRBool aNotify) { \
|
||||
return _g.SetAttribute(aNodeInfo, aValue, aNotify); \
|
||||
} \
|
||||
NS_IMETHOD UnsetAttribute(PRInt32 aNameSpaceID, nsIAtom* aAttribute, \
|
||||
PRBool aNotify) { \
|
||||
return _g.UnsetAttribute(aNameSpaceID, aAttribute, aNotify); \
|
||||
|
|
|
@ -2300,6 +2300,24 @@ nsGenericContainerElement::SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName,
|
|||
return rv;
|
||||
}
|
||||
|
||||
nsresult
|
||||
nsGenericContainerElement::SetAttribute(nsINodeInfo* aNodeInfo,
|
||||
const nsString& aValue,
|
||||
PRBool aNotify)
|
||||
{
|
||||
NS_ENSURE_ARG_POINTER(aNodeInfo);
|
||||
|
||||
nsCOMPtr<nsIAtom> atom;
|
||||
PRInt32 nsid;
|
||||
|
||||
aNodeInfo->GetNameAtom(*getter_AddRefs(atom));
|
||||
aNodeInfo->GetNamespaceID(nsid);
|
||||
|
||||
// We still rely on the old way of setting the attribute.
|
||||
|
||||
return SetAttribute(nsid, atom, aValue, aNotify);
|
||||
}
|
||||
|
||||
nsresult
|
||||
nsGenericContainerElement::GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName,
|
||||
nsString& aResult) const
|
||||
|
|
|
@ -312,6 +312,8 @@ public:
|
|||
nsresult SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName,
|
||||
const nsString& aValue,
|
||||
PRBool aNotify);
|
||||
nsresult SetAttribute(nsINodeInfo* aNodeInfo, const nsString& aValue,
|
||||
PRBool aNotify);
|
||||
nsresult GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName,
|
||||
nsString& aResult) const;
|
||||
nsresult UnsetAttribute(PRInt32 aNameSpaceID, nsIAtom* aAttribute,
|
||||
|
@ -555,6 +557,10 @@ public:
|
|||
const nsString& aValue, PRBool aNotify) { \
|
||||
return _g.SetAttribute(aNameSpaceID, aName, aValue, aNotify); \
|
||||
} \
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo* aNodeInfo, \
|
||||
const nsString& aValue, PRBool aNotify) { \
|
||||
return _g.SetAttribute(aNodeInfo, aValue, aNotify); \
|
||||
} \
|
||||
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, \
|
||||
nsString& aResult) const { \
|
||||
return _g.GetAttribute(aNameSpaceID, aName, aResult); \
|
||||
|
@ -670,6 +676,10 @@ public:
|
|||
const nsString& aValue, PRBool aNotify) { \
|
||||
return _g.SetAttribute(aNameSpaceID, aName, aValue, aNotify); \
|
||||
} \
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo* aNodeInfo, \
|
||||
const nsString& aValue, PRBool aNotify) { \
|
||||
return _g.SetAttribute(aNodeInfo, aValue, aNotify); \
|
||||
} \
|
||||
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, \
|
||||
nsString& aResult) const { \
|
||||
return _g.GetAttribute(aNameSpaceID, aName, aResult); \
|
||||
|
@ -785,6 +795,10 @@ public:
|
|||
const nsString& aValue, PRBool aNotify) { \
|
||||
return _g.SetAttribute(aNameSpaceID, aName, aValue, aNotify); \
|
||||
} \
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo* aNodeInfo, \
|
||||
const nsString& aValue, PRBool aNotify) { \
|
||||
return _g.SetAttribute(aNodeInfo, aValue, aNotify); \
|
||||
} \
|
||||
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, \
|
||||
nsString& aResult) const { \
|
||||
return _g.GetAttribute(aNameSpaceID, aName, aResult); \
|
||||
|
@ -898,6 +912,10 @@ public:
|
|||
const nsString& aValue, PRBool aNotify) { \
|
||||
return _g.SetAttribute(aNameSpaceID, aName, aValue, aNotify); \
|
||||
} \
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo* aNodeInfo, \
|
||||
const nsString& aValue, PRBool aNotify) { \
|
||||
return _g.SetAttribute(aNodeInfo, aValue, aNotify); \
|
||||
} \
|
||||
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, \
|
||||
nsString& aResult) const { \
|
||||
return _g.GetAttribute(aNameSpaceID, aName, aResult); \
|
||||
|
@ -1015,6 +1033,10 @@ public:
|
|||
const nsString& aValue, PRBool aNotify) { \
|
||||
return _g.SetAttribute(aNameSpaceID, aName, aValue, aNotify); \
|
||||
} \
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo* aNodeInfo, \
|
||||
const nsString& aValue, PRBool aNotify) { \
|
||||
return _g.SetAttribute(aNodeInfo, aValue, aNotify); \
|
||||
} \
|
||||
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, \
|
||||
nsString& aResult) const { \
|
||||
return _g.GetAttribute(aNameSpaceID, aName, aResult); \
|
||||
|
@ -1124,6 +1146,10 @@ public:
|
|||
const nsString& aValue, PRBool aNotify) { \
|
||||
return _g.SetAttribute(aNameSpaceID, aName, aValue, aNotify); \
|
||||
} \
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo* aNodeInfo, \
|
||||
const nsString& aValue, PRBool aNotify) { \
|
||||
return _g.SetAttribute(aNodeInfo, aValue, aNotify); \
|
||||
} \
|
||||
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, \
|
||||
nsString& aResult) const { \
|
||||
return _g.GetAttribute(aNameSpaceID, aName, aResult); \
|
||||
|
|
|
@ -127,6 +127,8 @@ public:
|
|||
|
||||
NS_IMETHOD SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aAttribute, const nsString& aValue,
|
||||
PRBool aNotify) { return NS_OK; }
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo *aNodeInfo, const nsString& aValue,
|
||||
PRBool aNotify) { return NS_OK; }
|
||||
NS_IMETHOD UnsetAttribute(PRInt32 aNameSpaceID, nsIAtom* aAttribute, PRBool aNotify) { return NS_OK; }
|
||||
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom *aAttribute, nsString &aResult) const {return NS_CONTENT_ATTR_NOT_THERE; }
|
||||
NS_IMETHOD GetAttributeNameAt(PRInt32 aIndex, PRInt32& aNameSpaceID, nsIAtom*& aName) const {
|
||||
|
|
|
@ -1304,6 +1304,24 @@ nsGenericHTMLElement::SetAttribute(PRInt32 aNameSpaceID,
|
|||
return result;
|
||||
}
|
||||
|
||||
nsresult
|
||||
nsGenericHTMLElement::SetAttribute(nsINodeInfo* aNodeInfo,
|
||||
const nsString& aValue,
|
||||
PRBool aNotify)
|
||||
{
|
||||
NS_ENSURE_ARG_POINTER(aNodeInfo);
|
||||
|
||||
nsCOMPtr<nsIAtom> atom;
|
||||
PRInt32 nsid;
|
||||
|
||||
aNodeInfo->GetNameAtom(*getter_AddRefs(atom));
|
||||
aNodeInfo->GetNamespaceID(nsid);
|
||||
|
||||
// We still rely on the old way of setting the attribute.
|
||||
|
||||
return SetAttribute(nsid, atom, aValue, aNotify);
|
||||
}
|
||||
|
||||
static PRInt32 GetStyleImpactFrom(const nsHTMLValue& aValue)
|
||||
{
|
||||
PRInt32 hint = NS_STYLE_HINT_NONE;
|
||||
|
@ -3414,6 +3432,24 @@ nsGenericHTMLContainerFormElement::SetAttribute(PRInt32 aNameSpaceID, nsIAtom* a
|
|||
return nsGenericHTMLElement::SetAttribute(aNameSpaceID, aName, aValue, aNotify);
|
||||
}
|
||||
|
||||
nsresult
|
||||
nsGenericHTMLContainerFormElement::SetAttribute(nsINodeInfo* aNodeInfo,
|
||||
const nsString& aValue,
|
||||
PRBool aNotify)
|
||||
{
|
||||
NS_ENSURE_ARG_POINTER(aNodeInfo);
|
||||
|
||||
nsCOMPtr<nsIAtom> atom;
|
||||
PRInt32 nsid;
|
||||
|
||||
aNodeInfo->GetNameAtom(*getter_AddRefs(atom));
|
||||
aNodeInfo->GetNamespaceID(nsid);
|
||||
|
||||
// We still rely on the old way of setting the attribute.
|
||||
|
||||
return SetAttribute(nsid, atom, aValue, aNotify);
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
|
||||
nsGenericHTMLLeafFormElement::nsGenericHTMLLeafFormElement()
|
||||
|
@ -3446,4 +3482,22 @@ nsGenericHTMLLeafFormElement::SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName,
|
|||
return nsGenericHTMLElement::SetAttribute(aNameSpaceID, aName, aValue, aNotify);
|
||||
}
|
||||
|
||||
nsresult
|
||||
nsGenericHTMLLeafFormElement::SetAttribute(nsINodeInfo* aNodeInfo,
|
||||
const nsString& aValue,
|
||||
PRBool aNotify)
|
||||
{
|
||||
NS_ENSURE_ARG_POINTER(aNodeInfo);
|
||||
|
||||
nsCOMPtr<nsIAtom> atom;
|
||||
PRInt32 nsid;
|
||||
|
||||
aNodeInfo->GetNameAtom(*getter_AddRefs(atom));
|
||||
aNodeInfo->GetNamespaceID(nsid);
|
||||
|
||||
// We still rely on the old way of setting the attribute.
|
||||
|
||||
return SetAttribute(nsid, atom, aValue, aNotify);
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
|
|
|
@ -104,6 +104,7 @@ public:
|
|||
nsIAtom* aOffsetParentTag,
|
||||
nsIContent** aOffsetParent);
|
||||
|
||||
|
||||
// Implementation for nsIContent
|
||||
nsresult GetNameSpaceID(PRInt32& aNameSpaceID) const;
|
||||
nsresult SetDocument(nsIDocument* aDocument, PRBool aDeep);
|
||||
|
@ -114,6 +115,8 @@ public:
|
|||
nsIAtom*& aPrefix);
|
||||
nsresult SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, const nsString& aValue,
|
||||
PRBool aNotify);
|
||||
nsresult SetAttribute(nsINodeInfo* aNodeInfo, const nsString& aValue,
|
||||
PRBool aNotify);
|
||||
nsresult GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, nsString& aResult) const;
|
||||
nsresult UnsetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, PRBool aNotify);
|
||||
nsresult GetAttributeNameAt(PRInt32 aIndex,
|
||||
|
@ -460,6 +463,8 @@ public:
|
|||
nsresult SetForm(nsIForm* aForm);
|
||||
nsresult SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, const nsString& aValue,
|
||||
PRBool aNotify);
|
||||
nsresult SetAttribute(nsINodeInfo* aNodeInfo, const nsString& aValue,
|
||||
PRBool aNotify);
|
||||
nsresult SetAttribute(const nsString& aName, const nsString& aValue)
|
||||
{
|
||||
return nsGenericHTMLElement::SetAttribute(aName, aValue);
|
||||
|
@ -478,6 +483,8 @@ public:
|
|||
nsresult SetForm(nsIForm* aForm);
|
||||
nsresult SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, const nsString& aValue,
|
||||
PRBool aNotify);
|
||||
nsresult SetAttribute(nsINodeInfo* aNodeInfo, const nsString& aValue,
|
||||
PRBool aNotify);
|
||||
nsresult SetAttribute(const nsString& aName, const nsString& aValue)
|
||||
{
|
||||
return nsGenericHTMLElement::SetAttribute(aName, aValue);
|
||||
|
|
|
@ -125,6 +125,10 @@ public:
|
|||
const nsString& aValue, PRBool aNotify) {
|
||||
return mInner.SetAttribute(aNameSpaceID, aName, aValue, aNotify);
|
||||
}
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo* aNodeInfo,
|
||||
const nsString& aValue, PRBool aNotify) {
|
||||
return mInner.SetAttribute(aNodeInfo, aValue, aNotify);
|
||||
}
|
||||
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName,
|
||||
nsString& aResult) const {
|
||||
return mInner.GetAttribute(aNameSpaceID, aName, aResult);
|
||||
|
|
|
@ -122,6 +122,8 @@ public:
|
|||
}
|
||||
NS_IMETHOD SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName,
|
||||
const nsString& aValue, PRBool aNotify);
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo* aNodeInfo,
|
||||
const nsString& aValue, PRBool aNotify);
|
||||
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName,
|
||||
nsString& aResult) const {
|
||||
return mInner.GetAttribute(aNameSpaceID, aName, aResult);
|
||||
|
@ -426,6 +428,24 @@ nsHTMLUnknownElement::SetAttribute(PRInt32 aNameSpaceID,
|
|||
return result;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsHTMLUnknownElement::SetAttribute(nsINodeInfo *aNodeInfo,
|
||||
const nsString& aValue,
|
||||
PRBool aNotify)
|
||||
{
|
||||
NS_ENSURE_ARG_POINTER(aNodeInfo);
|
||||
|
||||
nsCOMPtr<nsIAtom> atom;
|
||||
PRInt32 nsid;
|
||||
|
||||
aNodeInfo->GetNameAtom(*getter_AddRefs(atom));
|
||||
aNodeInfo->GetNamespaceID(nsid);
|
||||
|
||||
// We still rely on the old way of setting the attribute.
|
||||
|
||||
return SetAttribute(nsid, atom, aValue, aNotify);
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsHTMLUnknownElement::HandleDOMEvent(nsIPresContext* aPresContext,
|
||||
nsEvent* aEvent,
|
||||
|
|
|
@ -240,6 +240,23 @@ nsXMLElement::SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName,
|
|||
return mInner.SetAttribute(aNameSpaceID, aName, aValue, aNotify);
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsXMLElement::SetAttribute(nsINodeInfo *aNodeInfo, const nsString& aValue,
|
||||
PRBool aNotify)
|
||||
{
|
||||
NS_ENSURE_ARG_POINTER(aNodeInfo);
|
||||
|
||||
nsCOMPtr<nsIAtom> atom;
|
||||
PRInt32 nsid;
|
||||
|
||||
aNodeInfo->GetNameAtom(*getter_AddRefs(atom));
|
||||
aNodeInfo->GetNamespaceID(nsid);
|
||||
|
||||
// We still rely on the old way of setting the attribute.
|
||||
|
||||
return SetAttribute(nsid, atom, aValue, aNotify);
|
||||
}
|
||||
|
||||
static nsresult WebShellToPresContext(nsIWebShell *aShell, nsIPresContext **aPresContext)
|
||||
{
|
||||
*aPresContext = nsnull;
|
||||
|
|
|
@ -118,6 +118,8 @@ public:
|
|||
}
|
||||
NS_IMETHOD SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, const nsString& aValue,
|
||||
PRBool aNotify);
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo *aNodeInfo, const nsString& aValue,
|
||||
PRBool aNotify);
|
||||
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName,
|
||||
nsString& aResult) const {
|
||||
return mInner.GetAttribute(aNameSpaceID, aName, aResult);
|
||||
|
|
|
@ -2867,6 +2867,24 @@ nsXULElement::SetAttribute(PRInt32 aNameSpaceID,
|
|||
return rv;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsXULElement::SetAttribute(nsINodeInfo* aNodeInfo,
|
||||
const nsString& aValue,
|
||||
PRBool aNotify)
|
||||
{
|
||||
NS_ENSURE_ARG_POINTER(aNodeInfo);
|
||||
|
||||
nsCOMPtr<nsIAtom> atom;
|
||||
PRInt32 nsid;
|
||||
|
||||
aNodeInfo->GetNameAtom(*getter_AddRefs(atom));
|
||||
aNodeInfo->GetNamespaceID(nsid);
|
||||
|
||||
// We still rely on the old way of setting the attribute.
|
||||
|
||||
return SetAttribute(nsid, atom, aValue, aNotify);
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsXULElement::GetAttribute(PRInt32 aNameSpaceID,
|
||||
nsIAtom* aName,
|
||||
|
|
|
@ -395,6 +395,7 @@ public:
|
|||
NS_IMETHOD ParseAttributeString(const nsString& aStr, nsIAtom*& aName, PRInt32& aNameSpaceID);
|
||||
NS_IMETHOD GetNameSpacePrefixFromId(PRInt32 aNameSpaceID, nsIAtom*& aPrefix);
|
||||
NS_IMETHOD SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, const nsString& aValue, PRBool aNotify);
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo *aNodeInfo, const nsString& aValue, PRBool aNotify);
|
||||
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, nsString& aResult) const;
|
||||
NS_IMETHOD UnsetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, PRBool aNotify);
|
||||
NS_IMETHOD GetAttributeNameAt(PRInt32 aIndex, PRInt32& aNameSpaceID,
|
||||
|
|
|
@ -40,6 +40,7 @@ class nsIContent;
|
|||
class nsISupportsArray;
|
||||
class nsIDOMRange;
|
||||
class nsISizeOfHandler;
|
||||
class nsINodeInfo;
|
||||
|
||||
// IID for the nsIContent interface
|
||||
#define NS_ICONTENT_IID \
|
||||
|
@ -136,6 +137,23 @@ public:
|
|||
const nsString& aValue,
|
||||
PRBool aNotify) = 0;
|
||||
|
||||
/**
|
||||
* Set attribute values. All attribute values are assumed to have a
|
||||
* canonical string representation that can be used for these
|
||||
* methods. The setAttribute method is assumed to perform a translation
|
||||
* of the canonical form into the underlying content specific
|
||||
* form.
|
||||
*
|
||||
* @param aNodeInfo the node info (name, prefix, namespace id) of the
|
||||
* attribute
|
||||
* @param aValue may legitimately be the empty string.
|
||||
*
|
||||
* @param aNotify specifies whether or not the document should be
|
||||
* notified of the attribute change.
|
||||
*/
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo* aNodeInfo, const nsString& aValue,
|
||||
PRBool aNotify) = 0;
|
||||
|
||||
/**
|
||||
* Get the current value of the attribute. This returns a form that is
|
||||
* suitable for passing back into setAttribute.
|
||||
|
|
|
@ -124,6 +124,10 @@ public:
|
|||
const nsString& aValue, PRBool aNotify) {
|
||||
return mInner.SetAttribute(aNameSpaceID, aAttribute, aValue, aNotify);
|
||||
}
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo* aNodeInfo,
|
||||
const nsString& aValue, PRBool aNotify) {
|
||||
return mInner.SetAttribute(aNodeInfo, aValue, aNotify);
|
||||
}
|
||||
NS_IMETHOD UnsetAttribute(PRInt32 aNameSpaceID, nsIAtom* aAttribute,
|
||||
PRBool aNotify) {
|
||||
return mInner.UnsetAttribute(aNameSpaceID, aAttribute, aNotify);
|
||||
|
|
|
@ -164,6 +164,10 @@ public:
|
|||
const nsString& aValue,
|
||||
PRBool aNotify)
|
||||
{ return NS_OK; }
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo* aNodeInfo,
|
||||
const nsString& aValue,
|
||||
PRBool aNotify)
|
||||
{ return NS_OK; }
|
||||
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName,
|
||||
nsString& aResult) const
|
||||
{ return NS_CONTENT_ATTR_NOT_THERE; }
|
||||
|
|
|
@ -173,6 +173,10 @@ struct nsGenericDOMDataNode {
|
|||
PRBool aNotify) {
|
||||
return NS_OK;
|
||||
}
|
||||
nsresult SetAttribute(nsINodeInfo *aNodeInfo, const nsString& aValue,
|
||||
PRBool aNotify) {
|
||||
return NS_OK;
|
||||
}
|
||||
nsresult UnsetAttribute(PRInt32 aNameSpaceID, nsIAtom* aAttribute, PRBool aNotify) {
|
||||
return NS_OK;
|
||||
}
|
||||
|
@ -490,6 +494,10 @@ struct nsGenericDOMDataNode {
|
|||
const nsString& aValue, PRBool aNotify) { \
|
||||
return _g.SetAttribute(aNameSpaceID, aAttribute, aValue, aNotify); \
|
||||
} \
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo* aNodeInfo, \
|
||||
const nsString& aValue, PRBool aNotify) { \
|
||||
return _g.SetAttribute(aNodeInfo, aValue, aNotify); \
|
||||
} \
|
||||
NS_IMETHOD UnsetAttribute(PRInt32 aNameSpaceID, nsIAtom* aAttribute, \
|
||||
PRBool aNotify) { \
|
||||
return _g.UnsetAttribute(aNameSpaceID, aAttribute, aNotify); \
|
||||
|
|
|
@ -2300,6 +2300,24 @@ nsGenericContainerElement::SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName,
|
|||
return rv;
|
||||
}
|
||||
|
||||
nsresult
|
||||
nsGenericContainerElement::SetAttribute(nsINodeInfo* aNodeInfo,
|
||||
const nsString& aValue,
|
||||
PRBool aNotify)
|
||||
{
|
||||
NS_ENSURE_ARG_POINTER(aNodeInfo);
|
||||
|
||||
nsCOMPtr<nsIAtom> atom;
|
||||
PRInt32 nsid;
|
||||
|
||||
aNodeInfo->GetNameAtom(*getter_AddRefs(atom));
|
||||
aNodeInfo->GetNamespaceID(nsid);
|
||||
|
||||
// We still rely on the old way of setting the attribute.
|
||||
|
||||
return SetAttribute(nsid, atom, aValue, aNotify);
|
||||
}
|
||||
|
||||
nsresult
|
||||
nsGenericContainerElement::GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName,
|
||||
nsString& aResult) const
|
||||
|
|
|
@ -312,6 +312,8 @@ public:
|
|||
nsresult SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName,
|
||||
const nsString& aValue,
|
||||
PRBool aNotify);
|
||||
nsresult SetAttribute(nsINodeInfo* aNodeInfo, const nsString& aValue,
|
||||
PRBool aNotify);
|
||||
nsresult GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName,
|
||||
nsString& aResult) const;
|
||||
nsresult UnsetAttribute(PRInt32 aNameSpaceID, nsIAtom* aAttribute,
|
||||
|
@ -555,6 +557,10 @@ public:
|
|||
const nsString& aValue, PRBool aNotify) { \
|
||||
return _g.SetAttribute(aNameSpaceID, aName, aValue, aNotify); \
|
||||
} \
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo* aNodeInfo, \
|
||||
const nsString& aValue, PRBool aNotify) { \
|
||||
return _g.SetAttribute(aNodeInfo, aValue, aNotify); \
|
||||
} \
|
||||
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, \
|
||||
nsString& aResult) const { \
|
||||
return _g.GetAttribute(aNameSpaceID, aName, aResult); \
|
||||
|
@ -670,6 +676,10 @@ public:
|
|||
const nsString& aValue, PRBool aNotify) { \
|
||||
return _g.SetAttribute(aNameSpaceID, aName, aValue, aNotify); \
|
||||
} \
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo* aNodeInfo, \
|
||||
const nsString& aValue, PRBool aNotify) { \
|
||||
return _g.SetAttribute(aNodeInfo, aValue, aNotify); \
|
||||
} \
|
||||
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, \
|
||||
nsString& aResult) const { \
|
||||
return _g.GetAttribute(aNameSpaceID, aName, aResult); \
|
||||
|
@ -785,6 +795,10 @@ public:
|
|||
const nsString& aValue, PRBool aNotify) { \
|
||||
return _g.SetAttribute(aNameSpaceID, aName, aValue, aNotify); \
|
||||
} \
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo* aNodeInfo, \
|
||||
const nsString& aValue, PRBool aNotify) { \
|
||||
return _g.SetAttribute(aNodeInfo, aValue, aNotify); \
|
||||
} \
|
||||
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, \
|
||||
nsString& aResult) const { \
|
||||
return _g.GetAttribute(aNameSpaceID, aName, aResult); \
|
||||
|
@ -898,6 +912,10 @@ public:
|
|||
const nsString& aValue, PRBool aNotify) { \
|
||||
return _g.SetAttribute(aNameSpaceID, aName, aValue, aNotify); \
|
||||
} \
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo* aNodeInfo, \
|
||||
const nsString& aValue, PRBool aNotify) { \
|
||||
return _g.SetAttribute(aNodeInfo, aValue, aNotify); \
|
||||
} \
|
||||
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, \
|
||||
nsString& aResult) const { \
|
||||
return _g.GetAttribute(aNameSpaceID, aName, aResult); \
|
||||
|
@ -1015,6 +1033,10 @@ public:
|
|||
const nsString& aValue, PRBool aNotify) { \
|
||||
return _g.SetAttribute(aNameSpaceID, aName, aValue, aNotify); \
|
||||
} \
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo* aNodeInfo, \
|
||||
const nsString& aValue, PRBool aNotify) { \
|
||||
return _g.SetAttribute(aNodeInfo, aValue, aNotify); \
|
||||
} \
|
||||
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, \
|
||||
nsString& aResult) const { \
|
||||
return _g.GetAttribute(aNameSpaceID, aName, aResult); \
|
||||
|
@ -1124,6 +1146,10 @@ public:
|
|||
const nsString& aValue, PRBool aNotify) { \
|
||||
return _g.SetAttribute(aNameSpaceID, aName, aValue, aNotify); \
|
||||
} \
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo* aNodeInfo, \
|
||||
const nsString& aValue, PRBool aNotify) { \
|
||||
return _g.SetAttribute(aNodeInfo, aValue, aNotify); \
|
||||
} \
|
||||
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, \
|
||||
nsString& aResult) const { \
|
||||
return _g.GetAttribute(aNameSpaceID, aName, aResult); \
|
||||
|
|
|
@ -127,6 +127,8 @@ public:
|
|||
|
||||
NS_IMETHOD SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aAttribute, const nsString& aValue,
|
||||
PRBool aNotify) { return NS_OK; }
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo *aNodeInfo, const nsString& aValue,
|
||||
PRBool aNotify) { return NS_OK; }
|
||||
NS_IMETHOD UnsetAttribute(PRInt32 aNameSpaceID, nsIAtom* aAttribute, PRBool aNotify) { return NS_OK; }
|
||||
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom *aAttribute, nsString &aResult) const {return NS_CONTENT_ATTR_NOT_THERE; }
|
||||
NS_IMETHOD GetAttributeNameAt(PRInt32 aIndex, PRInt32& aNameSpaceID, nsIAtom*& aName) const {
|
||||
|
|
|
@ -1304,6 +1304,24 @@ nsGenericHTMLElement::SetAttribute(PRInt32 aNameSpaceID,
|
|||
return result;
|
||||
}
|
||||
|
||||
nsresult
|
||||
nsGenericHTMLElement::SetAttribute(nsINodeInfo* aNodeInfo,
|
||||
const nsString& aValue,
|
||||
PRBool aNotify)
|
||||
{
|
||||
NS_ENSURE_ARG_POINTER(aNodeInfo);
|
||||
|
||||
nsCOMPtr<nsIAtom> atom;
|
||||
PRInt32 nsid;
|
||||
|
||||
aNodeInfo->GetNameAtom(*getter_AddRefs(atom));
|
||||
aNodeInfo->GetNamespaceID(nsid);
|
||||
|
||||
// We still rely on the old way of setting the attribute.
|
||||
|
||||
return SetAttribute(nsid, atom, aValue, aNotify);
|
||||
}
|
||||
|
||||
static PRInt32 GetStyleImpactFrom(const nsHTMLValue& aValue)
|
||||
{
|
||||
PRInt32 hint = NS_STYLE_HINT_NONE;
|
||||
|
@ -3414,6 +3432,24 @@ nsGenericHTMLContainerFormElement::SetAttribute(PRInt32 aNameSpaceID, nsIAtom* a
|
|||
return nsGenericHTMLElement::SetAttribute(aNameSpaceID, aName, aValue, aNotify);
|
||||
}
|
||||
|
||||
nsresult
|
||||
nsGenericHTMLContainerFormElement::SetAttribute(nsINodeInfo* aNodeInfo,
|
||||
const nsString& aValue,
|
||||
PRBool aNotify)
|
||||
{
|
||||
NS_ENSURE_ARG_POINTER(aNodeInfo);
|
||||
|
||||
nsCOMPtr<nsIAtom> atom;
|
||||
PRInt32 nsid;
|
||||
|
||||
aNodeInfo->GetNameAtom(*getter_AddRefs(atom));
|
||||
aNodeInfo->GetNamespaceID(nsid);
|
||||
|
||||
// We still rely on the old way of setting the attribute.
|
||||
|
||||
return SetAttribute(nsid, atom, aValue, aNotify);
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
|
||||
nsGenericHTMLLeafFormElement::nsGenericHTMLLeafFormElement()
|
||||
|
@ -3446,4 +3482,22 @@ nsGenericHTMLLeafFormElement::SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName,
|
|||
return nsGenericHTMLElement::SetAttribute(aNameSpaceID, aName, aValue, aNotify);
|
||||
}
|
||||
|
||||
nsresult
|
||||
nsGenericHTMLLeafFormElement::SetAttribute(nsINodeInfo* aNodeInfo,
|
||||
const nsString& aValue,
|
||||
PRBool aNotify)
|
||||
{
|
||||
NS_ENSURE_ARG_POINTER(aNodeInfo);
|
||||
|
||||
nsCOMPtr<nsIAtom> atom;
|
||||
PRInt32 nsid;
|
||||
|
||||
aNodeInfo->GetNameAtom(*getter_AddRefs(atom));
|
||||
aNodeInfo->GetNamespaceID(nsid);
|
||||
|
||||
// We still rely on the old way of setting the attribute.
|
||||
|
||||
return SetAttribute(nsid, atom, aValue, aNotify);
|
||||
}
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
|
|
|
@ -104,6 +104,7 @@ public:
|
|||
nsIAtom* aOffsetParentTag,
|
||||
nsIContent** aOffsetParent);
|
||||
|
||||
|
||||
// Implementation for nsIContent
|
||||
nsresult GetNameSpaceID(PRInt32& aNameSpaceID) const;
|
||||
nsresult SetDocument(nsIDocument* aDocument, PRBool aDeep);
|
||||
|
@ -114,6 +115,8 @@ public:
|
|||
nsIAtom*& aPrefix);
|
||||
nsresult SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, const nsString& aValue,
|
||||
PRBool aNotify);
|
||||
nsresult SetAttribute(nsINodeInfo* aNodeInfo, const nsString& aValue,
|
||||
PRBool aNotify);
|
||||
nsresult GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, nsString& aResult) const;
|
||||
nsresult UnsetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, PRBool aNotify);
|
||||
nsresult GetAttributeNameAt(PRInt32 aIndex,
|
||||
|
@ -460,6 +463,8 @@ public:
|
|||
nsresult SetForm(nsIForm* aForm);
|
||||
nsresult SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, const nsString& aValue,
|
||||
PRBool aNotify);
|
||||
nsresult SetAttribute(nsINodeInfo* aNodeInfo, const nsString& aValue,
|
||||
PRBool aNotify);
|
||||
nsresult SetAttribute(const nsString& aName, const nsString& aValue)
|
||||
{
|
||||
return nsGenericHTMLElement::SetAttribute(aName, aValue);
|
||||
|
@ -478,6 +483,8 @@ public:
|
|||
nsresult SetForm(nsIForm* aForm);
|
||||
nsresult SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, const nsString& aValue,
|
||||
PRBool aNotify);
|
||||
nsresult SetAttribute(nsINodeInfo* aNodeInfo, const nsString& aValue,
|
||||
PRBool aNotify);
|
||||
nsresult SetAttribute(const nsString& aName, const nsString& aValue)
|
||||
{
|
||||
return nsGenericHTMLElement::SetAttribute(aName, aValue);
|
||||
|
|
|
@ -125,6 +125,10 @@ public:
|
|||
const nsString& aValue, PRBool aNotify) {
|
||||
return mInner.SetAttribute(aNameSpaceID, aName, aValue, aNotify);
|
||||
}
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo* aNodeInfo,
|
||||
const nsString& aValue, PRBool aNotify) {
|
||||
return mInner.SetAttribute(aNodeInfo, aValue, aNotify);
|
||||
}
|
||||
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName,
|
||||
nsString& aResult) const {
|
||||
return mInner.GetAttribute(aNameSpaceID, aName, aResult);
|
||||
|
|
|
@ -122,6 +122,8 @@ public:
|
|||
}
|
||||
NS_IMETHOD SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName,
|
||||
const nsString& aValue, PRBool aNotify);
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo* aNodeInfo,
|
||||
const nsString& aValue, PRBool aNotify);
|
||||
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName,
|
||||
nsString& aResult) const {
|
||||
return mInner.GetAttribute(aNameSpaceID, aName, aResult);
|
||||
|
@ -426,6 +428,24 @@ nsHTMLUnknownElement::SetAttribute(PRInt32 aNameSpaceID,
|
|||
return result;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsHTMLUnknownElement::SetAttribute(nsINodeInfo *aNodeInfo,
|
||||
const nsString& aValue,
|
||||
PRBool aNotify)
|
||||
{
|
||||
NS_ENSURE_ARG_POINTER(aNodeInfo);
|
||||
|
||||
nsCOMPtr<nsIAtom> atom;
|
||||
PRInt32 nsid;
|
||||
|
||||
aNodeInfo->GetNameAtom(*getter_AddRefs(atom));
|
||||
aNodeInfo->GetNamespaceID(nsid);
|
||||
|
||||
// We still rely on the old way of setting the attribute.
|
||||
|
||||
return SetAttribute(nsid, atom, aValue, aNotify);
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsHTMLUnknownElement::HandleDOMEvent(nsIPresContext* aPresContext,
|
||||
nsEvent* aEvent,
|
||||
|
|
|
@ -62,6 +62,12 @@ public:
|
|||
return nsGenericContainerElement::SetAttribute(aNameSpaceID, aName,
|
||||
aValue, aNotify);
|
||||
}
|
||||
nsresult SetAttribute(nsINodeInfo *aNodeInfo,
|
||||
const nsString& aValue,
|
||||
PRBool aNotify)
|
||||
{
|
||||
return nsGenericContainerElement::SetAttribute(aNodeInfo, aValue, aNotify);
|
||||
}
|
||||
nsresult GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName,
|
||||
nsString& aResult) const
|
||||
{
|
||||
|
|
|
@ -240,6 +240,23 @@ nsXMLElement::SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName,
|
|||
return mInner.SetAttribute(aNameSpaceID, aName, aValue, aNotify);
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsXMLElement::SetAttribute(nsINodeInfo *aNodeInfo, const nsString& aValue,
|
||||
PRBool aNotify)
|
||||
{
|
||||
NS_ENSURE_ARG_POINTER(aNodeInfo);
|
||||
|
||||
nsCOMPtr<nsIAtom> atom;
|
||||
PRInt32 nsid;
|
||||
|
||||
aNodeInfo->GetNameAtom(*getter_AddRefs(atom));
|
||||
aNodeInfo->GetNamespaceID(nsid);
|
||||
|
||||
// We still rely on the old way of setting the attribute.
|
||||
|
||||
return SetAttribute(nsid, atom, aValue, aNotify);
|
||||
}
|
||||
|
||||
static nsresult WebShellToPresContext(nsIWebShell *aShell, nsIPresContext **aPresContext)
|
||||
{
|
||||
*aPresContext = nsnull;
|
||||
|
|
|
@ -118,6 +118,8 @@ public:
|
|||
}
|
||||
NS_IMETHOD SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, const nsString& aValue,
|
||||
PRBool aNotify);
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo *aNodeInfo, const nsString& aValue,
|
||||
PRBool aNotify);
|
||||
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName,
|
||||
nsString& aResult) const {
|
||||
return mInner.GetAttribute(aNameSpaceID, aName, aResult);
|
||||
|
|
|
@ -2867,6 +2867,24 @@ nsXULElement::SetAttribute(PRInt32 aNameSpaceID,
|
|||
return rv;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsXULElement::SetAttribute(nsINodeInfo* aNodeInfo,
|
||||
const nsString& aValue,
|
||||
PRBool aNotify)
|
||||
{
|
||||
NS_ENSURE_ARG_POINTER(aNodeInfo);
|
||||
|
||||
nsCOMPtr<nsIAtom> atom;
|
||||
PRInt32 nsid;
|
||||
|
||||
aNodeInfo->GetNameAtom(*getter_AddRefs(atom));
|
||||
aNodeInfo->GetNamespaceID(nsid);
|
||||
|
||||
// We still rely on the old way of setting the attribute.
|
||||
|
||||
return SetAttribute(nsid, atom, aValue, aNotify);
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
nsXULElement::GetAttribute(PRInt32 aNameSpaceID,
|
||||
nsIAtom* aName,
|
||||
|
|
|
@ -395,6 +395,7 @@ public:
|
|||
NS_IMETHOD ParseAttributeString(const nsString& aStr, nsIAtom*& aName, PRInt32& aNameSpaceID);
|
||||
NS_IMETHOD GetNameSpacePrefixFromId(PRInt32 aNameSpaceID, nsIAtom*& aPrefix);
|
||||
NS_IMETHOD SetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, const nsString& aValue, PRBool aNotify);
|
||||
NS_IMETHOD SetAttribute(nsINodeInfo *aNodeInfo, const nsString& aValue, PRBool aNotify);
|
||||
NS_IMETHOD GetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, nsString& aResult) const;
|
||||
NS_IMETHOD UnsetAttribute(PRInt32 aNameSpaceID, nsIAtom* aName, PRBool aNotify);
|
||||
NS_IMETHOD GetAttributeNameAt(PRInt32 aIndex, PRInt32& aNameSpaceID,
|
||||
|
|
Загрузка…
Ссылка в новой задаче