Bug 585616 - Merge nsIDOMNSCSS2Properties and nsIDOMSVGCSS2Properties into nsIDOMCSS2Properties. r=bz

This commit is contained in:
Craig Topper
2010-08-05 22:32:01 -07:00
parent 3ab9ee3f1d
commit f6d3681e36
10 changed files with 365 additions and 473 deletions

View File

@@ -311,7 +311,7 @@
#include "nsIDOMHTMLAudioElement.h"
#include "nsIDOMProgressEvent.h"
#include "nsIDOMNSUIEvent.h"
#include "nsIDOMNSCSS2Properties.h"
#include "nsIDOMCSS2Properties.h"
#include "nsIDOMCSSCharsetRule.h"
#include "nsIDOMCSSImportRule.h"
#include "nsIDOMCSSMediaRule.h"
@@ -2774,16 +2774,12 @@ nsDOMClassInfo::Init()
DOM_CLASSINFO_MAP_BEGIN(CSSStyleDeclaration, nsIDOMCSSStyleDeclaration)
DOM_CLASSINFO_MAP_ENTRY(nsIDOMCSSStyleDeclaration)
DOM_CLASSINFO_MAP_ENTRY(nsIDOMCSS2Properties)
DOM_CLASSINFO_MAP_ENTRY(nsIDOMSVGCSS2Properties)
DOM_CLASSINFO_MAP_ENTRY(nsIDOMNSCSS2Properties)
DOM_CLASSINFO_MAP_END
DOM_CLASSINFO_MAP_BEGIN_NO_CLASS_IF(ComputedCSSStyleDeclaration,
nsIDOMCSSStyleDeclaration)
DOM_CLASSINFO_MAP_ENTRY(nsIDOMCSSStyleDeclaration)
DOM_CLASSINFO_MAP_ENTRY(nsIDOMCSS2Properties)
DOM_CLASSINFO_MAP_ENTRY(nsIDOMSVGCSS2Properties)
DOM_CLASSINFO_MAP_ENTRY(nsIDOMNSCSS2Properties)
DOM_CLASSINFO_MAP_END
DOM_CLASSINFO_MAP_BEGIN_NO_CLASS_IF(ROCSSPrimitiveValue,

View File

@@ -69,10 +69,8 @@ XPIDLSRCS = \
nsIDOMCSSUnknownRule.idl \
nsIDOMCounter.idl \
nsIDOMDocumentCSS.idl \
nsIDOMNSCSS2Properties.idl \
nsIDOMRGBColor.idl \
nsIDOMRect.idl \
nsIDOMSVGCSS2Properties.idl \
nsIDOMViewCSS.idl \
nsIDOMNSRGBAColor.idl \
$(NULL)

View File

@@ -22,6 +22,8 @@
* Contributor(s):
* Vidur Apparao <vidur@netscape.com> (original author)
* Johnny Stenback <jst@netscape.com>
* Jonathon Jongsma <jonathon.jongsma@collabora.co.uk>, Collabora Ltd.
* Robert Longson <longsonr@gmail.com>
*
* Alternatively, the contents of this file may be used under the terms of
* either of the GNU General Public License Version 2 or later (the "GPL"),
@@ -46,12 +48,9 @@
*
* For more information on this interface please see
* http://www.w3.org/TR/DOM-Level-2-Style
*
* This interface matches what is specified in the DOM Level 2
* specification; new properties are added to nsIDOMNSCSS2Properties.
*/
[scriptable, uuid(529b987a-cb21-4d58-99d7-9586e7662801)]
[scriptable, uuid(c8db3d5b-8e11-4219-84ea-d72b565ec738)]
interface nsIDOMCSS2Properties : nsISupports
{
attribute DOMString azimuth;
@@ -416,4 +415,346 @@ interface nsIDOMCSS2Properties : nsISupports
attribute DOMString zIndex;
// raises(DOMException) on setting
/* SVG CSS properties */
attribute DOMString clipPath;
// raises(DOMException) on setting
attribute DOMString clipRule;
// raises(DOMException) on setting
attribute DOMString colorInterpolation;
// raises(DOMException) on setting
attribute DOMString colorInterpolationFilters;
// raises(DOMException) on setting
attribute DOMString dominantBaseline;
// raises(DOMException) on setting
attribute DOMString fill;
// raises(DOMException) on setting
attribute DOMString fillOpacity;
// raises(DOMException) on setting
attribute DOMString fillRule;
// raises(DOMException) on setting
attribute DOMString filter;
// raises(DOMException) on setting
attribute DOMString floodColor;
// raises(DOMException) on setting
attribute DOMString floodOpacity;
// raises(DOMException) on setting
attribute DOMString imageRendering;
// raises(DOMException) on setting
attribute DOMString lightingColor;
// raises(DOMException) on setting
attribute DOMString marker;
// raises(DOMException) on setting
attribute DOMString markerEnd;
// raises(DOMException) on setting
attribute DOMString markerMid;
// raises(DOMException) on setting
attribute DOMString markerStart;
// raises(DOMException) on setting
attribute DOMString mask;
// raises(DOMException) on setting
attribute DOMString shapeRendering;
// raises(DOMException) on setting
attribute DOMString stopColor;
// raises(DOMException) on setting
attribute DOMString stopOpacity;
// raises(DOMException) on setting
attribute DOMString stroke;
// raises(DOMException) on setting
attribute DOMString strokeDasharray;
// raises(DOMException) on setting
attribute DOMString strokeDashoffset;
// raises(DOMException) on setting
attribute DOMString strokeLinecap;
// raises(DOMException) on setting
attribute DOMString strokeLinejoin;
// raises(DOMException) on setting
attribute DOMString strokeMiterlimit;
// raises(DOMException) on setting
attribute DOMString strokeOpacity;
// raises(DOMException) on setting
attribute DOMString strokeWidth;
// raises(DOMException) on setting
attribute DOMString textAnchor;
// raises(DOMException) on setting
attribute DOMString textRendering;
// raises(DOMException) on setting
/* Non-DOM 2 extensions */
/* Mozilla extension CSS properties */
attribute DOMString MozAppearance;
// raises(DOMException) on setting
attribute DOMString backgroundClip;
// raises(DOMException) on setting
attribute DOMString MozBackgroundInlinePolicy;
// raises(DOMException) on setting
attribute DOMString backgroundOrigin;
// raises(DOMException) on setting
attribute DOMString MozBinding;
// raises(DOMException) on setting
attribute DOMString MozBorderBottomColors;
// raises(DOMException) on setting
attribute DOMString MozBorderLeftColors;
// raises(DOMException) on setting
attribute DOMString MozBorderRightColors;
// raises(DOMException) on setting
attribute DOMString MozBorderTopColors;
// raises(DOMException) on setting
attribute DOMString MozBorderRadius;
// raises(DOMException) on setting
attribute DOMString MozBorderRadiusTopleft;
// raises(DOMException) on setting
attribute DOMString MozBorderRadiusTopright;
// raises(DOMException) on setting
attribute DOMString MozBorderRadiusBottomleft;
// raises(DOMException) on setting
attribute DOMString MozBorderRadiusBottomright;
// raises(DOMException) on setting
attribute DOMString MozBoxAlign;
// raises(DOMException) on setting
attribute DOMString MozBoxDirection;
// raises(DOMException) on setting
attribute DOMString MozBoxFlex;
// raises(DOMException) on setting
attribute DOMString MozBoxOrient;
// raises(DOMException) on setting
attribute DOMString MozBoxOrdinalGroup;
// raises(DOMException) on setting
attribute DOMString MozBoxPack;
// raises(DOMException) on setting
attribute DOMString MozBoxSizing;
// raises(DOMException) on setting
attribute DOMString MozColumnCount;
// raises(DOMException) on setting
attribute DOMString MozColumnWidth;
// raises(DOMException) on setting
attribute DOMString MozColumnGap;
// raises(DOMException) on setting
attribute DOMString MozFloatEdge;
// raises(DOMException) on setting
attribute DOMString MozFontFeatureSettings;
// raises(DOMException) on setting
attribute DOMString MozFontLanguageOverride;
// raises(DOMException) on setting
attribute DOMString MozForceBrokenImageIcon;
// raises(DOMException) on setting
attribute DOMString MozImageRegion;
// raises(DOMException) on setting
attribute DOMString MozMarginEnd;
// raises(DOMException) on setting
attribute DOMString MozMarginStart;
// raises(DOMException) on setting
attribute DOMString MozOpacity;
// raises(DOMException) on setting
attribute DOMString MozOutline;
// raises(DOMException) on setting
attribute DOMString MozOutlineColor;
// raises(DOMException) on setting
attribute DOMString MozOutlineRadius;
// raises(DOMException) on setting
attribute DOMString MozOutlineRadiusTopleft;
// raises(DOMException) on setting
attribute DOMString MozOutlineRadiusTopright;
// raises(DOMException) on setting
attribute DOMString MozOutlineRadiusBottomleft;
// raises(DOMException) on setting
attribute DOMString MozOutlineRadiusBottomright;
// raises(DOMException) on setting
attribute DOMString MozOutlineStyle;
// raises(DOMException) on setting
attribute DOMString MozOutlineWidth;
// raises(DOMException) on setting
attribute DOMString MozOutlineOffset;
// raises(DOMException) on setting
attribute DOMString MozPaddingEnd;
// raises(DOMException) on setting
attribute DOMString MozPaddingStart;
// raises(DOMException) on setting
attribute DOMString MozUserFocus;
// raises(DOMException) on setting
attribute DOMString MozUserInput;
// raises(DOMException) on setting
attribute DOMString MozUserModify;
// raises(DOMException) on setting
attribute DOMString MozUserSelect;
// raises(DOMException) on setting
/* CSS3 properties */
attribute DOMString opacity;
// raises(DOMException) on setting
attribute DOMString outlineOffset;
// raises(DOMException) on setting
/* Mozilla extensions */
attribute DOMString overflowX;
// raises(DOMException) on setting
attribute DOMString overflowY;
// raises(DOMException) on setting
attribute DOMString imeMode;
// raises(DOMException) on setting
attribute DOMString MozBorderEnd;
// raises(DOMException) on setting
attribute DOMString MozBorderEndColor;
// raises(DOMException) on setting
attribute DOMString MozBorderEndStyle;
// raises(DOMException) on setting
attribute DOMString MozBorderEndWidth;
// raises(DOMException) on setting
attribute DOMString MozBorderStart;
// raises(DOMException) on setting
attribute DOMString MozBorderStartColor;
// raises(DOMException) on setting
attribute DOMString MozBorderStartStyle;
// raises(DOMException) on setting
attribute DOMString MozBorderStartWidth;
// raises(DOMException) on setting
attribute DOMString MozStackSizing;
// raises(DOMException) on setting
attribute DOMString MozBoxShadow;
// raises(DOMException) on setting
attribute DOMString MozBorderImage;
// raises(DOMException) on setting
attribute DOMString MozColumnRule;
// raises(DOMException) on setting
attribute DOMString MozColumnRuleWidth;
// raises(DOMException) on setting
attribute DOMString MozColumnRuleStyle;
// raises(DOMException) on setting
attribute DOMString MozColumnRuleColor;
// raises(DOMException) on setting
attribute DOMString wordWrap;
// raises(DOMException) on setting
attribute DOMString MozTransform;
// raises(DOMException) on setting
attribute DOMString MozTransformOrigin;
// raises(DOMException) on setting
attribute DOMString MozWindowShadow;
// raises(DOMException) on setting
attribute DOMString backgroundSize;
// raises(DOMException) on setting
attribute DOMString MozTransitionProperty;
// raises(DOMException) on setting
attribute DOMString MozTransitionDuration;
// raises(DOMException) on setting
attribute DOMString MozTransitionDelay;
// raises(DOMException) on setting
attribute DOMString MozTransitionTimingFunction;
// raises(DOMException) on setting
attribute DOMString MozTransition;
// raises(DOMException) on setting
attribute DOMString pointerEvents;
// raises(DOMException) on setting
attribute DOMString MozTabSize;
// raises(DOMException) on setting
attribute DOMString resize;
// raises(DOMException) on setting
};

View File

@@ -1,293 +0,0 @@
/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* ***** BEGIN LICENSE BLOCK *****
* Version: MPL 1.1/GPL 2.0/LGPL 2.1
*
* The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the
* License.
*
* The Original Code is mozilla.org code.
*
* The Initial Developer of the Original Code is
* Netscape Communications Corporation.
* Portions created by the Initial Developer are Copyright (C) 2000
* the Initial Developer. All Rights Reserved.
*
* Contributor(s):
* Vidur Apparao <vidur@netscape.com> (original author)
* Johnny Stenback <jst@netscape.com>
* Jonathon Jongsma <jonathon.jongsma@collabora.co.uk>, Collabora Ltd.
*
* Alternatively, the contents of this file may be used under the terms of
* either of the GNU General Public License Version 2 or later (the "GPL"),
* or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
* in which case the provisions of the GPL or the LGPL are applicable instead
* of those above. If you wish to allow use of your version of this file only
* under the terms of either the GPL or the LGPL, and not to allow others to
* use your version of this file under the terms of the MPL, indicate your
* decision by deleting the provisions above and replace them with the notice
* and other provisions required by the GPL or the LGPL. If you do not delete
* the provisions above, a recipient may use your version of this file under
* the terms of any one of the MPL, the GPL or the LGPL.
*
* ***** END LICENSE BLOCK ***** */
#include "nsIDOMSVGCSS2Properties.idl"
[scriptable, uuid(C8FA5710-8E47-4E76-9EBD-87E2ACF4F46C)]
interface nsIDOMNSCSS2Properties : nsIDOMSVGCSS2Properties
{
/* Non-DOM 2 extensions */
/* Mozilla extension CSS properties */
attribute DOMString MozAppearance;
// raises(DOMException) on setting
attribute DOMString backgroundClip;
// raises(DOMException) on setting
attribute DOMString MozBackgroundInlinePolicy;
// raises(DOMException) on setting
attribute DOMString backgroundOrigin;
// raises(DOMException) on setting
attribute DOMString MozBinding;
// raises(DOMException) on setting
attribute DOMString MozBorderBottomColors;
// raises(DOMException) on setting
attribute DOMString MozBorderLeftColors;
// raises(DOMException) on setting
attribute DOMString MozBorderRightColors;
// raises(DOMException) on setting
attribute DOMString MozBorderTopColors;
// raises(DOMException) on setting
attribute DOMString MozBorderRadius;
// raises(DOMException) on setting
attribute DOMString MozBorderRadiusTopleft;
// raises(DOMException) on setting
attribute DOMString MozBorderRadiusTopright;
// raises(DOMException) on setting
attribute DOMString MozBorderRadiusBottomleft;
// raises(DOMException) on setting
attribute DOMString MozBorderRadiusBottomright;
// raises(DOMException) on setting
attribute DOMString MozBoxAlign;
// raises(DOMException) on setting
attribute DOMString MozBoxDirection;
// raises(DOMException) on setting
attribute DOMString MozBoxFlex;
// raises(DOMException) on setting
attribute DOMString MozBoxOrient;
// raises(DOMException) on setting
attribute DOMString MozBoxOrdinalGroup;
// raises(DOMException) on setting
attribute DOMString MozBoxPack;
// raises(DOMException) on setting
attribute DOMString MozBoxSizing;
// raises(DOMException) on setting
attribute DOMString MozColumnCount;
// raises(DOMException) on setting
attribute DOMString MozColumnWidth;
// raises(DOMException) on setting
attribute DOMString MozColumnGap;
// raises(DOMException) on setting
attribute DOMString MozFloatEdge;
// raises(DOMException) on setting
attribute DOMString MozFontFeatureSettings;
// raises(DOMException) on setting
attribute DOMString MozFontLanguageOverride;
// raises(DOMException) on setting
attribute DOMString MozForceBrokenImageIcon;
// raises(DOMException) on setting
attribute DOMString MozImageRegion;
// raises(DOMException) on setting
attribute DOMString MozMarginEnd;
// raises(DOMException) on setting
attribute DOMString MozMarginStart;
// raises(DOMException) on setting
attribute DOMString MozOpacity;
// raises(DOMException) on setting
attribute DOMString MozOutline;
// raises(DOMException) on setting
attribute DOMString MozOutlineColor;
// raises(DOMException) on setting
attribute DOMString MozOutlineRadius;
// raises(DOMException) on setting
attribute DOMString MozOutlineRadiusTopleft;
// raises(DOMException) on setting
attribute DOMString MozOutlineRadiusTopright;
// raises(DOMException) on setting
attribute DOMString MozOutlineRadiusBottomleft;
// raises(DOMException) on setting
attribute DOMString MozOutlineRadiusBottomright;
// raises(DOMException) on setting
attribute DOMString MozOutlineStyle;
// raises(DOMException) on setting
attribute DOMString MozOutlineWidth;
// raises(DOMException) on setting
attribute DOMString MozOutlineOffset;
// raises(DOMException) on setting
attribute DOMString MozPaddingEnd;
// raises(DOMException) on setting
attribute DOMString MozPaddingStart;
// raises(DOMException) on setting
attribute DOMString MozUserFocus;
// raises(DOMException) on setting
attribute DOMString MozUserInput;
// raises(DOMException) on setting
attribute DOMString MozUserModify;
// raises(DOMException) on setting
attribute DOMString MozUserSelect;
// raises(DOMException) on setting
/* CSS3 properties */
attribute DOMString opacity;
// raises(DOMException) on setting
attribute DOMString outlineOffset;
// raises(DOMException) on setting
/* Mozilla extensions */
attribute DOMString overflowX;
// raises(DOMException) on setting
attribute DOMString overflowY;
// raises(DOMException) on setting
attribute DOMString imeMode;
// raises(DOMException) on setting
attribute DOMString MozBorderEnd;
// raises(DOMException) on setting
attribute DOMString MozBorderEndColor;
// raises(DOMException) on setting
attribute DOMString MozBorderEndStyle;
// raises(DOMException) on setting
attribute DOMString MozBorderEndWidth;
// raises(DOMException) on setting
attribute DOMString MozBorderStart;
// raises(DOMException) on setting
attribute DOMString MozBorderStartColor;
// raises(DOMException) on setting
attribute DOMString MozBorderStartStyle;
// raises(DOMException) on setting
attribute DOMString MozBorderStartWidth;
// raises(DOMException) on setting
attribute DOMString MozStackSizing;
// raises(DOMException) on setting
attribute DOMString MozBoxShadow;
// raises(DOMException) on setting
attribute DOMString MozBorderImage;
// raises(DOMException) on setting
attribute DOMString MozColumnRule;
// raises(DOMException) on setting
attribute DOMString MozColumnRuleWidth;
// raises(DOMException) on setting
attribute DOMString MozColumnRuleStyle;
// raises(DOMException) on setting
attribute DOMString MozColumnRuleColor;
// raises(DOMException) on setting
attribute DOMString wordWrap;
// raises(DOMException) on setting
attribute DOMString MozTransform;
// raises(DOMException) on setting
attribute DOMString MozTransformOrigin;
// raises(DOMException) on setting
attribute DOMString MozWindowShadow;
// raises(DOMException) on setting
attribute DOMString backgroundSize;
// raises(DOMException) on setting
attribute DOMString MozTransitionProperty;
// raises(DOMException) on setting
attribute DOMString MozTransitionDuration;
// raises(DOMException) on setting
attribute DOMString MozTransitionDelay;
// raises(DOMException) on setting
attribute DOMString MozTransitionTimingFunction;
// raises(DOMException) on setting
attribute DOMString MozTransition;
// raises(DOMException) on setting
attribute DOMString pointerEvents;
// raises(DOMException) on setting
attribute DOMString MozTabSize;
// raises(DOMException) on setting
attribute DOMString resize;
// raises(DOMException) on setting
};

View File

@@ -1,136 +0,0 @@
/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* ***** BEGIN LICENSE BLOCK *****
* Version: MPL 1.1/GPL 2.0/LGPL 2.1
*
* The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the
* License.
*
* The Original Code is mozilla.org code.
*
* The Initial Developer of the Original Code is Takeshi Kurosawa
* Portions created by the Initial Developer are Copyright (C) 2008
* the Initial Developer. All Rights Reserved.
*
* Contributor(s):
* Robert Longson <longsonr@gmail.com>
*
* Alternatively, the contents of this file may be used under the terms of
* either of the GNU General Public License Version 2 or later (the "GPL"),
* or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
* in which case the provisions of the GPL or the LGPL are applicable instead
* of those above. If you wish to allow use of your version of this file only
* under the terms of either the GPL or the LGPL, and not to allow others to
* use your version of this file under the terms of the MPL, indicate your
* decision by deleting the provisions above and replace them with the notice
* and other provisions required by the GPL or the LGPL. If you do not delete
* the provisions above, a recipient may use your version of this file under
* the terms of any one of the MPL, the GPL or the LGPL.
*
* ***** END LICENSE BLOCK ***** */
#include "nsIDOMCSS2Properties.idl"
[scriptable, uuid(b555e226-a387-4953-b2bc-c77296d146ec)]
interface nsIDOMSVGCSS2Properties : nsIDOMCSS2Properties
{
/* SVG CSS properties */
attribute DOMString clipPath;
// raises(DOMException) on setting
attribute DOMString clipRule;
// raises(DOMException) on setting
attribute DOMString colorInterpolation;
// raises(DOMException) on setting
attribute DOMString colorInterpolationFilters;
// raises(DOMException) on setting
attribute DOMString dominantBaseline;
// raises(DOMException) on setting
attribute DOMString fill;
// raises(DOMException) on setting
attribute DOMString fillOpacity;
// raises(DOMException) on setting
attribute DOMString fillRule;
// raises(DOMException) on setting
attribute DOMString filter;
// raises(DOMException) on setting
attribute DOMString floodColor;
// raises(DOMException) on setting
attribute DOMString floodOpacity;
// raises(DOMException) on setting
attribute DOMString imageRendering;
// raises(DOMException) on setting
attribute DOMString lightingColor;
// raises(DOMException) on setting
attribute DOMString marker;
// raises(DOMException) on setting
attribute DOMString markerEnd;
// raises(DOMException) on setting
attribute DOMString markerMid;
// raises(DOMException) on setting
attribute DOMString markerStart;
// raises(DOMException) on setting
attribute DOMString mask;
// raises(DOMException) on setting
attribute DOMString shapeRendering;
// raises(DOMException) on setting
attribute DOMString stopColor;
// raises(DOMException) on setting
attribute DOMString stopOpacity;
// raises(DOMException) on setting
attribute DOMString stroke;
// raises(DOMException) on setting
attribute DOMString strokeDasharray;
// raises(DOMException) on setting
attribute DOMString strokeDashoffset;
// raises(DOMException) on setting
attribute DOMString strokeLinecap;
// raises(DOMException) on setting
attribute DOMString strokeLinejoin;
// raises(DOMException) on setting
attribute DOMString strokeMiterlimit;
// raises(DOMException) on setting
attribute DOMString strokeOpacity;
// raises(DOMException) on setting
attribute DOMString strokeWidth;
// raises(DOMException) on setting
attribute DOMString textAnchor;
// raises(DOMException) on setting
attribute DOMString textRendering;
// raises(DOMException) on setting
};

View File

@@ -173,8 +173,6 @@ members = [
# dom/interfaces/css
'nsIDOMElementCSSInlineStyle.*',
'nsIDOMCSS2Properties.*',
'nsIDOMSVGCSS2Properties.*',
'nsIDOMNSCSS2Properties.*',
'nsIDOMRect.*',
'nsIDOMViewCSS.getComputedStyle',
'nsIDOMCSSStyleDeclaration.*',
@@ -548,16 +546,6 @@ nsIDOMStorage_Clear_customMethodCallCode = """
JS_ClearScope(cx, obj);
"""
CSS2Properties_ = {
'thisType': 'nsICSSDeclaration',
'additionalArguments': 'const nsCSSProperty prop',
'additionalArgumentValues': 'QS_CSS_PROP_%s',
'getter_code': ' nsString result;\n' +
' rv = self->GetPropertyValue(prop, result);',
'setter_code': ' rv = self->SetPropertyValue(prop, arg0);',
'canFail': True
}
CUSTOM_QS = {
'skipgen': True,
'traceable': False
@@ -675,9 +663,15 @@ customMethodCalls = {
'nsIDOMCanvasRenderingContext2D_StrokeStyle': { 'skipgen': True },
'nsIDOMCanvasRenderingContext2D_FillStyle': { 'skipgen': True },
'nsIDOMCanvasRenderingContext2D_FillStyle': { 'skipgen': True },
'nsIDOMCSS2Properties_': CSS2Properties_,
'nsIDOMSVGCSS2Properties_': CSS2Properties_,
'nsIDOMNSCSS2Properties_': CSS2Properties_,
'nsIDOMCSS2Properties_': {
'thisType': 'nsICSSDeclaration',
'additionalArguments': 'const nsCSSProperty prop',
'additionalArgumentValues': 'QS_CSS_PROP_%s',
'getter_code': ' nsString result;\n' +
' rv = self->GetPropertyValue(prop, result);',
'setter_code': ' rv = self->SetPropertyValue(prop, arg0);',
'canFail': True
},
'nsIDOMNSElement_': {
'thisType': 'nsGenericElement'
},

View File

@@ -448,8 +448,8 @@ to the style struct:<br>
<h3><a name="DOM">DOM</a></h3>
Users in scripts, or anywhere outside of layout/ or content/ may need to access
the new property. This is done using the CSS OM, specifically
<code>nsIDOMCSSStyleDeclaration</code>, <code>nsIDOMCSS2Properties</code>, and
<code>nsIDOMNSCSS2Properties</code>. By the magic of C++ pre-processing, the
<code>nsIDOMCSSStyleDeclaration</code> and <code>nsIDOMCSS2Properties</code>.
By the magic of C++ pre-processing, the
CSS2Properties interfaces will be implemented automatically when you
<a href="#CSSPropList">add your property</a> to <a href="http://lxr.mozilla.org/seamonkey/source/content/shared/public/nsCSSPropList.h">
nsCSSPropList.h</a>. Because of this, if you fail to add your property to the

View File

@@ -50,7 +50,7 @@
#include "nsDOMError.h"
#include "nsDOMString.h"
#include "nsPrintfCString.h"
#include "nsIDOMNSCSS2Properties.h"
#include "nsIDOMCSS2Properties.h"
#include "nsIDOMElement.h"
#include "nsIDOMCSSPrimitiveValue.h"
#include "nsStyleContext.h"
@@ -165,12 +165,10 @@ DOMCI_DATA(ComputedCSSStyleDeclaration, nsComputedDOMStyle)
// QueryInterface implementation for nsComputedDOMStyle
NS_INTERFACE_TABLE_HEAD(nsComputedDOMStyle)
NS_INTERFACE_TABLE5(nsComputedDOMStyle,
NS_INTERFACE_TABLE3(nsComputedDOMStyle,
nsICSSDeclaration,
nsIDOMCSSStyleDeclaration,
nsIDOMCSS2Properties,
nsIDOMSVGCSS2Properties,
nsIDOMNSCSS2Properties)
nsIDOMCSS2Properties)
NS_INTERFACE_TABLE_TO_MAP_SEGUE
NS_WRAPPERCACHE_INTERFACE_MAP_ENTRY
NS_INTERFACE_MAP_ENTRIES_CYCLE_COLLECTION(nsComputedDOMStyle)

View File

@@ -62,12 +62,10 @@ nsDOMCSSDeclaration::~nsDOMCSSDeclaration()
DOMCI_DATA(CSSStyleDeclaration, nsDOMCSSDeclaration)
NS_INTERFACE_TABLE_HEAD(nsDOMCSSDeclaration)
NS_INTERFACE_TABLE5(nsDOMCSSDeclaration,
NS_INTERFACE_TABLE3(nsDOMCSSDeclaration,
nsICSSDeclaration,
nsIDOMCSSStyleDeclaration,
nsIDOMCSS2Properties,
nsIDOMSVGCSS2Properties,
nsIDOMNSCSS2Properties)
nsIDOMCSS2Properties)
NS_INTERFACE_TABLE_TO_MAP_SEGUE
NS_DOM_INTERFACE_MAP_ENTRY_CLASSINFO(CSSStyleDeclaration)
NS_INTERFACE_MAP_END
@@ -338,8 +336,6 @@ nsDOMCSSDeclaration::RemoveProperty(const nsCSSProperty aPropID)
}
// nsIDOMCSS2Properties
// nsIDOMSVGCSS2Properties
// nsIDOMNSCSS2Properties
#define CSS_PROP(name_, id_, method_, flags_, datastruct_, member_, type_, \
kwtable_, stylestruct_, stylestructoffset_, animtype_) \

View File

@@ -41,7 +41,7 @@
#define nsDOMCSSDeclaration_h___
#include "nsICSSDeclaration.h"
#include "nsIDOMNSCSS2Properties.h"
#include "nsIDOMCSS2Properties.h"
#include "nsCOMPtr.h"
class nsCSSParser;
@@ -57,7 +57,7 @@ class Loader;
}
class nsDOMCSSDeclaration : public nsICSSDeclaration,
public nsIDOMNSCSS2Properties
public nsIDOMCSS2Properties
{
public:
// Only implement QueryInterface; subclasses have the responsibility
@@ -84,11 +84,9 @@ public:
NS_IMETHOD Item(PRUint32 index, nsAString & _retval);
NS_IMETHOD GetParentRule(nsIDOMCSSRule * *aParentRule) = 0;
// We implement all of these as shims which forward to GetPropertyValue
// We implement this as a shim which forwards to GetPropertyValue
// and SetPropertyValue; subclasses need not.
NS_DECL_NSIDOMCSS2PROPERTIES
NS_DECL_NSIDOMSVGCSS2PROPERTIES
NS_DECL_NSIDOMNSCSS2PROPERTIES
protected:
// This method can return null regardless of the value of aAllocate;