mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 847120: Convert SVGFETurbulenceElement to WebIDL r=Ms2ger
This commit is contained in:
parent
385db58864
commit
b87453cbd7
@ -4,125 +4,138 @@
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
#include "mozilla/dom/SVGFETurbulenceElement.h"
|
||||
#include "mozilla/dom/SVGFETurbulenceElementBinding.h"
|
||||
#include "nsSVGFilterInstance.h"
|
||||
#include "nsSVGUtils.h"
|
||||
|
||||
NS_IMPL_NS_NEW_NAMESPACED_SVG_ELEMENT(FETurbulence)
|
||||
|
||||
namespace mozilla {
|
||||
namespace dom {
|
||||
|
||||
nsSVGElement::NumberInfo nsSVGFETurbulenceElement::sNumberInfo[1] =
|
||||
// Turbulence Types
|
||||
static const unsigned short SVG_TURBULENCE_TYPE_UNKNOWN = 0;
|
||||
static const unsigned short SVG_TURBULENCE_TYPE_FRACTALNOISE = 1;
|
||||
static const unsigned short SVG_TURBULENCE_TYPE_TURBULENCE = 2;
|
||||
|
||||
// Stitch Options
|
||||
static const unsigned short SVG_STITCHTYPE_UNKNOWN = 0;
|
||||
static const unsigned short SVG_STITCHTYPE_STITCH = 1;
|
||||
static const unsigned short SVG_STITCHTYPE_NOSTITCH = 2;
|
||||
|
||||
JSObject*
|
||||
SVGFETurbulenceElement::WrapNode(JSContext* aCx, JSObject* aScope)
|
||||
{
|
||||
return SVGFETurbulenceElementBinding::Wrap(aCx, aScope, this);
|
||||
}
|
||||
|
||||
nsSVGElement::NumberInfo SVGFETurbulenceElement::sNumberInfo[1] =
|
||||
{
|
||||
{ &nsGkAtoms::seed, 0, false }
|
||||
};
|
||||
|
||||
nsSVGElement::NumberPairInfo nsSVGFETurbulenceElement::sNumberPairInfo[1] =
|
||||
nsSVGElement::NumberPairInfo SVGFETurbulenceElement::sNumberPairInfo[1] =
|
||||
{
|
||||
{ &nsGkAtoms::baseFrequency, 0, 0 }
|
||||
};
|
||||
|
||||
nsSVGElement::IntegerInfo nsSVGFETurbulenceElement::sIntegerInfo[1] =
|
||||
nsSVGElement::IntegerInfo SVGFETurbulenceElement::sIntegerInfo[1] =
|
||||
{
|
||||
{ &nsGkAtoms::numOctaves, 1 }
|
||||
};
|
||||
|
||||
nsSVGEnumMapping nsSVGFETurbulenceElement::sTypeMap[] = {
|
||||
nsSVGEnumMapping SVGFETurbulenceElement::sTypeMap[] = {
|
||||
{&nsGkAtoms::fractalNoise,
|
||||
nsIDOMSVGFETurbulenceElement::SVG_TURBULENCE_TYPE_FRACTALNOISE},
|
||||
SVG_TURBULENCE_TYPE_FRACTALNOISE},
|
||||
{&nsGkAtoms::turbulence,
|
||||
nsIDOMSVGFETurbulenceElement::SVG_TURBULENCE_TYPE_TURBULENCE},
|
||||
SVG_TURBULENCE_TYPE_TURBULENCE},
|
||||
{nullptr, 0}
|
||||
};
|
||||
|
||||
nsSVGEnumMapping nsSVGFETurbulenceElement::sStitchTilesMap[] = {
|
||||
nsSVGEnumMapping SVGFETurbulenceElement::sStitchTilesMap[] = {
|
||||
{&nsGkAtoms::stitch,
|
||||
nsIDOMSVGFETurbulenceElement::SVG_STITCHTYPE_STITCH},
|
||||
SVG_STITCHTYPE_STITCH},
|
||||
{&nsGkAtoms::noStitch,
|
||||
nsIDOMSVGFETurbulenceElement::SVG_STITCHTYPE_NOSTITCH},
|
||||
SVG_STITCHTYPE_NOSTITCH},
|
||||
{nullptr, 0}
|
||||
};
|
||||
|
||||
nsSVGElement::EnumInfo nsSVGFETurbulenceElement::sEnumInfo[2] =
|
||||
nsSVGElement::EnumInfo SVGFETurbulenceElement::sEnumInfo[2] =
|
||||
{
|
||||
{ &nsGkAtoms::type,
|
||||
sTypeMap,
|
||||
nsIDOMSVGFETurbulenceElement::SVG_TURBULENCE_TYPE_TURBULENCE
|
||||
SVG_TURBULENCE_TYPE_TURBULENCE
|
||||
},
|
||||
{ &nsGkAtoms::stitchTiles,
|
||||
sStitchTilesMap,
|
||||
nsIDOMSVGFETurbulenceElement::SVG_STITCHTYPE_NOSTITCH
|
||||
SVG_STITCHTYPE_NOSTITCH
|
||||
}
|
||||
};
|
||||
|
||||
nsSVGElement::StringInfo nsSVGFETurbulenceElement::sStringInfo[1] =
|
||||
nsSVGElement::StringInfo SVGFETurbulenceElement::sStringInfo[1] =
|
||||
{
|
||||
{ &nsGkAtoms::result, kNameSpaceID_None, true }
|
||||
};
|
||||
|
||||
NS_IMPL_NS_NEW_SVG_ELEMENT(FETurbulence)
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// nsISupports methods
|
||||
|
||||
NS_IMPL_ADDREF_INHERITED(nsSVGFETurbulenceElement,nsSVGFETurbulenceElementBase)
|
||||
NS_IMPL_RELEASE_INHERITED(nsSVGFETurbulenceElement,nsSVGFETurbulenceElementBase)
|
||||
NS_IMPL_ADDREF_INHERITED(SVGFETurbulenceElement,SVGFETurbulenceElementBase)
|
||||
NS_IMPL_RELEASE_INHERITED(SVGFETurbulenceElement,SVGFETurbulenceElementBase)
|
||||
|
||||
DOMCI_NODE_DATA(SVGFETurbulenceElement, nsSVGFETurbulenceElement)
|
||||
|
||||
NS_INTERFACE_TABLE_HEAD(nsSVGFETurbulenceElement)
|
||||
NS_NODE_INTERFACE_TABLE5(nsSVGFETurbulenceElement, nsIDOMNode, nsIDOMElement,
|
||||
nsIDOMSVGElement,
|
||||
nsIDOMSVGFilterPrimitiveStandardAttributes,
|
||||
nsIDOMSVGFETurbulenceElement)
|
||||
NS_DOM_INTERFACE_MAP_ENTRY_CLASSINFO(SVGFETurbulenceElement)
|
||||
NS_INTERFACE_MAP_END_INHERITING(nsSVGFETurbulenceElementBase)
|
||||
NS_INTERFACE_TABLE_HEAD(SVGFETurbulenceElement)
|
||||
NS_NODE_INTERFACE_TABLE3(SVGFETurbulenceElement, nsIDOMNode, nsIDOMElement,
|
||||
nsIDOMSVGElement)
|
||||
NS_INTERFACE_MAP_END_INHERITING(SVGFETurbulenceElementBase)
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// nsIDOMNode methods
|
||||
|
||||
NS_IMPL_ELEMENT_CLONE_WITH_INIT(nsSVGFETurbulenceElement)
|
||||
NS_IMPL_ELEMENT_CLONE_WITH_INIT(SVGFETurbulenceElement)
|
||||
|
||||
//----------------------------------------------------------------------
|
||||
// nsIDOMSVGFETurbulenceElement methods
|
||||
|
||||
/* readonly attribute nsIDOMSVGAnimatedNumber baseFrequencyX; */
|
||||
NS_IMETHODIMP nsSVGFETurbulenceElement::GetBaseFrequencyX(nsIDOMSVGAnimatedNumber * *aX)
|
||||
already_AddRefed<nsIDOMSVGAnimatedNumber>
|
||||
SVGFETurbulenceElement::BaseFrequencyX()
|
||||
{
|
||||
return mNumberPairAttributes[BASE_FREQ].ToDOMAnimatedNumber(aX, nsSVGNumberPair::eFirst, this);
|
||||
return mNumberPairAttributes[BASE_FREQ].ToDOMAnimatedNumber(nsSVGNumberPair::eFirst, this);
|
||||
}
|
||||
|
||||
/* readonly attribute nsIDOMSVGAnimatedNumber baseFrequencyY; */
|
||||
NS_IMETHODIMP nsSVGFETurbulenceElement::GetBaseFrequencyY(nsIDOMSVGAnimatedNumber * *aY)
|
||||
already_AddRefed<nsIDOMSVGAnimatedNumber>
|
||||
SVGFETurbulenceElement::BaseFrequencyY()
|
||||
{
|
||||
return mNumberPairAttributes[BASE_FREQ].ToDOMAnimatedNumber(aY, nsSVGNumberPair::eSecond, this);
|
||||
return mNumberPairAttributes[BASE_FREQ].ToDOMAnimatedNumber(nsSVGNumberPair::eSecond, this);
|
||||
}
|
||||
|
||||
/* readonly attribute nsIDOMSVGAnimatedInteger numOctaves; */
|
||||
NS_IMETHODIMP nsSVGFETurbulenceElement::GetNumOctaves(nsIDOMSVGAnimatedInteger * *aNum)
|
||||
already_AddRefed<nsIDOMSVGAnimatedInteger>
|
||||
SVGFETurbulenceElement::NumOctaves()
|
||||
{
|
||||
return mIntegerAttributes[OCTAVES].ToDOMAnimatedInteger(aNum, this);
|
||||
return mIntegerAttributes[OCTAVES].ToDOMAnimatedInteger(this);
|
||||
}
|
||||
|
||||
/* readonly attribute nsIDOMSVGAnimatedNumber seed; */
|
||||
NS_IMETHODIMP nsSVGFETurbulenceElement::GetSeed(nsIDOMSVGAnimatedNumber * *aSeed)
|
||||
already_AddRefed<nsIDOMSVGAnimatedNumber>
|
||||
SVGFETurbulenceElement::Seed()
|
||||
{
|
||||
return mNumberAttributes[SEED].ToDOMAnimatedNumber(aSeed, this);
|
||||
return mNumberAttributes[SEED].ToDOMAnimatedNumber(this);
|
||||
}
|
||||
|
||||
/* readonly attribute nsIDOMSVGAnimatedEnumeration stitchTiles; */
|
||||
NS_IMETHODIMP nsSVGFETurbulenceElement::GetStitchTiles(nsIDOMSVGAnimatedEnumeration * *aStitch)
|
||||
already_AddRefed<nsIDOMSVGAnimatedEnumeration>
|
||||
SVGFETurbulenceElement::StitchTiles()
|
||||
{
|
||||
return mEnumAttributes[STITCHTILES].ToDOMAnimatedEnum(aStitch, this);
|
||||
return mEnumAttributes[STITCHTILES].ToDOMAnimatedEnum(this);
|
||||
}
|
||||
|
||||
/* readonly attribute nsIDOMSVGAnimatedEnumeration type; */
|
||||
NS_IMETHODIMP nsSVGFETurbulenceElement::GetType(nsIDOMSVGAnimatedEnumeration * *aType)
|
||||
already_AddRefed<nsIDOMSVGAnimatedEnumeration>
|
||||
SVGFETurbulenceElement::Type()
|
||||
{
|
||||
return mEnumAttributes[TYPE].ToDOMAnimatedEnum(aType, this);
|
||||
return mEnumAttributes[TYPE].ToDOMAnimatedEnum(this);
|
||||
}
|
||||
|
||||
nsresult
|
||||
nsSVGFETurbulenceElement::Filter(nsSVGFilterInstance *instance,
|
||||
const nsTArray<const Image*>& aSources,
|
||||
const Image* aTarget,
|
||||
const nsIntRect& rect)
|
||||
SVGFETurbulenceElement::Filter(nsSVGFilterInstance* instance,
|
||||
const nsTArray<const Image*>& aSources,
|
||||
const Image* aTarget,
|
||||
const nsIntRect& rect)
|
||||
{
|
||||
uint8_t* targetData = aTarget->mImage->Data();
|
||||
uint32_t stride = aTarget->mImage->Stride();
|
||||
@ -148,7 +161,7 @@ nsSVGFETurbulenceElement::Filter(nsSVGFilterInstance *instance,
|
||||
float filterHeight = instance->GetFilterRegion().Height();
|
||||
|
||||
bool doStitch = false;
|
||||
if (stitch == nsIDOMSVGFETurbulenceElement::SVG_STITCHTYPE_STITCH) {
|
||||
if (stitch == SVG_STITCHTYPE_STITCH) {
|
||||
doStitch = true;
|
||||
|
||||
float lowFreq, hiFreq;
|
||||
@ -175,7 +188,7 @@ nsSVGFETurbulenceElement::Filter(nsSVGFilterInstance *instance,
|
||||
point[1] = filterY + (filterHeight * (y + instance->GetSurfaceRect().y)) / (filterSubregion.height - 1);
|
||||
|
||||
float col[4];
|
||||
if (type == nsIDOMSVGFETurbulenceElement::SVG_TURBULENCE_TYPE_TURBULENCE) {
|
||||
if (type == SVG_TURBULENCE_TYPE_TURBULENCE) {
|
||||
for (int i = 0; i < 4; i++)
|
||||
col[i] = Turbulence(i, point, fX, fY, octaves, false,
|
||||
doStitch, filterX, filterY, filterWidth, filterHeight) * 255;
|
||||
@ -206,10 +219,10 @@ nsSVGFETurbulenceElement::Filter(nsSVGFilterInstance *instance,
|
||||
}
|
||||
|
||||
bool
|
||||
nsSVGFETurbulenceElement::AttributeAffectsRendering(int32_t aNameSpaceID,
|
||||
SVGFETurbulenceElement::AttributeAffectsRendering(int32_t aNameSpaceID,
|
||||
nsIAtom* aAttribute) const
|
||||
{
|
||||
return nsSVGFETurbulenceElementBase::AttributeAffectsRendering(aNameSpaceID, aAttribute) ||
|
||||
return SVGFETurbulenceElementBase::AttributeAffectsRendering(aNameSpaceID, aAttribute) ||
|
||||
(aNameSpaceID == kNameSpaceID_None &&
|
||||
(aAttribute == nsGkAtoms::seed ||
|
||||
aAttribute == nsGkAtoms::baseFrequency ||
|
||||
@ -219,7 +232,7 @@ nsSVGFETurbulenceElement::AttributeAffectsRendering(int32_t aNameSpaceID,
|
||||
}
|
||||
|
||||
void
|
||||
nsSVGFETurbulenceElement::InitSeed(int32_t aSeed)
|
||||
SVGFETurbulenceElement::InitSeed(int32_t aSeed)
|
||||
{
|
||||
double s;
|
||||
int i, j, k;
|
||||
@ -257,8 +270,8 @@ nsSVGFETurbulenceElement::InitSeed(int32_t aSeed)
|
||||
#define S_CURVE(t) ( t * t * (3. - 2. * t) )
|
||||
#define LERP(t, a, b) ( a + t * (b - a) )
|
||||
double
|
||||
nsSVGFETurbulenceElement::Noise2(int aColorChannel, double aVec[2],
|
||||
StitchInfo *aStitchInfo)
|
||||
SVGFETurbulenceElement::Noise2(int aColorChannel, double aVec[2],
|
||||
StitchInfo *aStitchInfo)
|
||||
{
|
||||
int bx0, bx1, by0, by1, b00, b10, b01, b11;
|
||||
double rx0, rx1, ry0, ry1, *q, sx, sy, a, b, t, u, v;
|
||||
@ -312,12 +325,12 @@ nsSVGFETurbulenceElement::Noise2(int aColorChannel, double aVec[2],
|
||||
#undef LERP
|
||||
|
||||
double
|
||||
nsSVGFETurbulenceElement::Turbulence(int aColorChannel, double *aPoint,
|
||||
double aBaseFreqX, double aBaseFreqY,
|
||||
int aNumOctaves, bool aFractalSum,
|
||||
bool aDoStitching,
|
||||
double aTileX, double aTileY,
|
||||
double aTileWidth, double aTileHeight)
|
||||
SVGFETurbulenceElement::Turbulence(int aColorChannel, double* aPoint,
|
||||
double aBaseFreqX, double aBaseFreqY,
|
||||
int aNumOctaves, bool aFractalSum,
|
||||
bool aDoStitching,
|
||||
double aTileX, double aTileY,
|
||||
double aTileWidth, double aTileHeight)
|
||||
{
|
||||
StitchInfo stitch;
|
||||
StitchInfo *stitchInfo = NULL; // Not stitching when NULL.
|
||||
@ -374,7 +387,7 @@ nsSVGFETurbulenceElement::Turbulence(int aColorChannel, double *aPoint,
|
||||
}
|
||||
|
||||
nsIntRect
|
||||
nsSVGFETurbulenceElement::ComputeTargetBBox(const nsTArray<nsIntRect>& aSourceBBoxes,
|
||||
SVGFETurbulenceElement::ComputeTargetBBox(const nsTArray<nsIntRect>& aSourceBBoxes,
|
||||
const nsSVGFilterInstance& aInstance)
|
||||
{
|
||||
return GetMaxRect();
|
||||
@ -384,35 +397,35 @@ nsSVGFETurbulenceElement::ComputeTargetBBox(const nsTArray<nsIntRect>& aSourceBB
|
||||
// nsSVGElement methods
|
||||
|
||||
nsSVGElement::NumberAttributesInfo
|
||||
nsSVGFETurbulenceElement::GetNumberInfo()
|
||||
SVGFETurbulenceElement::GetNumberInfo()
|
||||
{
|
||||
return NumberAttributesInfo(mNumberAttributes, sNumberInfo,
|
||||
ArrayLength(sNumberInfo));
|
||||
}
|
||||
|
||||
nsSVGElement::NumberPairAttributesInfo
|
||||
nsSVGFETurbulenceElement::GetNumberPairInfo()
|
||||
SVGFETurbulenceElement::GetNumberPairInfo()
|
||||
{
|
||||
return NumberPairAttributesInfo(mNumberPairAttributes, sNumberPairInfo,
|
||||
ArrayLength(sNumberPairInfo));
|
||||
}
|
||||
|
||||
nsSVGElement::IntegerAttributesInfo
|
||||
nsSVGFETurbulenceElement::GetIntegerInfo()
|
||||
SVGFETurbulenceElement::GetIntegerInfo()
|
||||
{
|
||||
return IntegerAttributesInfo(mIntegerAttributes, sIntegerInfo,
|
||||
ArrayLength(sIntegerInfo));
|
||||
}
|
||||
|
||||
nsSVGElement::EnumAttributesInfo
|
||||
nsSVGFETurbulenceElement::GetEnumInfo()
|
||||
SVGFETurbulenceElement::GetEnumInfo()
|
||||
{
|
||||
return EnumAttributesInfo(mEnumAttributes, sEnumInfo,
|
||||
ArrayLength(sEnumInfo));
|
||||
}
|
||||
|
||||
nsSVGElement::StringAttributesInfo
|
||||
nsSVGFETurbulenceElement::GetStringInfo()
|
||||
SVGFETurbulenceElement::GetStringInfo()
|
||||
{
|
||||
return StringAttributesInfo(mStringAttributes, sStringInfo,
|
||||
ArrayLength(sStringInfo));
|
||||
|
@ -6,21 +6,32 @@
|
||||
#ifndef mozilla_dom_SVGFETurbulenceElement_h
|
||||
#define mozilla_dom_SVGFETurbulenceElement_h
|
||||
|
||||
#include "nsSVGEnum.h"
|
||||
#include "nsSVGFilters.h"
|
||||
#include "nsSVGNumber2.h"
|
||||
#include "nsSVGInteger.h"
|
||||
#include "nsSVGString.h"
|
||||
|
||||
nsresult NS_NewSVGFETurbulenceElement(nsIContent **aResult,
|
||||
already_AddRefed<nsINodeInfo> aNodeInfo);
|
||||
|
||||
namespace mozilla {
|
||||
namespace dom {
|
||||
|
||||
typedef nsSVGFE nsSVGFETurbulenceElementBase;
|
||||
typedef nsSVGFE SVGFETurbulenceElementBase;
|
||||
|
||||
class nsSVGFETurbulenceElement : public nsSVGFETurbulenceElementBase,
|
||||
public nsIDOMSVGFETurbulenceElement
|
||||
class SVGFETurbulenceElement : public SVGFETurbulenceElementBase,
|
||||
public nsIDOMSVGElement
|
||||
{
|
||||
friend nsresult NS_NewSVGFETurbulenceElement(nsIContent **aResult,
|
||||
already_AddRefed<nsINodeInfo> aNodeInfo);
|
||||
friend nsresult (::NS_NewSVGFETurbulenceElement(nsIContent **aResult,
|
||||
already_AddRefed<nsINodeInfo> aNodeInfo));
|
||||
protected:
|
||||
nsSVGFETurbulenceElement(already_AddRefed<nsINodeInfo> aNodeInfo)
|
||||
: nsSVGFETurbulenceElementBase(aNodeInfo) {}
|
||||
SVGFETurbulenceElement(already_AddRefed<nsINodeInfo> aNodeInfo)
|
||||
: SVGFETurbulenceElementBase(aNodeInfo)
|
||||
{
|
||||
SetIsDOMBinding();
|
||||
}
|
||||
virtual JSObject* WrapNode(JSContext* aCx, JSObject* aScope) MOZ_OVERRIDE;
|
||||
|
||||
public:
|
||||
virtual bool SubregionIsUnionOfRegions() { return false; }
|
||||
@ -28,9 +39,6 @@ public:
|
||||
// interfaces:
|
||||
NS_DECL_ISUPPORTS_INHERITED
|
||||
|
||||
// FE Base
|
||||
NS_FORWARD_NSIDOMSVGFILTERPRIMITIVESTANDARDATTRIBUTES(nsSVGFETurbulenceElementBase::)
|
||||
|
||||
virtual nsresult Filter(nsSVGFilterInstance* aInstance,
|
||||
const nsTArray<const Image*>& aSources,
|
||||
const Image* aTarget,
|
||||
@ -41,19 +49,23 @@ public:
|
||||
virtual nsIntRect ComputeTargetBBox(const nsTArray<nsIntRect>& aSourceBBoxes,
|
||||
const nsSVGFilterInstance& aInstance);
|
||||
|
||||
// Turbulence
|
||||
NS_DECL_NSIDOMSVGFETURBULENCEELEMENT
|
||||
|
||||
NS_FORWARD_NSIDOMSVGELEMENT(nsSVGFETurbulenceElementBase::)
|
||||
NS_FORWARD_NSIDOMSVGELEMENT(SVGFETurbulenceElementBase::)
|
||||
|
||||
NS_FORWARD_NSIDOMNODE_TO_NSINODE
|
||||
NS_FORWARD_NSIDOMELEMENT_TO_GENERIC
|
||||
|
||||
virtual nsresult Clone(nsINodeInfo *aNodeInfo, nsINode **aResult) const;
|
||||
|
||||
virtual nsXPCClassInfo* GetClassInfo();
|
||||
|
||||
virtual nsIDOMNode* AsDOMNode() { return this; }
|
||||
|
||||
// WebIDL
|
||||
already_AddRefed<nsIDOMSVGAnimatedNumber> BaseFrequencyX();
|
||||
already_AddRefed<nsIDOMSVGAnimatedNumber> BaseFrequencyY();
|
||||
already_AddRefed<nsIDOMSVGAnimatedInteger> NumOctaves();
|
||||
already_AddRefed<nsIDOMSVGAnimatedNumber> Seed();
|
||||
already_AddRefed<nsIDOMSVGAnimatedEnumeration> StitchTiles();
|
||||
already_AddRefed<nsIDOMSVGAnimatedEnumeration> Type();
|
||||
|
||||
protected:
|
||||
virtual NumberAttributesInfo GetNumberInfo();
|
||||
virtual NumberPairAttributesInfo GetNumberPairInfo();
|
||||
|
@ -812,8 +812,6 @@ static nsDOMClassInfoData sClassInfoData[] = {
|
||||
// SVG element classes
|
||||
NS_DEFINE_CLASSINFO_DATA(TimeEvent, nsEventSH,
|
||||
DOM_DEFAULT_SCRIPTABLE_FLAGS)
|
||||
NS_DEFINE_CLASSINFO_DATA(SVGFETurbulenceElement, nsElementSH,
|
||||
ELEMENT_SCRIPTABLE_FLAGS)
|
||||
NS_DEFINE_CLASSINFO_DATA_WITH_NAME(SVGUnknownElement, SVGElement, nsElementSH,
|
||||
ELEMENT_SCRIPTABLE_FLAGS)
|
||||
|
||||
@ -2223,12 +2221,6 @@ nsDOMClassInfo::Init()
|
||||
DOM_CLASSINFO_EVENT_MAP_ENTRIES
|
||||
DOM_CLASSINFO_MAP_END
|
||||
|
||||
DOM_CLASSINFO_MAP_BEGIN(SVGFETurbulenceElement, nsIDOMSVGFETurbulenceElement)
|
||||
DOM_CLASSINFO_MAP_ENTRY(nsIDOMSVGFETurbulenceElement)
|
||||
DOM_CLASSINFO_MAP_ENTRY(nsIDOMSVGFilterPrimitiveStandardAttributes)
|
||||
DOM_CLASSINFO_SVG_ELEMENT_MAP_ENTRIES
|
||||
DOM_CLASSINFO_MAP_END
|
||||
|
||||
DOM_CLASSINFO_MAP_BEGIN(SVGUnknownElement, nsIDOMSVGElement)
|
||||
DOM_CLASSINFO_SVG_ELEMENT_MAP_ENTRIES
|
||||
DOM_CLASSINFO_MAP_END
|
||||
|
@ -122,7 +122,6 @@ DOMCI_CLASS(SVGDocument)
|
||||
|
||||
// SVG element classes
|
||||
DOMCI_CLASS(TimeEvent)
|
||||
DOMCI_CLASS(SVGFETurbulenceElement)
|
||||
DOMCI_CLASS(SVGUnknownElement)
|
||||
|
||||
// other SVG classes
|
||||
|
@ -20,23 +20,3 @@ interface nsIDOMSVGFilterPrimitiveStandardAttributes : nsIDOMSVGElement
|
||||
readonly attribute nsIDOMSVGAnimatedLength height;
|
||||
readonly attribute nsIDOMSVGAnimatedString result;
|
||||
};
|
||||
|
||||
[scriptable, uuid(14eb581d-0e54-42b5-a595-5db6c9490277)]
|
||||
interface nsIDOMSVGFETurbulenceElement : nsIDOMSVGFilterPrimitiveStandardAttributes
|
||||
{
|
||||
// Turbulence Types
|
||||
const unsigned short SVG_TURBULENCE_TYPE_UNKNOWN = 0;
|
||||
const unsigned short SVG_TURBULENCE_TYPE_FRACTALNOISE = 1;
|
||||
const unsigned short SVG_TURBULENCE_TYPE_TURBULENCE = 2;
|
||||
// Stitch Options
|
||||
const unsigned short SVG_STITCHTYPE_UNKNOWN = 0;
|
||||
const unsigned short SVG_STITCHTYPE_STITCH = 1;
|
||||
const unsigned short SVG_STITCHTYPE_NOSTITCH = 2;
|
||||
|
||||
readonly attribute nsIDOMSVGAnimatedNumber baseFrequencyX;
|
||||
readonly attribute nsIDOMSVGAnimatedNumber baseFrequencyY;
|
||||
readonly attribute nsIDOMSVGAnimatedInteger numOctaves;
|
||||
readonly attribute nsIDOMSVGAnimatedNumber seed;
|
||||
readonly attribute nsIDOMSVGAnimatedEnumeration stitchTiles;
|
||||
readonly attribute nsIDOMSVGAnimatedEnumeration type;
|
||||
};
|
||||
|
38
dom/webidl/SVGFETurbulenceElement.webidl
Normal file
38
dom/webidl/SVGFETurbulenceElement.webidl
Normal file
@ -0,0 +1,38 @@
|
||||
/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
|
||||
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
|
||||
* You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
*
|
||||
* The origin of this IDL file is
|
||||
* http://www.w3.org/TR/SVG2/
|
||||
*
|
||||
* Copyright © 2012 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C
|
||||
* liability, trademark and document use rules apply.
|
||||
*/
|
||||
|
||||
interface SVGAnimatedEnumeration;
|
||||
interface SVGAnimatedInteger;
|
||||
interface SVGAnimatedNumber;
|
||||
interface SVGAnimatedString;
|
||||
|
||||
interface SVGFETurbulenceElement : SVGElement {
|
||||
|
||||
// Turbulence Types
|
||||
const unsigned short SVG_TURBULENCE_TYPE_UNKNOWN = 0;
|
||||
const unsigned short SVG_TURBULENCE_TYPE_FRACTALNOISE = 1;
|
||||
const unsigned short SVG_TURBULENCE_TYPE_TURBULENCE = 2;
|
||||
|
||||
// Stitch Options
|
||||
const unsigned short SVG_STITCHTYPE_UNKNOWN = 0;
|
||||
const unsigned short SVG_STITCHTYPE_STITCH = 1;
|
||||
const unsigned short SVG_STITCHTYPE_NOSTITCH = 2;
|
||||
|
||||
readonly attribute SVGAnimatedNumber baseFrequencyX;
|
||||
readonly attribute SVGAnimatedNumber baseFrequencyY;
|
||||
readonly attribute SVGAnimatedInteger numOctaves;
|
||||
readonly attribute SVGAnimatedNumber seed;
|
||||
readonly attribute SVGAnimatedEnumeration stitchTiles;
|
||||
readonly attribute SVGAnimatedEnumeration type;
|
||||
};
|
||||
|
||||
SVGFETurbulenceElement implements SVGFilterPrimitiveStandardAttributes;
|
@ -212,6 +212,7 @@ webidl_files = \
|
||||
SVGFESpecularLightingElement.webidl \
|
||||
SVGFESpotLightElement.webidl \
|
||||
SVGFETileElement.webidl \
|
||||
SVGFETurbulenceElement.webidl \
|
||||
SVGFitToViewBox.webidl \
|
||||
SVGForeignObjectElement.webidl \
|
||||
SVGGElement.webidl \
|
||||
|
Loading…
Reference in New Issue
Block a user