sync to nsIStyledContent API change

git-svn-id: svn://10.0.0.236/trunk@32800 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
peterl%netscape.com
1999-05-26 23:46:45 +00:00
parent bb9287a4c6
commit 438c25b48d
9 changed files with 99 additions and 170 deletions

View File

@@ -922,25 +922,28 @@ nsGenericHTMLElement::HasClass(nsIAtom* aClass) const
}
nsresult
nsGenericHTMLElement::GetContentStyleRule(nsIStyleRule*& aResult)
nsGenericHTMLElement::GetContentStyleRules(nsISupportsArray* aRules)
{
nsresult result = NS_ERROR_NULL_POINTER;
nsIStyleRule* rule = nsnull;
if (nsnull != mAttributes) {
if (aRules && mAttributes) {
result = mAttributes->QueryInterface(kIStyleRuleIID, (void**)&rule);
}
aResult = rule;
if (rule) {
aRules->AppendElement(rule);
NS_RELEASE(rule);
}
return result;
}
nsresult
nsGenericHTMLElement::GetInlineStyleRule(nsIStyleRule*& aResult)
nsGenericHTMLElement::GetInlineStyleRules(nsISupportsArray* aRules)
{
nsresult result = NS_ERROR_NULL_POINTER;
nsIStyleRule* rule = nsnull;
if (nsnull != mAttributes) {
if (aRules && mAttributes) {
nsHTMLValue value;
if (NS_CONTENT_ATTR_HAS_VALUE == mAttributes->GetAttribute(nsHTMLAtoms::style, value)) {
if (eHTMLUnit_ISupports == value.GetUnit()) {
@@ -950,7 +953,10 @@ nsGenericHTMLElement::GetInlineStyleRule(nsIStyleRule*& aResult)
}
}
}
aResult = rule;
if (rule) {
aRules->AppendElement(rule);
NS_RELEASE(rule);
}
return result;
}

View File

@@ -110,8 +110,8 @@ public:
nsresult GetID(nsIAtom*& aResult) const;
nsresult GetClasses(nsVoidArray& aArray) const;
nsresult HasClass(nsIAtom* aClass) const;
nsresult GetContentStyleRule(nsIStyleRule*& aResult);
nsresult GetInlineStyleRule(nsIStyleRule*& aResult);
nsresult GetContentStyleRules(nsISupportsArray* aRules);
nsresult GetInlineStyleRules(nsISupportsArray* aRules);
nsresult GetBaseURL(nsIURL*& aBaseURL) const;
nsresult GetBaseTarget(nsString& aBaseTarget) const;
nsresult ToHTMLString(nsString& aResult) const;
@@ -434,11 +434,11 @@ public:
NS_IMETHOD HasClass(nsIAtom* aClass) const { \
return _g.HasClass(aClass); \
} \
NS_IMETHOD GetContentStyleRule(nsIStyleRule*& aResult) { \
return _g.GetContentStyleRule(aResult); \
NS_IMETHOD GetContentStyleRules(nsISupportsArray* aRules) { \
return _g.GetContentStyleRules(aRules); \
} \
NS_IMETHOD GetInlineStyleRule(nsIStyleRule*& aResult) { \
return _g.GetInlineStyleRule(aResult); \
NS_IMETHOD GetInlineStyleRules(nsISupportsArray* aRules) { \
return _g.GetInlineStyleRules(aRules); \
} \
NS_IMETHOD GetBaseURL(nsIURL*& aBaseURL) const { \
return _g.GetBaseURL(aBaseURL); \
@@ -484,8 +484,8 @@ public:
NS_IMETHOD HasClass(nsIAtom* aClass) const { \
return _g.HasClass(aClass); \
} \
NS_IMETHOD GetContentStyleRule(nsIStyleRule*& aResult); \
NS_IMETHOD GetInlineStyleRule(nsIStyleRule*& aResult); \
NS_IMETHOD GetContentStyleRules(nsISupportsArray* aRules); \
NS_IMETHOD GetInlineStyleRules(nsISupportsArray* aRules); \
NS_IMETHOD GetBaseURL(nsIURL*& aBaseURL) const { \
return _g.GetBaseURL(aBaseURL); \
} \

View File

@@ -37,6 +37,7 @@
#include "nsIWebShell.h"
#include "nsIHTMLAttributes.h"
#include "nsIHTMLContentContainer.h"
#include "nsISupportsArray.h"
static NS_DEFINE_IID(kIHTMLDocumentIID, NS_IHTMLDOCUMENT_IID);
static NS_DEFINE_IID(kIStyleRuleIID, NS_ISTYLE_RULE_IID);
@@ -279,7 +280,6 @@ BodyRule::MapStyleInto(nsIStyleContext* aContext, nsIPresContext* aPresContext)
if (nsnull != styleSpacing) {
nsHTMLValue value;
PRInt32 count = 0;
PRInt32 attrCount;
float p2t;
mPart->GetAttributeCount(attrCount);
@@ -298,7 +298,6 @@ BodyRule::MapStyleInto(nsIStyleContext* aContext, nsIPresContext* aPresContext)
nsStyleCoord widthCoord(bodyMarginWidth);
styleSpacing->mMargin.SetLeft(widthCoord);
styleSpacing->mMargin.SetRight(widthCoord);
count++;
}
mPart->GetHTMLAttribute(nsHTMLAtoms::marginheight, value);
@@ -311,14 +310,6 @@ BodyRule::MapStyleInto(nsIStyleContext* aContext, nsIPresContext* aPresContext)
nsStyleCoord heightCoord(bodyMarginHeight);
styleSpacing->mMargin.SetTop(heightCoord);
styleSpacing->mMargin.SetBottom(heightCoord);
count++;
}
if (count < attrCount) { // more to go...
nsMapAttributesFunc fontFunc;
nsMapAttributesFunc func;
mPart->GetAttributeMappingFunctions(fontFunc, func);
(*func)(mPart->mInner.mAttributes, aContext, aPresContext);
}
}
@@ -418,18 +409,6 @@ nsresult BodyFixupRule::QueryInterface(const nsIID& aIID,
NS_ADDREF_THIS();
return NS_OK;
}
if (aIID.Equals(kICSSStyleRuleIID)) {
nsIStyleRule* inlineRule = nsnull;
if (nsnull != mPart) {
mPart->mInner.GetInlineStyleRule(inlineRule);
}
if (nsnull != inlineRule) {
nsresult result = inlineRule->QueryInterface(kICSSStyleRuleIID, aInstancePtrResult);
NS_RELEASE(inlineRule);
return result;
}
return NS_NOINTERFACE;
}
if (aIID.Equals(kISupportsIID)) {
*aInstancePtrResult = (void*) ((nsISupports*)this);
NS_ADDREF_THIS();
@@ -477,16 +456,6 @@ BodyFixupRule::MapFontStyleInto(nsIStyleContext* aContext, nsIPresContext* aPres
NS_IMETHODIMP
BodyFixupRule::MapStyleInto(nsIStyleContext* aContext, nsIPresContext* aPresContext)
{
// Invoke style mapping of inline rule
nsIStyleRule* inlineRule = nsnull;
if (nsnull != mPart) {
mPart->mInner.GetInlineStyleRule(inlineRule);
if (nsnull != inlineRule) {
inlineRule->MapStyleInto(aContext, aPresContext);
NS_RELEASE(inlineRule);
}
}
// XXX do any other body processing here
const nsStyleColor* styleColor;
@@ -731,27 +700,6 @@ MapAttributesInto(nsIHTMLAttributes* aAttributes,
}
}
// marginwidth/marginheight
// XXX: see ua.css for related code in the BODY rule
float p2t;
aPresContext->GetScaledPixelsToTwips(&p2t);
nsStyleSpacing* spacing = (nsStyleSpacing*)
aContext->GetMutableStyleData(eStyleStruct_Spacing);
aAttributes->GetAttribute(nsHTMLAtoms::marginwidth, value);
if (eHTMLUnit_Pixel == value.GetUnit()) {
nscoord v = NSToCoordFloor(value.GetPixelValue() * p2t);
nsStyleCoord c(v);
spacing->mPadding.SetLeft(c);
spacing->mPadding.SetRight(c);
}
aAttributes->GetAttribute(nsHTMLAtoms::marginheight, value);
if (eHTMLUnit_Pixel == value.GetUnit()) {
nscoord v = NSToCoordFloor(value.GetPixelValue() * p2t);
nsStyleCoord c(v);
spacing->mPadding.SetTop(c);
spacing->mPadding.SetBottom(c);
}
}
nsGenericHTMLElement::MapCommonAttributesInto(aAttributes, aContext, aPresContext);
}
@@ -794,8 +742,10 @@ static nsIHTMLStyleSheet* GetAttrStyleSheet(nsIDocument* aDocument)
}
NS_IMETHODIMP
nsHTMLBodyElement::GetContentStyleRule(nsIStyleRule*& aResult)
nsHTMLBodyElement::GetContentStyleRules(nsISupportsArray* aRules)
{
mInner.GetContentStyleRules(aRules);
if (nsnull == mInner.mContentStyleRule) {
nsIHTMLStyleSheet* sheet = nsnull;
@@ -807,8 +757,9 @@ nsHTMLBodyElement::GetContentStyleRule(nsIStyleRule*& aResult)
NS_IF_RELEASE(sheet);
NS_IF_ADDREF(mInner.mContentStyleRule);
}
NS_IF_ADDREF(mInner.mContentStyleRule);
aResult = mInner.mContentStyleRule;
if (aRules && mInner.mContentStyleRule) {
aRules->AppendElement(mInner.mContentStyleRule);
}
return NS_OK;
}
@@ -828,8 +779,10 @@ static nsIHTMLCSSStyleSheet* GetInlineStyleSheet(nsIDocument* aDocument)
}
NS_IMETHODIMP
nsHTMLBodyElement::GetInlineStyleRule(nsIStyleRule*& aResult)
nsHTMLBodyElement::GetInlineStyleRules(nsISupportsArray* aRules)
{
mInner.GetInlineStyleRules(aRules);
if (nsnull == mInner.mInlineStyleRule) {
nsIHTMLCSSStyleSheet* sheet = nsnull;
@@ -841,8 +794,9 @@ nsHTMLBodyElement::GetInlineStyleRule(nsIStyleRule*& aResult)
NS_IF_RELEASE(sheet);
NS_IF_ADDREF(mInner.mInlineStyleRule);
}
NS_IF_ADDREF(mInner.mInlineStyleRule);
aResult = mInner.mInlineStyleRule;
if (aRules && mInner.mInlineStyleRule) {
aRules->AppendElement(mInner.mInlineStyleRule);
}
return NS_OK;
}

View File

@@ -215,8 +215,8 @@ public:
NS_IMETHOD GetClasses(nsVoidArray& aArray) const;
NS_IMETHOD HasClass(nsIAtom* aClass) const;
NS_IMETHOD GetContentStyleRule(nsIStyleRule*& aResult);
NS_IMETHOD GetInlineStyleRule(nsIStyleRule*& aResult);
NS_IMETHOD GetContentStyleRules(nsISupportsArray* aRules);
NS_IMETHOD GetInlineStyleRules(nsISupportsArray* aRules);
/** NRA ***
* Get a hint that tells the style system what to do when
@@ -2702,20 +2702,23 @@ RDFElementImpl::HasClass(nsIAtom* aClass) const
}
NS_IMETHODIMP
RDFElementImpl::GetContentStyleRule(nsIStyleRule*& aResult)
RDFElementImpl::GetContentStyleRules(nsISupportsArray* aRules)
{
aResult = nsnull;
return NS_OK;
}
NS_IMETHODIMP
RDFElementImpl::GetInlineStyleRule(nsIStyleRule*& aResult)
RDFElementImpl::GetInlineStyleRules(nsISupportsArray* aRules)
{
// Fetch the cached style rule from the attributes.
nsresult result = NS_ERROR_NULL_POINTER;
aResult = nsnull;
if (mAttributes != nsnull)
result = mAttributes->GetInlineStyleRule(aResult);
nsIStyleRule* rule = nsnull;
if (aRules && mAttributes)
result = mAttributes->GetInlineStyleRule(rule);
if (rule) {
aRules->AppendElement(rule);
NS_RELEASE(rule);
}
return result;
}

View File

@@ -922,25 +922,28 @@ nsGenericHTMLElement::HasClass(nsIAtom* aClass) const
}
nsresult
nsGenericHTMLElement::GetContentStyleRule(nsIStyleRule*& aResult)
nsGenericHTMLElement::GetContentStyleRules(nsISupportsArray* aRules)
{
nsresult result = NS_ERROR_NULL_POINTER;
nsIStyleRule* rule = nsnull;
if (nsnull != mAttributes) {
if (aRules && mAttributes) {
result = mAttributes->QueryInterface(kIStyleRuleIID, (void**)&rule);
}
aResult = rule;
if (rule) {
aRules->AppendElement(rule);
NS_RELEASE(rule);
}
return result;
}
nsresult
nsGenericHTMLElement::GetInlineStyleRule(nsIStyleRule*& aResult)
nsGenericHTMLElement::GetInlineStyleRules(nsISupportsArray* aRules)
{
nsresult result = NS_ERROR_NULL_POINTER;
nsIStyleRule* rule = nsnull;
if (nsnull != mAttributes) {
if (aRules && mAttributes) {
nsHTMLValue value;
if (NS_CONTENT_ATTR_HAS_VALUE == mAttributes->GetAttribute(nsHTMLAtoms::style, value)) {
if (eHTMLUnit_ISupports == value.GetUnit()) {
@@ -950,7 +953,10 @@ nsGenericHTMLElement::GetInlineStyleRule(nsIStyleRule*& aResult)
}
}
}
aResult = rule;
if (rule) {
aRules->AppendElement(rule);
NS_RELEASE(rule);
}
return result;
}

View File

@@ -110,8 +110,8 @@ public:
nsresult GetID(nsIAtom*& aResult) const;
nsresult GetClasses(nsVoidArray& aArray) const;
nsresult HasClass(nsIAtom* aClass) const;
nsresult GetContentStyleRule(nsIStyleRule*& aResult);
nsresult GetInlineStyleRule(nsIStyleRule*& aResult);
nsresult GetContentStyleRules(nsISupportsArray* aRules);
nsresult GetInlineStyleRules(nsISupportsArray* aRules);
nsresult GetBaseURL(nsIURL*& aBaseURL) const;
nsresult GetBaseTarget(nsString& aBaseTarget) const;
nsresult ToHTMLString(nsString& aResult) const;
@@ -434,11 +434,11 @@ public:
NS_IMETHOD HasClass(nsIAtom* aClass) const { \
return _g.HasClass(aClass); \
} \
NS_IMETHOD GetContentStyleRule(nsIStyleRule*& aResult) { \
return _g.GetContentStyleRule(aResult); \
NS_IMETHOD GetContentStyleRules(nsISupportsArray* aRules) { \
return _g.GetContentStyleRules(aRules); \
} \
NS_IMETHOD GetInlineStyleRule(nsIStyleRule*& aResult) { \
return _g.GetInlineStyleRule(aResult); \
NS_IMETHOD GetInlineStyleRules(nsISupportsArray* aRules) { \
return _g.GetInlineStyleRules(aRules); \
} \
NS_IMETHOD GetBaseURL(nsIURL*& aBaseURL) const { \
return _g.GetBaseURL(aBaseURL); \
@@ -484,8 +484,8 @@ public:
NS_IMETHOD HasClass(nsIAtom* aClass) const { \
return _g.HasClass(aClass); \
} \
NS_IMETHOD GetContentStyleRule(nsIStyleRule*& aResult); \
NS_IMETHOD GetInlineStyleRule(nsIStyleRule*& aResult); \
NS_IMETHOD GetContentStyleRules(nsISupportsArray* aRules); \
NS_IMETHOD GetInlineStyleRules(nsISupportsArray* aRules); \
NS_IMETHOD GetBaseURL(nsIURL*& aBaseURL) const { \
return _g.GetBaseURL(aBaseURL); \
} \

View File

@@ -37,6 +37,7 @@
#include "nsIWebShell.h"
#include "nsIHTMLAttributes.h"
#include "nsIHTMLContentContainer.h"
#include "nsISupportsArray.h"
static NS_DEFINE_IID(kIHTMLDocumentIID, NS_IHTMLDOCUMENT_IID);
static NS_DEFINE_IID(kIStyleRuleIID, NS_ISTYLE_RULE_IID);
@@ -279,7 +280,6 @@ BodyRule::MapStyleInto(nsIStyleContext* aContext, nsIPresContext* aPresContext)
if (nsnull != styleSpacing) {
nsHTMLValue value;
PRInt32 count = 0;
PRInt32 attrCount;
float p2t;
mPart->GetAttributeCount(attrCount);
@@ -298,7 +298,6 @@ BodyRule::MapStyleInto(nsIStyleContext* aContext, nsIPresContext* aPresContext)
nsStyleCoord widthCoord(bodyMarginWidth);
styleSpacing->mMargin.SetLeft(widthCoord);
styleSpacing->mMargin.SetRight(widthCoord);
count++;
}
mPart->GetHTMLAttribute(nsHTMLAtoms::marginheight, value);
@@ -311,14 +310,6 @@ BodyRule::MapStyleInto(nsIStyleContext* aContext, nsIPresContext* aPresContext)
nsStyleCoord heightCoord(bodyMarginHeight);
styleSpacing->mMargin.SetTop(heightCoord);
styleSpacing->mMargin.SetBottom(heightCoord);
count++;
}
if (count < attrCount) { // more to go...
nsMapAttributesFunc fontFunc;
nsMapAttributesFunc func;
mPart->GetAttributeMappingFunctions(fontFunc, func);
(*func)(mPart->mInner.mAttributes, aContext, aPresContext);
}
}
@@ -418,18 +409,6 @@ nsresult BodyFixupRule::QueryInterface(const nsIID& aIID,
NS_ADDREF_THIS();
return NS_OK;
}
if (aIID.Equals(kICSSStyleRuleIID)) {
nsIStyleRule* inlineRule = nsnull;
if (nsnull != mPart) {
mPart->mInner.GetInlineStyleRule(inlineRule);
}
if (nsnull != inlineRule) {
nsresult result = inlineRule->QueryInterface(kICSSStyleRuleIID, aInstancePtrResult);
NS_RELEASE(inlineRule);
return result;
}
return NS_NOINTERFACE;
}
if (aIID.Equals(kISupportsIID)) {
*aInstancePtrResult = (void*) ((nsISupports*)this);
NS_ADDREF_THIS();
@@ -477,16 +456,6 @@ BodyFixupRule::MapFontStyleInto(nsIStyleContext* aContext, nsIPresContext* aPres
NS_IMETHODIMP
BodyFixupRule::MapStyleInto(nsIStyleContext* aContext, nsIPresContext* aPresContext)
{
// Invoke style mapping of inline rule
nsIStyleRule* inlineRule = nsnull;
if (nsnull != mPart) {
mPart->mInner.GetInlineStyleRule(inlineRule);
if (nsnull != inlineRule) {
inlineRule->MapStyleInto(aContext, aPresContext);
NS_RELEASE(inlineRule);
}
}
// XXX do any other body processing here
const nsStyleColor* styleColor;
@@ -731,27 +700,6 @@ MapAttributesInto(nsIHTMLAttributes* aAttributes,
}
}
// marginwidth/marginheight
// XXX: see ua.css for related code in the BODY rule
float p2t;
aPresContext->GetScaledPixelsToTwips(&p2t);
nsStyleSpacing* spacing = (nsStyleSpacing*)
aContext->GetMutableStyleData(eStyleStruct_Spacing);
aAttributes->GetAttribute(nsHTMLAtoms::marginwidth, value);
if (eHTMLUnit_Pixel == value.GetUnit()) {
nscoord v = NSToCoordFloor(value.GetPixelValue() * p2t);
nsStyleCoord c(v);
spacing->mPadding.SetLeft(c);
spacing->mPadding.SetRight(c);
}
aAttributes->GetAttribute(nsHTMLAtoms::marginheight, value);
if (eHTMLUnit_Pixel == value.GetUnit()) {
nscoord v = NSToCoordFloor(value.GetPixelValue() * p2t);
nsStyleCoord c(v);
spacing->mPadding.SetTop(c);
spacing->mPadding.SetBottom(c);
}
}
nsGenericHTMLElement::MapCommonAttributesInto(aAttributes, aContext, aPresContext);
}
@@ -794,8 +742,10 @@ static nsIHTMLStyleSheet* GetAttrStyleSheet(nsIDocument* aDocument)
}
NS_IMETHODIMP
nsHTMLBodyElement::GetContentStyleRule(nsIStyleRule*& aResult)
nsHTMLBodyElement::GetContentStyleRules(nsISupportsArray* aRules)
{
mInner.GetContentStyleRules(aRules);
if (nsnull == mInner.mContentStyleRule) {
nsIHTMLStyleSheet* sheet = nsnull;
@@ -807,8 +757,9 @@ nsHTMLBodyElement::GetContentStyleRule(nsIStyleRule*& aResult)
NS_IF_RELEASE(sheet);
NS_IF_ADDREF(mInner.mContentStyleRule);
}
NS_IF_ADDREF(mInner.mContentStyleRule);
aResult = mInner.mContentStyleRule;
if (aRules && mInner.mContentStyleRule) {
aRules->AppendElement(mInner.mContentStyleRule);
}
return NS_OK;
}
@@ -828,8 +779,10 @@ static nsIHTMLCSSStyleSheet* GetInlineStyleSheet(nsIDocument* aDocument)
}
NS_IMETHODIMP
nsHTMLBodyElement::GetInlineStyleRule(nsIStyleRule*& aResult)
nsHTMLBodyElement::GetInlineStyleRules(nsISupportsArray* aRules)
{
mInner.GetInlineStyleRules(aRules);
if (nsnull == mInner.mInlineStyleRule) {
nsIHTMLCSSStyleSheet* sheet = nsnull;
@@ -841,8 +794,9 @@ nsHTMLBodyElement::GetInlineStyleRule(nsIStyleRule*& aResult)
NS_IF_RELEASE(sheet);
NS_IF_ADDREF(mInner.mInlineStyleRule);
}
NS_IF_ADDREF(mInner.mInlineStyleRule);
aResult = mInner.mInlineStyleRule;
if (aRules && mInner.mInlineStyleRule) {
aRules->AppendElement(mInner.mInlineStyleRule);
}
return NS_OK;
}

View File

@@ -215,8 +215,8 @@ public:
NS_IMETHOD GetClasses(nsVoidArray& aArray) const;
NS_IMETHOD HasClass(nsIAtom* aClass) const;
NS_IMETHOD GetContentStyleRule(nsIStyleRule*& aResult);
NS_IMETHOD GetInlineStyleRule(nsIStyleRule*& aResult);
NS_IMETHOD GetContentStyleRules(nsISupportsArray* aRules);
NS_IMETHOD GetInlineStyleRules(nsISupportsArray* aRules);
/** NRA ***
* Get a hint that tells the style system what to do when
@@ -2702,20 +2702,23 @@ RDFElementImpl::HasClass(nsIAtom* aClass) const
}
NS_IMETHODIMP
RDFElementImpl::GetContentStyleRule(nsIStyleRule*& aResult)
RDFElementImpl::GetContentStyleRules(nsISupportsArray* aRules)
{
aResult = nsnull;
return NS_OK;
}
NS_IMETHODIMP
RDFElementImpl::GetInlineStyleRule(nsIStyleRule*& aResult)
RDFElementImpl::GetInlineStyleRules(nsISupportsArray* aRules)
{
// Fetch the cached style rule from the attributes.
nsresult result = NS_ERROR_NULL_POINTER;
aResult = nsnull;
if (mAttributes != nsnull)
result = mAttributes->GetInlineStyleRule(aResult);
nsIStyleRule* rule = nsnull;
if (aRules && mAttributes)
result = mAttributes->GetInlineStyleRule(rule);
if (rule) {
aRules->AppendElement(rule);
NS_RELEASE(rule);
}
return result;
}

View File

@@ -215,8 +215,8 @@ public:
NS_IMETHOD GetClasses(nsVoidArray& aArray) const;
NS_IMETHOD HasClass(nsIAtom* aClass) const;
NS_IMETHOD GetContentStyleRule(nsIStyleRule*& aResult);
NS_IMETHOD GetInlineStyleRule(nsIStyleRule*& aResult);
NS_IMETHOD GetContentStyleRules(nsISupportsArray* aRules);
NS_IMETHOD GetInlineStyleRules(nsISupportsArray* aRules);
/** NRA ***
* Get a hint that tells the style system what to do when
@@ -2702,20 +2702,23 @@ RDFElementImpl::HasClass(nsIAtom* aClass) const
}
NS_IMETHODIMP
RDFElementImpl::GetContentStyleRule(nsIStyleRule*& aResult)
RDFElementImpl::GetContentStyleRules(nsISupportsArray* aRules)
{
aResult = nsnull;
return NS_OK;
}
NS_IMETHODIMP
RDFElementImpl::GetInlineStyleRule(nsIStyleRule*& aResult)
RDFElementImpl::GetInlineStyleRules(nsISupportsArray* aRules)
{
// Fetch the cached style rule from the attributes.
nsresult result = NS_ERROR_NULL_POINTER;
aResult = nsnull;
if (mAttributes != nsnull)
result = mAttributes->GetInlineStyleRule(aResult);
nsIStyleRule* rule = nsnull;
if (aRules && mAttributes)
result = mAttributes->GetInlineStyleRule(rule);
if (rule) {
aRules->AppendElement(rule);
NS_RELEASE(rule);
}
return result;
}