diff --git a/js/js.libraries/src/generated/org.khronos.webgl.kt b/js/js.libraries/src/generated/org.khronos.webgl.kt index d2a8fc06df9..0eceda2c77b 100644 --- a/js/js.libraries/src/generated/org.khronos.webgl.kt +++ b/js/js.libraries/src/generated/org.khronos.webgl.kt @@ -11,6 +11,7 @@ import org.w3c.dom.* import org.w3c.dom.css.* import org.w3c.dom.events.* import org.w3c.dom.parsing.* +import org.w3c.dom.svg.* import org.w3c.fetch.* import org.w3c.files.* import org.w3c.notifications.* diff --git a/js/js.libraries/src/generated/org.w3c.dom.css.kt b/js/js.libraries/src/generated/org.w3c.dom.css.kt index 3099ccd87c9..b70cff42403 100644 --- a/js/js.libraries/src/generated/org.w3c.dom.css.kt +++ b/js/js.libraries/src/generated/org.w3c.dom.css.kt @@ -11,6 +11,7 @@ import org.khronos.webgl.* import org.w3c.dom.* import org.w3c.dom.events.* import org.w3c.dom.parsing.* +import org.w3c.dom.svg.* import org.w3c.fetch.* import org.w3c.files.* import org.w3c.notifications.* diff --git a/js/js.libraries/src/generated/org.w3c.dom.events.kt b/js/js.libraries/src/generated/org.w3c.dom.events.kt index 5f37940aef0..2023d0be3aa 100644 --- a/js/js.libraries/src/generated/org.w3c.dom.events.kt +++ b/js/js.libraries/src/generated/org.w3c.dom.events.kt @@ -11,6 +11,7 @@ import org.khronos.webgl.* import org.w3c.dom.* import org.w3c.dom.css.* import org.w3c.dom.parsing.* +import org.w3c.dom.svg.* import org.w3c.fetch.* import org.w3c.files.* import org.w3c.notifications.* diff --git a/js/js.libraries/src/generated/org.w3c.dom.kt b/js/js.libraries/src/generated/org.w3c.dom.kt index 228c2f4c979..3f8a90e0964 100644 --- a/js/js.libraries/src/generated/org.w3c.dom.kt +++ b/js/js.libraries/src/generated/org.w3c.dom.kt @@ -11,6 +11,7 @@ import org.khronos.webgl.* import org.w3c.dom.css.* import org.w3c.dom.events.* import org.w3c.dom.parsing.* +import org.w3c.dom.svg.* import org.w3c.fetch.* import org.w3c.files.* import org.w3c.notifications.* @@ -2726,7 +2727,7 @@ native public open class CanvasRenderingContext2D { var height: Int get() = noImpl set(value) = noImpl - var currentTransform: dynamic + var currentTransform: SVGMatrix get() = noImpl set(value) = noImpl var globalAlpha: Double @@ -2847,7 +2848,7 @@ native public trait CanvasGradient { } native public trait CanvasPattern { - fun setTransform(transform: dynamic): Unit = noImpl + fun setTransform(transform: SVGMatrix): Unit = noImpl } native public trait TextMetrics { @@ -2945,12 +2946,12 @@ native public open class DrawingStyle(scope: Element = noImpl) { } native public open class Path2D { - fun addPath(path: Path2D, transformation: dynamic = null): Unit = noImpl - fun addPathByStrokingPath(path: Path2D, styles: dynamic, transformation: dynamic = null): Unit = noImpl - fun addText(text: String, styles: dynamic, transformation: dynamic, x: Double, y: Double, maxWidth: Double = noImpl): Unit = noImpl - fun addPathByStrokingText(text: String, styles: dynamic, transformation: dynamic, x: Double, y: Double, maxWidth: Double = noImpl): Unit = noImpl - fun addText(text: String, styles: dynamic, transformation: dynamic, path: Path2D, maxWidth: Double = noImpl): Unit = noImpl - fun addPathByStrokingText(text: String, styles: dynamic, transformation: dynamic, path: Path2D, maxWidth: Double = noImpl): Unit = noImpl + fun addPath(path: Path2D, transformation: SVGMatrix? = null): Unit = noImpl + fun addPathByStrokingPath(path: Path2D, styles: dynamic, transformation: SVGMatrix? = null): Unit = noImpl + fun addText(text: String, styles: dynamic, transformation: SVGMatrix?, x: Double, y: Double, maxWidth: Double = noImpl): Unit = noImpl + fun addPathByStrokingText(text: String, styles: dynamic, transformation: SVGMatrix?, x: Double, y: Double, maxWidth: Double = noImpl): Unit = noImpl + fun addText(text: String, styles: dynamic, transformation: SVGMatrix?, path: Path2D, maxWidth: Double = noImpl): Unit = noImpl + fun addPathByStrokingText(text: String, styles: dynamic, transformation: SVGMatrix?, path: Path2D, maxWidth: Double = noImpl): Unit = noImpl fun closePath(): Unit = noImpl fun moveTo(x: Double, y: Double): Unit = noImpl fun lineTo(x: Double, y: Double): Unit = noImpl diff --git a/js/js.libraries/src/generated/org.w3c.dom.parsing.kt b/js/js.libraries/src/generated/org.w3c.dom.parsing.kt index 5b4132ccb21..62db5710d28 100644 --- a/js/js.libraries/src/generated/org.w3c.dom.parsing.kt +++ b/js/js.libraries/src/generated/org.w3c.dom.parsing.kt @@ -11,6 +11,7 @@ import org.khronos.webgl.* import org.w3c.dom.* import org.w3c.dom.css.* import org.w3c.dom.events.* +import org.w3c.dom.svg.* import org.w3c.fetch.* import org.w3c.files.* import org.w3c.notifications.* diff --git a/js/js.libraries/src/generated/org.w3c.dom.svg.kt b/js/js.libraries/src/generated/org.w3c.dom.svg.kt new file mode 100644 index 00000000000..b9d6b49c672 --- /dev/null +++ b/js/js.libraries/src/generated/org.w3c.dom.svg.kt @@ -0,0 +1,1993 @@ +/* + * Generated file + * DO NOT EDIT + * + * See libraries/tools/idl2k for details + */ + +package org.w3c.dom.svg + +import org.khronos.webgl.* +import org.w3c.dom.* +import org.w3c.dom.css.* +import org.w3c.dom.events.* +import org.w3c.dom.parsing.* +import org.w3c.fetch.* +import org.w3c.files.* +import org.w3c.notifications.* +import org.w3c.workers.* +import org.w3c.xhr.* + +native public open class SVGDocument : Document() { + var rootElement: SVGSVGElement + get() = noImpl + set(value) = noImpl +} + +native public trait SVGSVGElement : SVGElement, SVGTests, SVGLangSpace, SVGExternalResourcesRequired, SVGStylable, SVGLocatable, SVGFitToViewBox, SVGZoomAndPan { + var x: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var y: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var width: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var height: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var contentScriptType: dynamic + get() = noImpl + set(value) = noImpl + var contentStyleType: dynamic + get() = noImpl + set(value) = noImpl + var viewport: SVGRect + get() = noImpl + set(value) = noImpl + var pixelUnitToMillimeterX: Float + get() = noImpl + set(value) = noImpl + var pixelUnitToMillimeterY: Float + get() = noImpl + set(value) = noImpl + var screenPixelToMillimeterX: Float + get() = noImpl + set(value) = noImpl + var screenPixelToMillimeterY: Float + get() = noImpl + set(value) = noImpl + var useCurrentView: Boolean + get() = noImpl + set(value) = noImpl + var currentView: SVGViewSpec + get() = noImpl + set(value) = noImpl + var currentScale: Float + get() = noImpl + set(value) = noImpl + var currentTranslate: SVGPoint + get() = noImpl + set(value) = noImpl + fun suspendRedraw(maxWaitMilliseconds: Int): Int = noImpl + fun unsuspendRedraw(suspendHandleID: Int): Unit = noImpl + fun unsuspendRedrawAll(): Unit = noImpl + fun forceRedraw(): Unit = noImpl + fun pauseAnimations(): Unit = noImpl + fun unpauseAnimations(): Unit = noImpl + fun animationsPaused(): Boolean = noImpl + fun getCurrentTime(): Float = noImpl + fun setCurrentTime(seconds: Float): Unit = noImpl + fun getIntersectionList(rect: SVGRect, referenceElement: SVGElement): NodeList = noImpl + fun getEnclosureList(rect: SVGRect, referenceElement: SVGElement): NodeList = noImpl + fun checkIntersection(element: SVGElement, rect: SVGRect): Boolean = noImpl + fun checkEnclosure(element: SVGElement, rect: SVGRect): Boolean = noImpl + fun deselectAll(): Unit = noImpl + fun createSVGNumber(): SVGNumber = noImpl + fun createSVGLength(): SVGLength = noImpl + fun createSVGAngle(): SVGAngle = noImpl + fun createSVGPoint(): SVGPoint = noImpl + fun createSVGMatrix(): SVGMatrix = noImpl + fun createSVGRect(): SVGRect = noImpl + fun createSVGTransform(): SVGTransform = noImpl + fun createSVGTransformFromMatrix(matrix: SVGMatrix): SVGTransform = noImpl + fun getElementById(elementId: String): Element = noImpl +} + +native public trait SVGGElement : SVGElement, SVGTests, SVGLangSpace, SVGExternalResourcesRequired, SVGStylable, SVGTransformable { +} + +native public trait SVGDefsElement : SVGElement, SVGTests, SVGLangSpace, SVGExternalResourcesRequired, SVGStylable, SVGTransformable { +} + +native public trait SVGDescElement : SVGElement, SVGLangSpace, SVGStylable { +} + +native public trait SVGTitleElement : SVGElement, SVGLangSpace, SVGStylable { +} + +native public trait SVGSymbolElement : SVGElement, SVGLangSpace, SVGExternalResourcesRequired, SVGStylable, SVGFitToViewBox { +} + +native public trait SVGUseElement : SVGElement, SVGURIReference, SVGTests, SVGLangSpace, SVGExternalResourcesRequired, SVGStylable, SVGTransformable { + var x: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var y: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var width: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var height: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var instanceRoot: SVGElementInstance + get() = noImpl + set(value) = noImpl + var animatedInstanceRoot: SVGElementInstance + get() = noImpl + set(value) = noImpl +} + +native public trait SVGElementInstance : EventTarget { + var correspondingElement: SVGElement + get() = noImpl + set(value) = noImpl + var correspondingUseElement: SVGUseElement + get() = noImpl + set(value) = noImpl + var parentNode: SVGElementInstance + get() = noImpl + set(value) = noImpl + var childNodes: SVGElementInstanceList + get() = noImpl + set(value) = noImpl + var firstChild: SVGElementInstance + get() = noImpl + set(value) = noImpl + var lastChild: SVGElementInstance + get() = noImpl + set(value) = noImpl + var previousSibling: SVGElementInstance + get() = noImpl + set(value) = noImpl + var nextSibling: SVGElementInstance + get() = noImpl + set(value) = noImpl +} + +native public trait SVGElementInstanceList { + var length: Int + get() = noImpl + set(value) = noImpl + fun item(index: Int): SVGElementInstance = noImpl +} + +native public trait SVGImageElement : SVGElement, SVGURIReference, SVGTests, SVGLangSpace, SVGExternalResourcesRequired, SVGStylable, SVGTransformable { + var x: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var y: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var width: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var height: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var preserveAspectRatio: SVGAnimatedPreserveAspectRatio + get() = noImpl + set(value) = noImpl +} + +native public trait SVGSwitchElement : SVGElement, SVGTests, SVGLangSpace, SVGExternalResourcesRequired, SVGStylable, SVGTransformable { +} + +native public trait GetSVGDocument { + fun getSVGDocument(): SVGDocument = noImpl +} + +native public trait SVGElement : Element { +// var id: dynamic +// get() = noImpl +// set(value) = noImpl + var xmlbase: dynamic + get() = noImpl + set(value) = noImpl + var ownerSVGElement: SVGSVGElement + get() = noImpl + set(value) = noImpl + var viewportElement: SVGElement + get() = noImpl + set(value) = noImpl + var style: CSSStyleDeclaration + get() = noImpl + set(value) = noImpl +} + +native public trait SVGAnimatedBoolean { + var baseVal: dynamic + get() = noImpl + set(value) = noImpl + var animVal: Boolean + get() = noImpl + set(value) = noImpl +} + +native public trait SVGAnimatedString { + var baseVal: dynamic + get() = noImpl + set(value) = noImpl + var animVal: String + get() = noImpl + set(value) = noImpl +} + +native public trait SVGStringList { + var numberOfItems: Int + get() = noImpl + set(value) = noImpl + fun clear(): Unit = noImpl + fun initialize(newItem: String): String = noImpl + fun getItem(index: Int): String = noImpl + fun insertItemBefore(newItem: String, index: Int): String = noImpl + fun replaceItem(newItem: String, index: Int): String = noImpl + fun removeItem(index: Int): String = noImpl + fun appendItem(newItem: String): String = noImpl +} + +native public trait SVGAnimatedEnumeration { + var baseVal: dynamic + get() = noImpl + set(value) = noImpl + var animVal: Short + get() = noImpl + set(value) = noImpl +} + +native public trait SVGAnimatedInteger { + var baseVal: dynamic + get() = noImpl + set(value) = noImpl + var animVal: Int + get() = noImpl + set(value) = noImpl +} + +native public trait SVGNumber { + var value: dynamic + get() = noImpl + set(value) = noImpl +} + +native public trait SVGAnimatedNumber { + var baseVal: dynamic + get() = noImpl + set(value) = noImpl + var animVal: Float + get() = noImpl + set(value) = noImpl +} + +native public trait SVGNumberList { + var numberOfItems: Int + get() = noImpl + set(value) = noImpl + fun clear(): Unit = noImpl + fun initialize(newItem: SVGNumber): SVGNumber = noImpl + fun getItem(index: Int): SVGNumber = noImpl + fun insertItemBefore(newItem: SVGNumber, index: Int): SVGNumber = noImpl + fun replaceItem(newItem: SVGNumber, index: Int): SVGNumber = noImpl + fun removeItem(index: Int): SVGNumber = noImpl + fun appendItem(newItem: SVGNumber): SVGNumber = noImpl +} + +native public trait SVGAnimatedNumberList { + var baseVal: SVGNumberList + get() = noImpl + set(value) = noImpl + var animVal: SVGNumberList + get() = noImpl + set(value) = noImpl +} + +native public trait SVGLength { + var unitType: Short + get() = noImpl + set(value) = noImpl + var value: dynamic + get() = noImpl + set(value) = noImpl + var valueInSpecifiedUnits: dynamic + get() = noImpl + set(value) = noImpl + var valueAsString: dynamic + get() = noImpl + set(value) = noImpl + fun newValueSpecifiedUnits(unitType: Short, valueInSpecifiedUnits: Float): Unit = noImpl + fun convertToSpecifiedUnits(unitType: Short): Unit = noImpl + + companion object { + val SVG_LENGTHTYPE_UNKNOWN: Short = 0 + val SVG_LENGTHTYPE_NUMBER: Short = 1 + val SVG_LENGTHTYPE_PERCENTAGE: Short = 2 + val SVG_LENGTHTYPE_EMS: Short = 3 + val SVG_LENGTHTYPE_EXS: Short = 4 + val SVG_LENGTHTYPE_PX: Short = 5 + val SVG_LENGTHTYPE_CM: Short = 6 + val SVG_LENGTHTYPE_MM: Short = 7 + val SVG_LENGTHTYPE_IN: Short = 8 + val SVG_LENGTHTYPE_PT: Short = 9 + val SVG_LENGTHTYPE_PC: Short = 10 + } +} + +native public trait SVGAnimatedLength { + var baseVal: SVGLength + get() = noImpl + set(value) = noImpl + var animVal: SVGLength + get() = noImpl + set(value) = noImpl +} + +native public trait SVGLengthList { + var numberOfItems: Int + get() = noImpl + set(value) = noImpl + fun clear(): Unit = noImpl + fun initialize(newItem: SVGLength): SVGLength = noImpl + fun getItem(index: Int): SVGLength = noImpl + fun insertItemBefore(newItem: SVGLength, index: Int): SVGLength = noImpl + fun replaceItem(newItem: SVGLength, index: Int): SVGLength = noImpl + fun removeItem(index: Int): SVGLength = noImpl + fun appendItem(newItem: SVGLength): SVGLength = noImpl +} + +native public trait SVGAnimatedLengthList { + var baseVal: SVGLengthList + get() = noImpl + set(value) = noImpl + var animVal: SVGLengthList + get() = noImpl + set(value) = noImpl +} + +native public trait SVGAngle { + var unitType: Short + get() = noImpl + set(value) = noImpl + var value: dynamic + get() = noImpl + set(value) = noImpl + var valueInSpecifiedUnits: dynamic + get() = noImpl + set(value) = noImpl + var valueAsString: dynamic + get() = noImpl + set(value) = noImpl + fun newValueSpecifiedUnits(unitType: Short, valueInSpecifiedUnits: Float): Unit = noImpl + fun convertToSpecifiedUnits(unitType: Short): Unit = noImpl + + companion object { + val SVG_ANGLETYPE_UNKNOWN: Short = 0 + val SVG_ANGLETYPE_UNSPECIFIED: Short = 1 + val SVG_ANGLETYPE_DEG: Short = 2 + val SVG_ANGLETYPE_RAD: Short = 3 + val SVG_ANGLETYPE_GRAD: Short = 4 + } +} + +native public trait SVGAnimatedAngle { + var baseVal: SVGAngle + get() = noImpl + set(value) = noImpl + var animVal: SVGAngle + get() = noImpl + set(value) = noImpl +} + +native public trait SVGColor { + var colorType: Short + get() = noImpl + set(value) = noImpl + var rgbColor: dynamic + get() = noImpl + set(value) = noImpl + var iccColor: SVGICCColor + get() = noImpl + set(value) = noImpl + fun setRGBColor(rgbColor: String): Unit = noImpl + fun setRGBColorICCColor(rgbColor: String, iccColor: String): Unit = noImpl + fun setColor(colorType: Short, rgbColor: String, iccColor: String): Unit = noImpl + + companion object { + val SVG_COLORTYPE_UNKNOWN: Short = 0 + val SVG_COLORTYPE_RGBCOLOR: Short = 1 + val SVG_COLORTYPE_RGBCOLOR_ICCCOLOR: Short = 2 + val SVG_COLORTYPE_CURRENTCOLOR: Short = 3 + } +} + +native public trait SVGICCColor { + var colorProfile: dynamic + get() = noImpl + set(value) = noImpl + var colors: SVGNumberList + get() = noImpl + set(value) = noImpl +} + +native public trait SVGRect { + var x: dynamic + get() = noImpl + set(value) = noImpl + var y: dynamic + get() = noImpl + set(value) = noImpl + var width: dynamic + get() = noImpl + set(value) = noImpl + var height: dynamic + get() = noImpl + set(value) = noImpl +} + +native public trait SVGAnimatedRect { + var baseVal: SVGRect + get() = noImpl + set(value) = noImpl + var animVal: SVGRect + get() = noImpl + set(value) = noImpl +} + +native public trait SVGUnitTypes { + + companion object { + val SVG_UNIT_TYPE_UNKNOWN: Short = 0 + val SVG_UNIT_TYPE_USERSPACEONUSE: Short = 1 + val SVG_UNIT_TYPE_OBJECTBOUNDINGBOX: Short = 2 + } +} + +native public trait SVGStylable { + fun getPresentationAttribute(name: String): dynamic = noImpl +} + +native public trait SVGLocatable { + var nearestViewportElement: SVGElement + get() = noImpl + set(value) = noImpl + var farthestViewportElement: SVGElement + get() = noImpl + set(value) = noImpl + fun getBBox(): SVGRect = noImpl + fun getCTM(): SVGMatrix = noImpl + fun getScreenCTM(): SVGMatrix = noImpl + fun getTransformToElement(element: SVGElement): SVGMatrix = noImpl +} + +native public trait SVGTransformable : SVGLocatable { + var transform: SVGAnimatedTransformList + get() = noImpl + set(value) = noImpl +} + +native public trait SVGTests { + var requiredFeatures: SVGStringList + get() = noImpl + set(value) = noImpl + var requiredExtensions: SVGStringList + get() = noImpl + set(value) = noImpl + var systemLanguage: SVGStringList + get() = noImpl + set(value) = noImpl + fun hasExtension(extension: String): Boolean = noImpl +} + +native public trait SVGLangSpace { + var xmllang: dynamic + get() = noImpl + set(value) = noImpl + var xmlspace: dynamic + get() = noImpl + set(value) = noImpl +} + +native public trait SVGExternalResourcesRequired { + var externalResourcesRequired: SVGAnimatedBoolean + get() = noImpl + set(value) = noImpl +} + +native public trait SVGFitToViewBox { + var viewBox: SVGAnimatedRect + get() = noImpl + set(value) = noImpl + var preserveAspectRatio: SVGAnimatedPreserveAspectRatio + get() = noImpl + set(value) = noImpl +} + +native public trait SVGZoomAndPan { + var zoomAndPan: dynamic + get() = noImpl + set(value) = noImpl + + companion object { + val SVG_ZOOMANDPAN_UNKNOWN: Short = 0 + val SVG_ZOOMANDPAN_DISABLE: Short = 1 + val SVG_ZOOMANDPAN_MAGNIFY: Short = 2 + } +} + +native public trait SVGViewSpec : SVGZoomAndPan, SVGFitToViewBox { + var transform: SVGTransformList + get() = noImpl + set(value) = noImpl + var viewTarget: SVGElement + get() = noImpl + set(value) = noImpl + var viewBoxString: String + get() = noImpl + set(value) = noImpl + var preserveAspectRatioString: String + get() = noImpl + set(value) = noImpl + var transformString: String + get() = noImpl + set(value) = noImpl + var viewTargetString: String + get() = noImpl + set(value) = noImpl +} + +native public trait SVGURIReference { + var href: SVGAnimatedString + get() = noImpl + set(value) = noImpl +} + +native public trait SVGCSSRule : CSSRule { + + companion object { + val COLOR_PROFILE_RULE: Short = 7 + } +} + +native public trait SVGRenderingIntent { + + companion object { + val RENDERING_INTENT_UNKNOWN: Short = 0 + val RENDERING_INTENT_AUTO: Short = 1 + val RENDERING_INTENT_PERCEPTUAL: Short = 2 + val RENDERING_INTENT_RELATIVE_COLORIMETRIC: Short = 3 + val RENDERING_INTENT_SATURATION: Short = 4 + val RENDERING_INTENT_ABSOLUTE_COLORIMETRIC: Short = 5 + } +} + +native public trait SVGStyleElement : SVGElement, SVGLangSpace { + var type: dynamic + get() = noImpl + set(value) = noImpl + var media: dynamic + get() = noImpl + set(value) = noImpl + var title: dynamic + get() = noImpl + set(value) = noImpl +} + +native public trait SVGPoint { + var x: dynamic + get() = noImpl + set(value) = noImpl + var y: dynamic + get() = noImpl + set(value) = noImpl + fun matrixTransform(matrix: SVGMatrix): SVGPoint = noImpl +} + +native public trait SVGPointList { + var numberOfItems: Int + get() = noImpl + set(value) = noImpl + fun clear(): Unit = noImpl + fun initialize(newItem: SVGPoint): SVGPoint = noImpl + fun getItem(index: Int): SVGPoint = noImpl + fun insertItemBefore(newItem: SVGPoint, index: Int): SVGPoint = noImpl + fun replaceItem(newItem: SVGPoint, index: Int): SVGPoint = noImpl + fun removeItem(index: Int): SVGPoint = noImpl + fun appendItem(newItem: SVGPoint): SVGPoint = noImpl +} + +native public trait SVGMatrix { + var a: dynamic + get() = noImpl + set(value) = noImpl + var b: dynamic + get() = noImpl + set(value) = noImpl + var c: dynamic + get() = noImpl + set(value) = noImpl + var d: dynamic + get() = noImpl + set(value) = noImpl + var e: dynamic + get() = noImpl + set(value) = noImpl + var f: dynamic + get() = noImpl + set(value) = noImpl + fun multiply(secondMatrix: SVGMatrix): SVGMatrix = noImpl + fun inverse(): SVGMatrix = noImpl + fun translate(x: Float, y: Float): SVGMatrix = noImpl + fun scale(scaleFactor: Float): SVGMatrix = noImpl + fun scaleNonUniform(scaleFactorX: Float, scaleFactorY: Float): SVGMatrix = noImpl + fun rotate(angle: Float): SVGMatrix = noImpl + fun rotateFromVector(x: Float, y: Float): SVGMatrix = noImpl + fun flipX(): SVGMatrix = noImpl + fun flipY(): SVGMatrix = noImpl + fun skewX(angle: Float): SVGMatrix = noImpl + fun skewY(angle: Float): SVGMatrix = noImpl +} + +native public trait SVGTransform { + var type: Short + get() = noImpl + set(value) = noImpl + var matrix: SVGMatrix + get() = noImpl + set(value) = noImpl + var angle: Float + get() = noImpl + set(value) = noImpl + fun setMatrix(matrix: SVGMatrix): Unit = noImpl + fun setTranslate(tx: Float, ty: Float): Unit = noImpl + fun setScale(sx: Float, sy: Float): Unit = noImpl + fun setRotate(angle: Float, cx: Float, cy: Float): Unit = noImpl + fun setSkewX(angle: Float): Unit = noImpl + fun setSkewY(angle: Float): Unit = noImpl + + companion object { + val SVG_TRANSFORM_UNKNOWN: Short = 0 + val SVG_TRANSFORM_MATRIX: Short = 1 + val SVG_TRANSFORM_TRANSLATE: Short = 2 + val SVG_TRANSFORM_SCALE: Short = 3 + val SVG_TRANSFORM_ROTATE: Short = 4 + val SVG_TRANSFORM_SKEWX: Short = 5 + val SVG_TRANSFORM_SKEWY: Short = 6 + } +} + +native public trait SVGTransformList { + var numberOfItems: Int + get() = noImpl + set(value) = noImpl + fun clear(): Unit = noImpl + fun initialize(newItem: SVGTransform): SVGTransform = noImpl + fun getItem(index: Int): SVGTransform = noImpl + fun insertItemBefore(newItem: SVGTransform, index: Int): SVGTransform = noImpl + fun replaceItem(newItem: SVGTransform, index: Int): SVGTransform = noImpl + fun removeItem(index: Int): SVGTransform = noImpl + fun appendItem(newItem: SVGTransform): SVGTransform = noImpl + fun createSVGTransformFromMatrix(matrix: SVGMatrix): SVGTransform = noImpl + fun consolidate(): SVGTransform = noImpl +} + +native public trait SVGAnimatedTransformList { + var baseVal: SVGTransformList + get() = noImpl + set(value) = noImpl + var animVal: SVGTransformList + get() = noImpl + set(value) = noImpl +} + +native public trait SVGPreserveAspectRatio { + var align: dynamic + get() = noImpl + set(value) = noImpl + var meetOrSlice: dynamic + get() = noImpl + set(value) = noImpl + + companion object { + val SVG_PRESERVEASPECTRATIO_UNKNOWN: Short = 0 + val SVG_PRESERVEASPECTRATIO_NONE: Short = 1 + val SVG_PRESERVEASPECTRATIO_XMINYMIN: Short = 2 + val SVG_PRESERVEASPECTRATIO_XMIDYMIN: Short = 3 + val SVG_PRESERVEASPECTRATIO_XMAXYMIN: Short = 4 + val SVG_PRESERVEASPECTRATIO_XMINYMID: Short = 5 + val SVG_PRESERVEASPECTRATIO_XMIDYMID: Short = 6 + val SVG_PRESERVEASPECTRATIO_XMAXYMID: Short = 7 + val SVG_PRESERVEASPECTRATIO_XMINYMAX: Short = 8 + val SVG_PRESERVEASPECTRATIO_XMIDYMAX: Short = 9 + val SVG_PRESERVEASPECTRATIO_XMAXYMAX: Short = 10 + val SVG_MEETORSLICE_UNKNOWN: Short = 0 + val SVG_MEETORSLICE_MEET: Short = 1 + val SVG_MEETORSLICE_SLICE: Short = 2 + } +} + +native public trait SVGAnimatedPreserveAspectRatio { + var baseVal: SVGPreserveAspectRatio + get() = noImpl + set(value) = noImpl + var animVal: SVGPreserveAspectRatio + get() = noImpl + set(value) = noImpl +} + +native public trait SVGPathSeg { + var pathSegType: Short + get() = noImpl + set(value) = noImpl + var pathSegTypeAsLetter: String + get() = noImpl + set(value) = noImpl + + companion object { + val PATHSEG_UNKNOWN: Short = 0 + val PATHSEG_CLOSEPATH: Short = 1 + val PATHSEG_MOVETO_ABS: Short = 2 + val PATHSEG_MOVETO_REL: Short = 3 + val PATHSEG_LINETO_ABS: Short = 4 + val PATHSEG_LINETO_REL: Short = 5 + val PATHSEG_CURVETO_CUBIC_ABS: Short = 6 + val PATHSEG_CURVETO_CUBIC_REL: Short = 7 + val PATHSEG_CURVETO_QUADRATIC_ABS: Short = 8 + val PATHSEG_CURVETO_QUADRATIC_REL: Short = 9 + val PATHSEG_ARC_ABS: Short = 10 + val PATHSEG_ARC_REL: Short = 11 + val PATHSEG_LINETO_HORIZONTAL_ABS: Short = 12 + val PATHSEG_LINETO_HORIZONTAL_REL: Short = 13 + val PATHSEG_LINETO_VERTICAL_ABS: Short = 14 + val PATHSEG_LINETO_VERTICAL_REL: Short = 15 + val PATHSEG_CURVETO_CUBIC_SMOOTH_ABS: Short = 16 + val PATHSEG_CURVETO_CUBIC_SMOOTH_REL: Short = 17 + val PATHSEG_CURVETO_QUADRATIC_SMOOTH_ABS: Short = 18 + val PATHSEG_CURVETO_QUADRATIC_SMOOTH_REL: Short = 19 + } +} + +native public trait SVGPathSegClosePath : SVGPathSeg { +} + +native public trait SVGPathSegMovetoAbs : SVGPathSeg { + var x: dynamic + get() = noImpl + set(value) = noImpl + var y: dynamic + get() = noImpl + set(value) = noImpl +} + +native public trait SVGPathSegMovetoRel : SVGPathSeg { + var x: dynamic + get() = noImpl + set(value) = noImpl + var y: dynamic + get() = noImpl + set(value) = noImpl +} + +native public trait SVGPathSegLinetoAbs : SVGPathSeg { + var x: dynamic + get() = noImpl + set(value) = noImpl + var y: dynamic + get() = noImpl + set(value) = noImpl +} + +native public trait SVGPathSegLinetoRel : SVGPathSeg { + var x: dynamic + get() = noImpl + set(value) = noImpl + var y: dynamic + get() = noImpl + set(value) = noImpl +} + +native public trait SVGPathSegCurvetoCubicAbs : SVGPathSeg { + var x: dynamic + get() = noImpl + set(value) = noImpl + var y: dynamic + get() = noImpl + set(value) = noImpl + var x1: dynamic + get() = noImpl + set(value) = noImpl + var y1: dynamic + get() = noImpl + set(value) = noImpl + var x2: dynamic + get() = noImpl + set(value) = noImpl + var y2: dynamic + get() = noImpl + set(value) = noImpl +} + +native public trait SVGPathSegCurvetoCubicRel : SVGPathSeg { + var x: dynamic + get() = noImpl + set(value) = noImpl + var y: dynamic + get() = noImpl + set(value) = noImpl + var x1: dynamic + get() = noImpl + set(value) = noImpl + var y1: dynamic + get() = noImpl + set(value) = noImpl + var x2: dynamic + get() = noImpl + set(value) = noImpl + var y2: dynamic + get() = noImpl + set(value) = noImpl +} + +native public trait SVGPathSegCurvetoQuadraticAbs : SVGPathSeg { + var x: dynamic + get() = noImpl + set(value) = noImpl + var y: dynamic + get() = noImpl + set(value) = noImpl + var x1: dynamic + get() = noImpl + set(value) = noImpl + var y1: dynamic + get() = noImpl + set(value) = noImpl +} + +native public trait SVGPathSegCurvetoQuadraticRel : SVGPathSeg { + var x: dynamic + get() = noImpl + set(value) = noImpl + var y: dynamic + get() = noImpl + set(value) = noImpl + var x1: dynamic + get() = noImpl + set(value) = noImpl + var y1: dynamic + get() = noImpl + set(value) = noImpl +} + +native public trait SVGPathSegArcAbs : SVGPathSeg { + var x: dynamic + get() = noImpl + set(value) = noImpl + var y: dynamic + get() = noImpl + set(value) = noImpl + var r1: dynamic + get() = noImpl + set(value) = noImpl + var r2: dynamic + get() = noImpl + set(value) = noImpl + var angle: dynamic + get() = noImpl + set(value) = noImpl + var largeArcFlag: dynamic + get() = noImpl + set(value) = noImpl + var sweepFlag: dynamic + get() = noImpl + set(value) = noImpl +} + +native public trait SVGPathSegArcRel : SVGPathSeg { + var x: dynamic + get() = noImpl + set(value) = noImpl + var y: dynamic + get() = noImpl + set(value) = noImpl + var r1: dynamic + get() = noImpl + set(value) = noImpl + var r2: dynamic + get() = noImpl + set(value) = noImpl + var angle: dynamic + get() = noImpl + set(value) = noImpl + var largeArcFlag: dynamic + get() = noImpl + set(value) = noImpl + var sweepFlag: dynamic + get() = noImpl + set(value) = noImpl +} + +native public trait SVGPathSegLinetoHorizontalAbs : SVGPathSeg { + var x: dynamic + get() = noImpl + set(value) = noImpl +} + +native public trait SVGPathSegLinetoHorizontalRel : SVGPathSeg { + var x: dynamic + get() = noImpl + set(value) = noImpl +} + +native public trait SVGPathSegLinetoVerticalAbs : SVGPathSeg { + var y: dynamic + get() = noImpl + set(value) = noImpl +} + +native public trait SVGPathSegLinetoVerticalRel : SVGPathSeg { + var y: dynamic + get() = noImpl + set(value) = noImpl +} + +native public trait SVGPathSegCurvetoCubicSmoothAbs : SVGPathSeg { + var x: dynamic + get() = noImpl + set(value) = noImpl + var y: dynamic + get() = noImpl + set(value) = noImpl + var x2: dynamic + get() = noImpl + set(value) = noImpl + var y2: dynamic + get() = noImpl + set(value) = noImpl +} + +native public trait SVGPathSegCurvetoCubicSmoothRel : SVGPathSeg { + var x: dynamic + get() = noImpl + set(value) = noImpl + var y: dynamic + get() = noImpl + set(value) = noImpl + var x2: dynamic + get() = noImpl + set(value) = noImpl + var y2: dynamic + get() = noImpl + set(value) = noImpl +} + +native public trait SVGPathSegCurvetoQuadraticSmoothAbs : SVGPathSeg { + var x: dynamic + get() = noImpl + set(value) = noImpl + var y: dynamic + get() = noImpl + set(value) = noImpl +} + +native public trait SVGPathSegCurvetoQuadraticSmoothRel : SVGPathSeg { + var x: dynamic + get() = noImpl + set(value) = noImpl + var y: dynamic + get() = noImpl + set(value) = noImpl +} + +native public trait SVGPathSegList { + var numberOfItems: Int + get() = noImpl + set(value) = noImpl + fun clear(): Unit = noImpl + fun initialize(newItem: SVGPathSeg): SVGPathSeg = noImpl + fun getItem(index: Int): SVGPathSeg = noImpl + fun insertItemBefore(newItem: SVGPathSeg, index: Int): SVGPathSeg = noImpl + fun replaceItem(newItem: SVGPathSeg, index: Int): SVGPathSeg = noImpl + fun removeItem(index: Int): SVGPathSeg = noImpl + fun appendItem(newItem: SVGPathSeg): SVGPathSeg = noImpl +} + +native public trait SVGAnimatedPathData { + var pathSegList: SVGPathSegList + get() = noImpl + set(value) = noImpl + var normalizedPathSegList: SVGPathSegList + get() = noImpl + set(value) = noImpl + var animatedPathSegList: SVGPathSegList + get() = noImpl + set(value) = noImpl + var animatedNormalizedPathSegList: SVGPathSegList + get() = noImpl + set(value) = noImpl +} + +native public trait SVGPathElement : SVGElement, SVGTests, SVGLangSpace, SVGExternalResourcesRequired, SVGStylable, SVGTransformable, SVGAnimatedPathData { + var pathLength: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + fun getTotalLength(): Float = noImpl + fun getPointAtLength(distance: Float): SVGPoint = noImpl + fun getPathSegAtLength(distance: Float): Int = noImpl + fun createSVGPathSegClosePath(): SVGPathSegClosePath = noImpl + fun createSVGPathSegMovetoAbs(x: Float, y: Float): SVGPathSegMovetoAbs = noImpl + fun createSVGPathSegMovetoRel(x: Float, y: Float): SVGPathSegMovetoRel = noImpl + fun createSVGPathSegLinetoAbs(x: Float, y: Float): SVGPathSegLinetoAbs = noImpl + fun createSVGPathSegLinetoRel(x: Float, y: Float): SVGPathSegLinetoRel = noImpl + fun createSVGPathSegCurvetoCubicAbs(x: Float, y: Float, x1: Float, y1: Float, x2: Float, y2: Float): SVGPathSegCurvetoCubicAbs = noImpl + fun createSVGPathSegCurvetoCubicRel(x: Float, y: Float, x1: Float, y1: Float, x2: Float, y2: Float): SVGPathSegCurvetoCubicRel = noImpl + fun createSVGPathSegCurvetoQuadraticAbs(x: Float, y: Float, x1: Float, y1: Float): SVGPathSegCurvetoQuadraticAbs = noImpl + fun createSVGPathSegCurvetoQuadraticRel(x: Float, y: Float, x1: Float, y1: Float): SVGPathSegCurvetoQuadraticRel = noImpl + fun createSVGPathSegArcAbs(x: Float, y: Float, r1: Float, r2: Float, angle: Float, largeArcFlag: Boolean, sweepFlag: Boolean): SVGPathSegArcAbs = noImpl + fun createSVGPathSegArcRel(x: Float, y: Float, r1: Float, r2: Float, angle: Float, largeArcFlag: Boolean, sweepFlag: Boolean): SVGPathSegArcRel = noImpl + fun createSVGPathSegLinetoHorizontalAbs(x: Float): SVGPathSegLinetoHorizontalAbs = noImpl + fun createSVGPathSegLinetoHorizontalRel(x: Float): SVGPathSegLinetoHorizontalRel = noImpl + fun createSVGPathSegLinetoVerticalAbs(y: Float): SVGPathSegLinetoVerticalAbs = noImpl + fun createSVGPathSegLinetoVerticalRel(y: Float): SVGPathSegLinetoVerticalRel = noImpl + fun createSVGPathSegCurvetoCubicSmoothAbs(x: Float, y: Float, x2: Float, y2: Float): SVGPathSegCurvetoCubicSmoothAbs = noImpl + fun createSVGPathSegCurvetoCubicSmoothRel(x: Float, y: Float, x2: Float, y2: Float): SVGPathSegCurvetoCubicSmoothRel = noImpl + fun createSVGPathSegCurvetoQuadraticSmoothAbs(x: Float, y: Float): SVGPathSegCurvetoQuadraticSmoothAbs = noImpl + fun createSVGPathSegCurvetoQuadraticSmoothRel(x: Float, y: Float): SVGPathSegCurvetoQuadraticSmoothRel = noImpl +} + +native public trait SVGRectElement : SVGElement, SVGTests, SVGLangSpace, SVGExternalResourcesRequired, SVGStylable, SVGTransformable { + var x: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var y: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var width: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var height: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var rx: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var ry: SVGAnimatedLength + get() = noImpl + set(value) = noImpl +} + +native public trait SVGCircleElement : SVGElement, SVGTests, SVGLangSpace, SVGExternalResourcesRequired, SVGStylable, SVGTransformable { + var cx: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var cy: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var r: SVGAnimatedLength + get() = noImpl + set(value) = noImpl +} + +native public trait SVGEllipseElement : SVGElement, SVGTests, SVGLangSpace, SVGExternalResourcesRequired, SVGStylable, SVGTransformable { + var cx: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var cy: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var rx: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var ry: SVGAnimatedLength + get() = noImpl + set(value) = noImpl +} + +native public trait SVGLineElement : SVGElement, SVGTests, SVGLangSpace, SVGExternalResourcesRequired, SVGStylable, SVGTransformable { + var x1: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var y1: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var x2: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var y2: SVGAnimatedLength + get() = noImpl + set(value) = noImpl +} + +native public trait SVGAnimatedPoints { + var points: SVGPointList + get() = noImpl + set(value) = noImpl + var animatedPoints: SVGPointList + get() = noImpl + set(value) = noImpl +} + +native public trait SVGPolylineElement : SVGElement, SVGTests, SVGLangSpace, SVGExternalResourcesRequired, SVGStylable, SVGTransformable, SVGAnimatedPoints { +} + +native public trait SVGPolygonElement : SVGElement, SVGTests, SVGLangSpace, SVGExternalResourcesRequired, SVGStylable, SVGTransformable, SVGAnimatedPoints { +} + +native public trait SVGTextContentElement : SVGElement, SVGTests, SVGLangSpace, SVGExternalResourcesRequired, SVGStylable { + var textLength: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var lengthAdjust: SVGAnimatedEnumeration + get() = noImpl + set(value) = noImpl + fun getNumberOfChars(): Int = noImpl + fun getComputedTextLength(): Float = noImpl + fun getSubStringLength(charnum: Int, nchars: Int): Float = noImpl + fun getStartPositionOfChar(charnum: Int): SVGPoint = noImpl + fun getEndPositionOfChar(charnum: Int): SVGPoint = noImpl + fun getExtentOfChar(charnum: Int): SVGRect = noImpl + fun getRotationOfChar(charnum: Int): Float = noImpl + fun getCharNumAtPosition(point: SVGPoint): Int = noImpl + fun selectSubString(charnum: Int, nchars: Int): Unit = noImpl + + companion object { + val LENGTHADJUST_UNKNOWN: Short = 0 + val LENGTHADJUST_SPACING: Short = 1 + val LENGTHADJUST_SPACINGANDGLYPHS: Short = 2 + } +} + +native public trait SVGTextPositioningElement : SVGTextContentElement { + var x: SVGAnimatedLengthList + get() = noImpl + set(value) = noImpl + var y: SVGAnimatedLengthList + get() = noImpl + set(value) = noImpl + var dx: SVGAnimatedLengthList + get() = noImpl + set(value) = noImpl + var dy: SVGAnimatedLengthList + get() = noImpl + set(value) = noImpl + var rotate: SVGAnimatedNumberList + get() = noImpl + set(value) = noImpl +} + +native public trait SVGTextElement : SVGTextPositioningElement, SVGTransformable { +} + +native public trait SVGTSpanElement : SVGTextPositioningElement { +} + +native public trait SVGTRefElement : SVGTextPositioningElement, SVGURIReference { +} + +native public trait SVGTextPathElement : SVGTextContentElement, SVGURIReference { + var startOffset: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var method: SVGAnimatedEnumeration + get() = noImpl + set(value) = noImpl + var spacing: SVGAnimatedEnumeration + get() = noImpl + set(value) = noImpl + + companion object { + val TEXTPATH_METHODTYPE_UNKNOWN: Short = 0 + val TEXTPATH_METHODTYPE_ALIGN: Short = 1 + val TEXTPATH_METHODTYPE_STRETCH: Short = 2 + val TEXTPATH_SPACINGTYPE_UNKNOWN: Short = 0 + val TEXTPATH_SPACINGTYPE_AUTO: Short = 1 + val TEXTPATH_SPACINGTYPE_EXACT: Short = 2 + } +} + +native public trait SVGAltGlyphElement : SVGTextPositioningElement, SVGURIReference { + var glyphRef: dynamic + get() = noImpl + set(value) = noImpl + var format: dynamic + get() = noImpl + set(value) = noImpl +} + +native public trait SVGAltGlyphDefElement : SVGElement { +} + +native public trait SVGAltGlyphItemElement : SVGElement { +} + +native public trait SVGGlyphRefElement : SVGElement, SVGURIReference, SVGStylable { + var glyphRef: dynamic + get() = noImpl + set(value) = noImpl + var format: dynamic + get() = noImpl + set(value) = noImpl + var x: dynamic + get() = noImpl + set(value) = noImpl + var y: dynamic + get() = noImpl + set(value) = noImpl + var dx: dynamic + get() = noImpl + set(value) = noImpl + var dy: dynamic + get() = noImpl + set(value) = noImpl +} + +native public trait SVGPaint : SVGColor { + var paintType: Short + get() = noImpl + set(value) = noImpl + var uri: String + get() = noImpl + set(value) = noImpl + fun setUri(uri: String): Unit = noImpl + fun setPaint(paintType: Short, uri: String, rgbColor: String, iccColor: String): Unit = noImpl + + companion object { + val SVG_PAINTTYPE_UNKNOWN: Short = 0 + val SVG_PAINTTYPE_RGBCOLOR: Short = 1 + val SVG_PAINTTYPE_RGBCOLOR_ICCCOLOR: Short = 2 + val SVG_PAINTTYPE_NONE: Short = 101 + val SVG_PAINTTYPE_CURRENTCOLOR: Short = 102 + val SVG_PAINTTYPE_URI_NONE: Short = 103 + val SVG_PAINTTYPE_URI_CURRENTCOLOR: Short = 104 + val SVG_PAINTTYPE_URI_RGBCOLOR: Short = 105 + val SVG_PAINTTYPE_URI_RGBCOLOR_ICCCOLOR: Short = 106 + val SVG_PAINTTYPE_URI: Short = 107 + } +} + +native public trait SVGMarkerElement : SVGElement, SVGLangSpace, SVGExternalResourcesRequired, SVGStylable, SVGFitToViewBox { + var refX: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var refY: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var markerUnits: SVGAnimatedEnumeration + get() = noImpl + set(value) = noImpl + var markerWidth: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var markerHeight: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var orientType: SVGAnimatedEnumeration + get() = noImpl + set(value) = noImpl + var orientAngle: SVGAnimatedAngle + get() = noImpl + set(value) = noImpl + fun setOrientToAuto(): Unit = noImpl + fun setOrientToAngle(angle: SVGAngle): Unit = noImpl + + companion object { + val SVG_MARKERUNITS_UNKNOWN: Short = 0 + val SVG_MARKERUNITS_USERSPACEONUSE: Short = 1 + val SVG_MARKERUNITS_STROKEWIDTH: Short = 2 + val SVG_MARKER_ORIENT_UNKNOWN: Short = 0 + val SVG_MARKER_ORIENT_AUTO: Short = 1 + val SVG_MARKER_ORIENT_ANGLE: Short = 2 + } +} + +native public trait SVGColorProfileElement : SVGElement, SVGURIReference, SVGRenderingIntent { + var local: String + get() = noImpl + set(value) = noImpl + var name: String + get() = noImpl + set(value) = noImpl + var renderingIntent: Short + get() = noImpl + set(value) = noImpl +} + +native public trait SVGColorProfileRule : SVGCSSRule, SVGRenderingIntent { + var src: dynamic + get() = noImpl + set(value) = noImpl + var name: dynamic + get() = noImpl + set(value) = noImpl + var renderingIntent: dynamic + get() = noImpl + set(value) = noImpl +} + +native public trait SVGGradientElement : SVGElement, SVGURIReference, SVGExternalResourcesRequired, SVGStylable, SVGUnitTypes { + var gradientUnits: SVGAnimatedEnumeration + get() = noImpl + set(value) = noImpl + var gradientTransform: SVGAnimatedTransformList + get() = noImpl + set(value) = noImpl + var spreadMethod: SVGAnimatedEnumeration + get() = noImpl + set(value) = noImpl + + companion object { + val SVG_SPREADMETHOD_UNKNOWN: Short = 0 + val SVG_SPREADMETHOD_PAD: Short = 1 + val SVG_SPREADMETHOD_REFLECT: Short = 2 + val SVG_SPREADMETHOD_REPEAT: Short = 3 + } +} + +native public trait SVGLinearGradientElement : SVGGradientElement { + var x1: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var y1: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var x2: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var y2: SVGAnimatedLength + get() = noImpl + set(value) = noImpl +} + +native public trait SVGRadialGradientElement : SVGGradientElement { + var cx: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var cy: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var r: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var fx: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var fy: SVGAnimatedLength + get() = noImpl + set(value) = noImpl +} + +native public trait SVGStopElement : SVGElement, SVGStylable { + var offset: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl +} + +native public trait SVGPatternElement : SVGElement, SVGURIReference, SVGTests, SVGLangSpace, SVGExternalResourcesRequired, SVGStylable, SVGFitToViewBox, SVGUnitTypes { + var patternUnits: SVGAnimatedEnumeration + get() = noImpl + set(value) = noImpl + var patternContentUnits: SVGAnimatedEnumeration + get() = noImpl + set(value) = noImpl + var patternTransform: SVGAnimatedTransformList + get() = noImpl + set(value) = noImpl + var x: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var y: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var width: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var height: SVGAnimatedLength + get() = noImpl + set(value) = noImpl +} + +native public trait SVGClipPathElement : SVGElement, SVGTests, SVGLangSpace, SVGExternalResourcesRequired, SVGStylable, SVGTransformable, SVGUnitTypes { + var clipPathUnits: SVGAnimatedEnumeration + get() = noImpl + set(value) = noImpl +} + +native public trait SVGMaskElement : SVGElement, SVGTests, SVGLangSpace, SVGExternalResourcesRequired, SVGStylable, SVGUnitTypes { + var maskUnits: SVGAnimatedEnumeration + get() = noImpl + set(value) = noImpl + var maskContentUnits: SVGAnimatedEnumeration + get() = noImpl + set(value) = noImpl + var x: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var y: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var width: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var height: SVGAnimatedLength + get() = noImpl + set(value) = noImpl +} + +native public trait SVGFilterElement : SVGElement, SVGURIReference, SVGLangSpace, SVGExternalResourcesRequired, SVGStylable, SVGUnitTypes { + var filterUnits: SVGAnimatedEnumeration + get() = noImpl + set(value) = noImpl + var primitiveUnits: SVGAnimatedEnumeration + get() = noImpl + set(value) = noImpl + var x: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var y: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var width: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var height: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var filterResX: SVGAnimatedInteger + get() = noImpl + set(value) = noImpl + var filterResY: SVGAnimatedInteger + get() = noImpl + set(value) = noImpl + fun setFilterRes(filterResX: Int, filterResY: Int): Unit = noImpl +} + +native public trait SVGFilterPrimitiveStandardAttributes : SVGStylable { + var x: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var y: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var width: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var height: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var result: SVGAnimatedString + get() = noImpl + set(value) = noImpl +} + +native public trait SVGFEBlendElement : SVGElement, SVGFilterPrimitiveStandardAttributes { + var in1: SVGAnimatedString + get() = noImpl + set(value) = noImpl + var in2: SVGAnimatedString + get() = noImpl + set(value) = noImpl + var mode: SVGAnimatedEnumeration + get() = noImpl + set(value) = noImpl + + companion object { + val SVG_FEBLEND_MODE_UNKNOWN: Short = 0 + val SVG_FEBLEND_MODE_NORMAL: Short = 1 + val SVG_FEBLEND_MODE_MULTIPLY: Short = 2 + val SVG_FEBLEND_MODE_SCREEN: Short = 3 + val SVG_FEBLEND_MODE_DARKEN: Short = 4 + val SVG_FEBLEND_MODE_LIGHTEN: Short = 5 + } +} + +native public trait SVGFEColorMatrixElement : SVGElement, SVGFilterPrimitiveStandardAttributes { + var in1: SVGAnimatedString + get() = noImpl + set(value) = noImpl + var type: SVGAnimatedEnumeration + get() = noImpl + set(value) = noImpl + var values: SVGAnimatedNumberList + get() = noImpl + set(value) = noImpl + + companion object { + val SVG_FECOLORMATRIX_TYPE_UNKNOWN: Short = 0 + val SVG_FECOLORMATRIX_TYPE_MATRIX: Short = 1 + val SVG_FECOLORMATRIX_TYPE_SATURATE: Short = 2 + val SVG_FECOLORMATRIX_TYPE_HUEROTATE: Short = 3 + val SVG_FECOLORMATRIX_TYPE_LUMINANCETOALPHA: Short = 4 + } +} + +native public trait SVGFEComponentTransferElement : SVGElement, SVGFilterPrimitiveStandardAttributes { + var in1: SVGAnimatedString + get() = noImpl + set(value) = noImpl +} + +native public trait SVGComponentTransferFunctionElement : SVGElement { + var type: SVGAnimatedEnumeration + get() = noImpl + set(value) = noImpl + var tableValues: SVGAnimatedNumberList + get() = noImpl + set(value) = noImpl + var slope: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var intercept: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var amplitude: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var exponent: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var offset: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + + companion object { + val SVG_FECOMPONENTTRANSFER_TYPE_UNKNOWN: Short = 0 + val SVG_FECOMPONENTTRANSFER_TYPE_IDENTITY: Short = 1 + val SVG_FECOMPONENTTRANSFER_TYPE_TABLE: Short = 2 + val SVG_FECOMPONENTTRANSFER_TYPE_DISCRETE: Short = 3 + val SVG_FECOMPONENTTRANSFER_TYPE_LINEAR: Short = 4 + val SVG_FECOMPONENTTRANSFER_TYPE_GAMMA: Short = 5 + } +} + +native public trait SVGFEFuncRElement : SVGComponentTransferFunctionElement { +} + +native public trait SVGFEFuncGElement : SVGComponentTransferFunctionElement { +} + +native public trait SVGFEFuncBElement : SVGComponentTransferFunctionElement { +} + +native public trait SVGFEFuncAElement : SVGComponentTransferFunctionElement { +} + +native public trait SVGFECompositeElement : SVGElement, SVGFilterPrimitiveStandardAttributes { + var in1: SVGAnimatedString + get() = noImpl + set(value) = noImpl + var in2: SVGAnimatedString + get() = noImpl + set(value) = noImpl + var operator: SVGAnimatedEnumeration + get() = noImpl + set(value) = noImpl + var k1: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var k2: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var k3: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var k4: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + + companion object { + val SVG_FECOMPOSITE_OPERATOR_UNKNOWN: Short = 0 + val SVG_FECOMPOSITE_OPERATOR_OVER: Short = 1 + val SVG_FECOMPOSITE_OPERATOR_IN: Short = 2 + val SVG_FECOMPOSITE_OPERATOR_OUT: Short = 3 + val SVG_FECOMPOSITE_OPERATOR_ATOP: Short = 4 + val SVG_FECOMPOSITE_OPERATOR_XOR: Short = 5 + val SVG_FECOMPOSITE_OPERATOR_ARITHMETIC: Short = 6 + } +} + +native public trait SVGFEConvolveMatrixElement : SVGElement, SVGFilterPrimitiveStandardAttributes { + var in1: SVGAnimatedString + get() = noImpl + set(value) = noImpl + var orderX: SVGAnimatedInteger + get() = noImpl + set(value) = noImpl + var orderY: SVGAnimatedInteger + get() = noImpl + set(value) = noImpl + var kernelMatrix: SVGAnimatedNumberList + get() = noImpl + set(value) = noImpl + var divisor: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var bias: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var targetX: SVGAnimatedInteger + get() = noImpl + set(value) = noImpl + var targetY: SVGAnimatedInteger + get() = noImpl + set(value) = noImpl + var edgeMode: SVGAnimatedEnumeration + get() = noImpl + set(value) = noImpl + var kernelUnitLengthX: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var kernelUnitLengthY: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var preserveAlpha: SVGAnimatedBoolean + get() = noImpl + set(value) = noImpl + + companion object { + val SVG_EDGEMODE_UNKNOWN: Short = 0 + val SVG_EDGEMODE_DUPLICATE: Short = 1 + val SVG_EDGEMODE_WRAP: Short = 2 + val SVG_EDGEMODE_NONE: Short = 3 + } +} + +native public trait SVGFEDiffuseLightingElement : SVGElement, SVGFilterPrimitiveStandardAttributes { + var in1: SVGAnimatedString + get() = noImpl + set(value) = noImpl + var surfaceScale: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var diffuseConstant: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var kernelUnitLengthX: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var kernelUnitLengthY: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl +} + +native public trait SVGFEDistantLightElement : SVGElement { + var azimuth: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var elevation: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl +} + +native public trait SVGFEPointLightElement : SVGElement { + var x: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var y: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var z: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl +} + +native public trait SVGFESpotLightElement : SVGElement { + var x: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var y: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var z: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var pointsAtX: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var pointsAtY: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var pointsAtZ: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var specularExponent: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var limitingConeAngle: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl +} + +native public trait SVGFEDisplacementMapElement : SVGElement, SVGFilterPrimitiveStandardAttributes { + var in1: SVGAnimatedString + get() = noImpl + set(value) = noImpl + var in2: SVGAnimatedString + get() = noImpl + set(value) = noImpl + var scale: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var xChannelSelector: SVGAnimatedEnumeration + get() = noImpl + set(value) = noImpl + var yChannelSelector: SVGAnimatedEnumeration + get() = noImpl + set(value) = noImpl + + companion object { + val SVG_CHANNEL_UNKNOWN: Short = 0 + val SVG_CHANNEL_R: Short = 1 + val SVG_CHANNEL_G: Short = 2 + val SVG_CHANNEL_B: Short = 3 + val SVG_CHANNEL_A: Short = 4 + } +} + +native public trait SVGFEFloodElement : SVGElement, SVGFilterPrimitiveStandardAttributes { +} + +native public trait SVGFEGaussianBlurElement : SVGElement, SVGFilterPrimitiveStandardAttributes { + var in1: SVGAnimatedString + get() = noImpl + set(value) = noImpl + var stdDeviationX: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var stdDeviationY: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + fun setStdDeviation(stdDeviationX: Float, stdDeviationY: Float): Unit = noImpl +} + +native public trait SVGFEImageElement : SVGElement, SVGURIReference, SVGLangSpace, SVGExternalResourcesRequired, SVGFilterPrimitiveStandardAttributes { + var preserveAspectRatio: SVGAnimatedPreserveAspectRatio + get() = noImpl + set(value) = noImpl +} + +native public trait SVGFEMergeElement : SVGElement, SVGFilterPrimitiveStandardAttributes { +} + +native public trait SVGFEMergeNodeElement : SVGElement { + var in1: SVGAnimatedString + get() = noImpl + set(value) = noImpl +} + +native public trait SVGFEMorphologyElement : SVGElement, SVGFilterPrimitiveStandardAttributes { + var in1: SVGAnimatedString + get() = noImpl + set(value) = noImpl + var operator: SVGAnimatedEnumeration + get() = noImpl + set(value) = noImpl + var radiusX: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var radiusY: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + + companion object { + val SVG_MORPHOLOGY_OPERATOR_UNKNOWN: Short = 0 + val SVG_MORPHOLOGY_OPERATOR_ERODE: Short = 1 + val SVG_MORPHOLOGY_OPERATOR_DILATE: Short = 2 + } +} + +native public trait SVGFEOffsetElement : SVGElement, SVGFilterPrimitiveStandardAttributes { + var in1: SVGAnimatedString + get() = noImpl + set(value) = noImpl + var dx: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var dy: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl +} + +native public trait SVGFESpecularLightingElement : SVGElement, SVGFilterPrimitiveStandardAttributes { + var in1: SVGAnimatedString + get() = noImpl + set(value) = noImpl + var surfaceScale: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var specularConstant: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var specularExponent: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var kernelUnitLengthX: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var kernelUnitLengthY: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl +} + +native public trait SVGFETileElement : SVGElement, SVGFilterPrimitiveStandardAttributes { + var in1: SVGAnimatedString + get() = noImpl + set(value) = noImpl +} + +native public trait SVGFETurbulenceElement : SVGElement, SVGFilterPrimitiveStandardAttributes { + var baseFrequencyX: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var baseFrequencyY: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var numOctaves: SVGAnimatedInteger + get() = noImpl + set(value) = noImpl + var seed: SVGAnimatedNumber + get() = noImpl + set(value) = noImpl + var stitchTiles: SVGAnimatedEnumeration + get() = noImpl + set(value) = noImpl + var type: SVGAnimatedEnumeration + get() = noImpl + set(value) = noImpl + + companion object { + val SVG_TURBULENCE_TYPE_UNKNOWN: Short = 0 + val SVG_TURBULENCE_TYPE_FRACTALNOISE: Short = 1 + val SVG_TURBULENCE_TYPE_TURBULENCE: Short = 2 + val SVG_STITCHTYPE_UNKNOWN: Short = 0 + val SVG_STITCHTYPE_STITCH: Short = 1 + val SVG_STITCHTYPE_NOSTITCH: Short = 2 + } +} + +native public trait SVGCursorElement : SVGElement, SVGURIReference, SVGTests, SVGExternalResourcesRequired { + var x: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var y: SVGAnimatedLength + get() = noImpl + set(value) = noImpl +} + +native public trait SVGAElement : SVGElement, SVGURIReference, SVGTests, SVGLangSpace, SVGExternalResourcesRequired, SVGStylable, SVGTransformable { + var target: SVGAnimatedString + get() = noImpl + set(value) = noImpl +} + +native public trait SVGViewElement : SVGElement, SVGExternalResourcesRequired, SVGFitToViewBox, SVGZoomAndPan { + var viewTarget: SVGStringList + get() = noImpl + set(value) = noImpl +} + +native public trait SVGScriptElement : SVGElement, SVGURIReference, SVGExternalResourcesRequired { + var type: dynamic + get() = noImpl + set(value) = noImpl +} + +native public open class SVGZoomEvent : UIEvent(noImpl, noImpl) { + var zoomRectScreen: SVGRect + get() = noImpl + set(value) = noImpl + var previousScale: Float + get() = noImpl + set(value) = noImpl + var previousTranslate: SVGPoint + get() = noImpl + set(value) = noImpl + var newScale: Float + get() = noImpl + set(value) = noImpl + var newTranslate: SVGPoint + get() = noImpl + set(value) = noImpl +} + +native public trait ElementTimeControl { + fun beginElement(): Unit = noImpl + fun beginElementAt(offset: Float): Unit = noImpl + fun endElement(): Unit = noImpl + fun endElementAt(offset: Float): Unit = noImpl +} + +native public open class TimeEvent : Event(noImpl, noImpl) { + var view: dynamic + get() = noImpl + set(value) = noImpl + var detail: Int + get() = noImpl + set(value) = noImpl + fun initTimeEvent(typeArg: String, viewArg: dynamic, detailArg: Int): Unit = noImpl +} + +native public trait SVGAnimationElement : SVGElement, SVGTests, SVGExternalResourcesRequired, ElementTimeControl { + var targetElement: SVGElement + get() = noImpl + set(value) = noImpl + fun getStartTime(): Float = noImpl + fun getCurrentTime(): Float = noImpl + fun getSimpleDuration(): Float = noImpl +} + +native public trait SVGAnimateElement : SVGAnimationElement, SVGStylable { +} + +native public trait SVGSetElement : SVGAnimationElement { +} + +native public trait SVGAnimateMotionElement : SVGAnimationElement { +} + +native public trait SVGMPathElement : SVGElement, SVGURIReference, SVGExternalResourcesRequired { +} + +native public trait SVGAnimateColorElement : SVGAnimationElement, SVGStylable { +} + +native public trait SVGAnimateTransformElement : SVGAnimationElement { +} + +native public trait SVGFontElement : SVGElement, SVGExternalResourcesRequired, SVGStylable { +} + +native public trait SVGGlyphElement : SVGElement, SVGStylable { +} + +native public trait SVGMissingGlyphElement : SVGElement, SVGStylable { +} + +native public trait SVGHKernElement : SVGElement { +} + +native public trait SVGVKernElement : SVGElement { +} + +native public trait SVGFontFaceElement : SVGElement { +} + +native public trait SVGFontFaceSrcElement : SVGElement { +} + +native public trait SVGFontFaceUriElement : SVGElement { +} + +native public trait SVGFontFaceFormatElement : SVGElement { +} + +native public trait SVGFontFaceNameElement : SVGElement { +} + +native public trait SVGMetadataElement : SVGElement { +} + +native public trait SVGForeignObjectElement : SVGElement, SVGTests, SVGLangSpace, SVGExternalResourcesRequired, SVGStylable, SVGTransformable { + var x: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var y: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var width: SVGAnimatedLength + get() = noImpl + set(value) = noImpl + var height: SVGAnimatedLength + get() = noImpl + set(value) = noImpl +} + diff --git a/js/js.libraries/src/generated/org.w3c.fetch.kt b/js/js.libraries/src/generated/org.w3c.fetch.kt index f15b6c82ad6..25cff15e1ac 100644 --- a/js/js.libraries/src/generated/org.w3c.fetch.kt +++ b/js/js.libraries/src/generated/org.w3c.fetch.kt @@ -12,6 +12,7 @@ import org.w3c.dom.* import org.w3c.dom.css.* import org.w3c.dom.events.* import org.w3c.dom.parsing.* +import org.w3c.dom.svg.* import org.w3c.files.* import org.w3c.notifications.* import org.w3c.workers.* diff --git a/js/js.libraries/src/generated/org.w3c.files.kt b/js/js.libraries/src/generated/org.w3c.files.kt index 7a13b3635d6..3fbf3f65733 100644 --- a/js/js.libraries/src/generated/org.w3c.files.kt +++ b/js/js.libraries/src/generated/org.w3c.files.kt @@ -12,6 +12,7 @@ import org.w3c.dom.* import org.w3c.dom.css.* import org.w3c.dom.events.* import org.w3c.dom.parsing.* +import org.w3c.dom.svg.* import org.w3c.fetch.* import org.w3c.notifications.* import org.w3c.workers.* diff --git a/js/js.libraries/src/generated/org.w3c.notifications.kt b/js/js.libraries/src/generated/org.w3c.notifications.kt index ec7778b08f6..ac3513656ed 100644 --- a/js/js.libraries/src/generated/org.w3c.notifications.kt +++ b/js/js.libraries/src/generated/org.w3c.notifications.kt @@ -12,6 +12,7 @@ import org.w3c.dom.* import org.w3c.dom.css.* import org.w3c.dom.events.* import org.w3c.dom.parsing.* +import org.w3c.dom.svg.* import org.w3c.fetch.* import org.w3c.files.* import org.w3c.workers.* diff --git a/js/js.libraries/src/generated/org.w3c.workers.kt b/js/js.libraries/src/generated/org.w3c.workers.kt index 8d4863f13f9..adc59cf78dd 100644 --- a/js/js.libraries/src/generated/org.w3c.workers.kt +++ b/js/js.libraries/src/generated/org.w3c.workers.kt @@ -12,6 +12,7 @@ import org.w3c.dom.* import org.w3c.dom.css.* import org.w3c.dom.events.* import org.w3c.dom.parsing.* +import org.w3c.dom.svg.* import org.w3c.fetch.* import org.w3c.files.* import org.w3c.notifications.* diff --git a/js/js.libraries/src/generated/org.w3c.xhr.kt b/js/js.libraries/src/generated/org.w3c.xhr.kt index 7b3c58bbb94..92e1a809706 100644 --- a/js/js.libraries/src/generated/org.w3c.xhr.kt +++ b/js/js.libraries/src/generated/org.w3c.xhr.kt @@ -12,6 +12,7 @@ import org.w3c.dom.* import org.w3c.dom.css.* import org.w3c.dom.events.* import org.w3c.dom.parsing.* +import org.w3c.dom.svg.* import org.w3c.fetch.* import org.w3c.files.* import org.w3c.notifications.* diff --git a/libraries/idl/org.w3c.dom.svg.idl b/libraries/idl/org.w3c.dom.svg.idl new file mode 100644 index 00000000000..9331b8164e8 --- /dev/null +++ b/libraries/idl/org.w3c.dom.svg.idl @@ -0,0 +1,2757 @@ +namespace org.w3c.dom.svg; + + +interface SVGDocument : Document, + DocumentEvent { + readonly attribute DOMString title; + readonly attribute DOMString referrer; + readonly attribute DOMString domain; + readonly attribute DOMString URL; + readonly attribute SVGSVGElement rootElement; +}; +interface SVGSVGElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGLocatable, + SVGFitToViewBox, + SVGZoomAndPan, + DocumentEvent, + ViewCSS, + DocumentCSS { + + readonly attribute SVGAnimatedLength x; + readonly attribute SVGAnimatedLength y; + readonly attribute SVGAnimatedLength width; + readonly attribute SVGAnimatedLength height; + attribute DOMString contentScriptType setraises(DOMException); + attribute DOMString contentStyleType setraises(DOMException); + readonly attribute SVGRect viewport; + readonly attribute float pixelUnitToMillimeterX; + readonly attribute float pixelUnitToMillimeterY; + readonly attribute float screenPixelToMillimeterX; + readonly attribute float screenPixelToMillimeterY; + readonly attribute boolean useCurrentView; + readonly attribute SVGViewSpec currentView; + attribute float currentScale; + readonly attribute SVGPoint currentTranslate; + + unsigned long suspendRedraw(in unsigned long maxWaitMilliseconds); + void unsuspendRedraw(in unsigned long suspendHandleID); + void unsuspendRedrawAll(); + void forceRedraw(); + void pauseAnimations(); + void unpauseAnimations(); + boolean animationsPaused(); + float getCurrentTime(); + void setCurrentTime(in float seconds); + NodeList getIntersectionList(in SVGRect rect, in SVGElement referenceElement); + NodeList getEnclosureList(in SVGRect rect, in SVGElement referenceElement); + boolean checkIntersection(in SVGElement element, in SVGRect rect); + boolean checkEnclosure(in SVGElement element, in SVGRect rect); + void deselectAll(); + SVGNumber createSVGNumber(); + SVGLength createSVGLength(); + SVGAngle createSVGAngle(); + SVGPoint createSVGPoint(); + SVGMatrix createSVGMatrix(); + SVGRect createSVGRect(); + SVGTransform createSVGTransform(); + SVGTransform createSVGTransformFromMatrix(in SVGMatrix matrix); + Element getElementById(in DOMString elementId); +}; +interface SVGGElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable { +}; +interface SVGDefsElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable { +}; +interface SVGDescElement : SVGElement, + SVGLangSpace, + SVGStylable { +}; +interface SVGTitleElement : SVGElement, + SVGLangSpace, + SVGStylable { +}; +interface SVGSymbolElement : SVGElement, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGFitToViewBox { +}; +interface SVGUseElement : SVGElement, + SVGURIReference, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable { + readonly attribute SVGAnimatedLength x; + readonly attribute SVGAnimatedLength y; + readonly attribute SVGAnimatedLength width; + readonly attribute SVGAnimatedLength height; + readonly attribute SVGElementInstance instanceRoot; + readonly attribute SVGElementInstance animatedInstanceRoot; +}; +interface SVGElementInstance : EventTarget { + readonly attribute SVGElement correspondingElement; + readonly attribute SVGUseElement correspondingUseElement; + readonly attribute SVGElementInstance parentNode; + readonly attribute SVGElementInstanceList childNodes; + readonly attribute SVGElementInstance firstChild; + readonly attribute SVGElementInstance lastChild; + readonly attribute SVGElementInstance previousSibling; + readonly attribute SVGElementInstance nextSibling; +}; +interface SVGElementInstanceList { + + readonly attribute unsigned long length; + + SVGElementInstance item(in unsigned long index); +}; +interface SVGImageElement : SVGElement, + SVGURIReference, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable { + readonly attribute SVGAnimatedLength x; + readonly attribute SVGAnimatedLength y; + readonly attribute SVGAnimatedLength width; + readonly attribute SVGAnimatedLength height; + readonly attribute SVGAnimatedPreserveAspectRatio preserveAspectRatio; +}; +interface SVGSwitchElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable { +}; +interface GetSVGDocument { + SVGDocument getSVGDocument(); +}; +interface SVGElement : Element { + attribute DOMString id setraises(DOMException); + attribute DOMString xmlbase setraises(DOMException); + readonly attribute SVGSVGElement ownerSVGElement; + readonly attribute SVGElement viewportElement; +}; +interface SVGAnimatedBoolean { + attribute boolean baseVal setraises(DOMException); + readonly attribute boolean animVal; +}; +interface SVGAnimatedString { + attribute DOMString baseVal setraises(DOMException); + readonly attribute DOMString animVal; +}; +interface SVGStringList { + + readonly attribute unsigned long numberOfItems; + + void clear() raises(DOMException); + DOMString initialize(in DOMString newItem) raises(DOMException); + DOMString getItem(in unsigned long index) raises(DOMException); + DOMString insertItemBefore(in DOMString newItem, in unsigned long index) raises(DOMException); + DOMString replaceItem(in DOMString newItem, in unsigned long index) raises(DOMException); + DOMString removeItem(in unsigned long index) raises(DOMException); + DOMString appendItem(in DOMString newItem) raises(DOMException); +}; +interface SVGAnimatedEnumeration { + attribute unsigned short baseVal setraises(DOMException); + readonly attribute unsigned short animVal; +}; +interface SVGAnimatedInteger { + attribute long baseVal setraises(DOMException); + readonly attribute long animVal; +}; +interface SVGNumber { + attribute float value setraises(DOMException); +}; +interface SVGAnimatedNumber { + attribute float baseVal setraises(DOMException); + readonly attribute float animVal; +}; +interface SVGNumberList { + + readonly attribute unsigned long numberOfItems; + + void clear() raises(DOMException); + SVGNumber initialize(in SVGNumber newItem) raises(DOMException); + SVGNumber getItem(in unsigned long index) raises(DOMException); + SVGNumber insertItemBefore(in SVGNumber newItem, in unsigned long index) raises(DOMException); + SVGNumber replaceItem(in SVGNumber newItem, in unsigned long index) raises(DOMException); + SVGNumber removeItem(in unsigned long index) raises(DOMException); + SVGNumber appendItem(in SVGNumber newItem) raises(DOMException); +}; +interface SVGAnimatedNumberList { + readonly attribute SVGNumberList baseVal; + readonly attribute SVGNumberList animVal; +}; +interface SVGLength { + + // Length Unit Types + const unsigned short SVG_LENGTHTYPE_UNKNOWN = 0; + const unsigned short SVG_LENGTHTYPE_NUMBER = 1; + const unsigned short SVG_LENGTHTYPE_PERCENTAGE = 2; + const unsigned short SVG_LENGTHTYPE_EMS = 3; + const unsigned short SVG_LENGTHTYPE_EXS = 4; + const unsigned short SVG_LENGTHTYPE_PX = 5; + const unsigned short SVG_LENGTHTYPE_CM = 6; + const unsigned short SVG_LENGTHTYPE_MM = 7; + const unsigned short SVG_LENGTHTYPE_IN = 8; + const unsigned short SVG_LENGTHTYPE_PT = 9; + const unsigned short SVG_LENGTHTYPE_PC = 10; + + readonly attribute unsigned short unitType; + attribute float value setraises(DOMException); + attribute float valueInSpecifiedUnits setraises(DOMException); + attribute DOMString valueAsString setraises(DOMException); + + void newValueSpecifiedUnits(in unsigned short unitType, in float valueInSpecifiedUnits) raises(DOMException); + void convertToSpecifiedUnits(in unsigned short unitType) raises(DOMException); +}; +interface SVGAnimatedLength { + readonly attribute SVGLength baseVal; + readonly attribute SVGLength animVal; +}; +interface SVGLengthList { + + readonly attribute unsigned long numberOfItems; + + void clear() raises(DOMException); + SVGLength initialize(in SVGLength newItem) raises(DOMException); + SVGLength getItem(in unsigned long index) raises(DOMException); + SVGLength insertItemBefore(in SVGLength newItem, in unsigned long index) raises(DOMException); + SVGLength replaceItem(in SVGLength newItem, in unsigned long index) raises(DOMException); + SVGLength removeItem(in unsigned long index) raises(DOMException); + SVGLength appendItem(in SVGLength newItem) raises(DOMException); +}; +interface SVGAnimatedLengthList { + readonly attribute SVGLengthList baseVal; + readonly attribute SVGLengthList animVal; +}; +interface SVGAngle { + + // Angle Unit Types + const unsigned short SVG_ANGLETYPE_UNKNOWN = 0; + const unsigned short SVG_ANGLETYPE_UNSPECIFIED = 1; + const unsigned short SVG_ANGLETYPE_DEG = 2; + const unsigned short SVG_ANGLETYPE_RAD = 3; + const unsigned short SVG_ANGLETYPE_GRAD = 4; + + readonly attribute unsigned short unitType; + attribute float value setraises(DOMException); + attribute float valueInSpecifiedUnits setraises(DOMException); + attribute DOMString valueAsString setraises(DOMException); + + void newValueSpecifiedUnits(in unsigned short unitType, in float valueInSpecifiedUnits) raises(DOMException); + void convertToSpecifiedUnits(in unsigned short unitType) raises(DOMException); +}; +interface SVGAnimatedAngle { + readonly attribute SVGAngle baseVal; + readonly attribute SVGAngle animVal; +}; +interface SVGColor : CSSValue { + + // Color Types + const unsigned short SVG_COLORTYPE_UNKNOWN = 0; + const unsigned short SVG_COLORTYPE_RGBCOLOR = 1; + const unsigned short SVG_COLORTYPE_RGBCOLOR_ICCCOLOR = 2; + const unsigned short SVG_COLORTYPE_CURRENTCOLOR = 3; + + readonly attribute unsigned short colorType; + readonly attribute RGBColor rgbColor; + readonly attribute SVGICCColor iccColor; + + void setRGBColor(in DOMString rgbColor) raises(SVGException); + void setRGBColorICCColor(in DOMString rgbColor, in DOMString iccColor) raises(SVGException); + void setColor(in unsigned short colorType, in DOMString rgbColor, in DOMString iccColor) raises(SVGException); +}; +interface SVGICCColor { + attribute DOMString colorProfile setraises(DOMException); + readonly attribute SVGNumberList colors; +}; +interface SVGRect { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); + attribute float width setraises(DOMException); + attribute float height setraises(DOMException); +}; +interface SVGAnimatedRect { + readonly attribute SVGRect baseVal; + readonly attribute SVGRect animVal; +}; +interface SVGUnitTypes { + // Unit Types + const unsigned short SVG_UNIT_TYPE_UNKNOWN = 0; + const unsigned short SVG_UNIT_TYPE_USERSPACEONUSE = 1; + const unsigned short SVG_UNIT_TYPE_OBJECTBOUNDINGBOX = 2; +}; +interface SVGStylable { + + //readonly attribute SVGAnimatedString className; + //readonly attribute CSSStyleDeclaration style; + + CSSValue getPresentationAttribute(in DOMString name); +}; +interface SVGLocatable { + + readonly attribute SVGElement nearestViewportElement; + readonly attribute SVGElement farthestViewportElement; + + SVGRect getBBox(); + SVGMatrix getCTM(); + SVGMatrix getScreenCTM(); + SVGMatrix getTransformToElement(in SVGElement element) raises(SVGException); +}; +interface SVGTransformable : SVGLocatable { + readonly attribute SVGAnimatedTransformList transform; +}; +interface SVGTests { + + readonly attribute SVGStringList requiredFeatures; + readonly attribute SVGStringList requiredExtensions; + readonly attribute SVGStringList systemLanguage; + + boolean hasExtension(in DOMString extension); +}; +interface SVGLangSpace { + attribute DOMString xmllang setraises(DOMException); + attribute DOMString xmlspace setraises(DOMException); +}; +interface SVGExternalResourcesRequired { + readonly attribute SVGAnimatedBoolean externalResourcesRequired; +}; +interface SVGFitToViewBox { + readonly attribute SVGAnimatedRect viewBox; + readonly attribute SVGAnimatedPreserveAspectRatio preserveAspectRatio; +}; +interface SVGZoomAndPan { + + // Zoom and Pan Types + const unsigned short SVG_ZOOMANDPAN_UNKNOWN = 0; + const unsigned short SVG_ZOOMANDPAN_DISABLE = 1; + const unsigned short SVG_ZOOMANDPAN_MAGNIFY = 2; + + attribute unsigned short zoomAndPan setraises(DOMException); +}; +interface SVGViewSpec : SVGZoomAndPan, + SVGFitToViewBox { + readonly attribute SVGTransformList transform; + readonly attribute SVGElement viewTarget; + readonly attribute DOMString viewBoxString; + readonly attribute DOMString preserveAspectRatioString; + readonly attribute DOMString transformString; + readonly attribute DOMString viewTargetString; +}; +interface SVGURIReference { + readonly attribute SVGAnimatedString href; +}; +interface SVGCSSRule : CSSRule { + const unsigned short COLOR_PROFILE_RULE = 7; +}; +interface SVGRenderingIntent { + // Rendering Intent Types + const unsigned short RENDERING_INTENT_UNKNOWN = 0; + const unsigned short RENDERING_INTENT_AUTO = 1; + const unsigned short RENDERING_INTENT_PERCEPTUAL = 2; + const unsigned short RENDERING_INTENT_RELATIVE_COLORIMETRIC = 3; + const unsigned short RENDERING_INTENT_SATURATION = 4; + const unsigned short RENDERING_INTENT_ABSOLUTE_COLORIMETRIC = 5; +}; +interface SVGStyleElement : SVGElement, + SVGLangSpace { + attribute DOMString type setraises(DOMException); + attribute DOMString media setraises(DOMException); + attribute DOMString title setraises(DOMException); +}; +interface SVGPoint { + + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); + + SVGPoint matrixTransform(in SVGMatrix matrix); +}; +interface SVGPointList { + + readonly attribute unsigned long numberOfItems; + + void clear() raises(DOMException); + SVGPoint initialize(in SVGPoint newItem) raises(DOMException); + SVGPoint getItem(in unsigned long index) raises(DOMException); + SVGPoint insertItemBefore(in SVGPoint newItem, in unsigned long index) raises(DOMException); + SVGPoint replaceItem(in SVGPoint newItem, in unsigned long index) raises(DOMException); + SVGPoint removeItem(in unsigned long index) raises(DOMException); + SVGPoint appendItem(in SVGPoint newItem) raises(DOMException); +}; +interface SVGMatrix { + + attribute float a setraises(DOMException); + attribute float b setraises(DOMException); + attribute float c setraises(DOMException); + attribute float d setraises(DOMException); + attribute float e setraises(DOMException); + attribute float f setraises(DOMException); + + SVGMatrix multiply(in SVGMatrix secondMatrix); + SVGMatrix inverse() raises(SVGException); + SVGMatrix translate(in float x, in float y); + SVGMatrix scale(in float scaleFactor); + SVGMatrix scaleNonUniform(in float scaleFactorX, in float scaleFactorY); + SVGMatrix rotate(in float angle); + SVGMatrix rotateFromVector(in float x, in float y) raises(SVGException); + SVGMatrix flipX(); + SVGMatrix flipY(); + SVGMatrix skewX(in float angle); + SVGMatrix skewY(in float angle); +}; +interface SVGTransform { + + // Transform Types + const unsigned short SVG_TRANSFORM_UNKNOWN = 0; + const unsigned short SVG_TRANSFORM_MATRIX = 1; + const unsigned short SVG_TRANSFORM_TRANSLATE = 2; + const unsigned short SVG_TRANSFORM_SCALE = 3; + const unsigned short SVG_TRANSFORM_ROTATE = 4; + const unsigned short SVG_TRANSFORM_SKEWX = 5; + const unsigned short SVG_TRANSFORM_SKEWY = 6; + + readonly attribute unsigned short type; + readonly attribute SVGMatrix matrix; + readonly attribute float angle; + + void setMatrix(in SVGMatrix matrix) raises(DOMException); + void setTranslate(in float tx, in float ty) raises(DOMException); + void setScale(in float sx, in float sy) raises(DOMException); + void setRotate(in float angle, in float cx, in float cy) raises(DOMException); + void setSkewX(in float angle) raises(DOMException); + void setSkewY(in float angle) raises(DOMException); +}; +interface SVGTransformList { + + readonly attribute unsigned long numberOfItems; + + void clear() raises(DOMException); + SVGTransform initialize(in SVGTransform newItem) raises(DOMException); + SVGTransform getItem(in unsigned long index) raises(DOMException); + SVGTransform insertItemBefore(in SVGTransform newItem, in unsigned long index) raises(DOMException); + SVGTransform replaceItem(in SVGTransform newItem, in unsigned long index) raises(DOMException); + SVGTransform removeItem(in unsigned long index) raises(DOMException); + SVGTransform appendItem(in SVGTransform newItem) raises(DOMException); + SVGTransform createSVGTransformFromMatrix(in SVGMatrix matrix); + SVGTransform consolidate() raises(DOMException); +}; +interface SVGAnimatedTransformList { + readonly attribute SVGTransformList baseVal; + readonly attribute SVGTransformList animVal; +}; +interface SVGPreserveAspectRatio { + + // Alignment Types + const unsigned short SVG_PRESERVEASPECTRATIO_UNKNOWN = 0; + const unsigned short SVG_PRESERVEASPECTRATIO_NONE = 1; + const unsigned short SVG_PRESERVEASPECTRATIO_XMINYMIN = 2; + const unsigned short SVG_PRESERVEASPECTRATIO_XMIDYMIN = 3; + const unsigned short SVG_PRESERVEASPECTRATIO_XMAXYMIN = 4; + const unsigned short SVG_PRESERVEASPECTRATIO_XMINYMID = 5; + const unsigned short SVG_PRESERVEASPECTRATIO_XMIDYMID = 6; + const unsigned short SVG_PRESERVEASPECTRATIO_XMAXYMID = 7; + const unsigned short SVG_PRESERVEASPECTRATIO_XMINYMAX = 8; + const unsigned short SVG_PRESERVEASPECTRATIO_XMIDYMAX = 9; + const unsigned short SVG_PRESERVEASPECTRATIO_XMAXYMAX = 10; + + // Meet-or-slice Types + const unsigned short SVG_MEETORSLICE_UNKNOWN = 0; + const unsigned short SVG_MEETORSLICE_MEET = 1; + const unsigned short SVG_MEETORSLICE_SLICE = 2; + + attribute unsigned short align setraises(DOMException); + attribute unsigned short meetOrSlice setraises(DOMException); +}; +interface SVGAnimatedPreserveAspectRatio { + readonly attribute SVGPreserveAspectRatio baseVal; + readonly attribute SVGPreserveAspectRatio animVal; +}; +interface SVGPathSeg { + + // Path Segment Types + const unsigned short PATHSEG_UNKNOWN = 0; + const unsigned short PATHSEG_CLOSEPATH = 1; + const unsigned short PATHSEG_MOVETO_ABS = 2; + const unsigned short PATHSEG_MOVETO_REL = 3; + const unsigned short PATHSEG_LINETO_ABS = 4; + const unsigned short PATHSEG_LINETO_REL = 5; + const unsigned short PATHSEG_CURVETO_CUBIC_ABS = 6; + const unsigned short PATHSEG_CURVETO_CUBIC_REL = 7; + const unsigned short PATHSEG_CURVETO_QUADRATIC_ABS = 8; + const unsigned short PATHSEG_CURVETO_QUADRATIC_REL = 9; + const unsigned short PATHSEG_ARC_ABS = 10; + const unsigned short PATHSEG_ARC_REL = 11; + const unsigned short PATHSEG_LINETO_HORIZONTAL_ABS = 12; + const unsigned short PATHSEG_LINETO_HORIZONTAL_REL = 13; + const unsigned short PATHSEG_LINETO_VERTICAL_ABS = 14; + const unsigned short PATHSEG_LINETO_VERTICAL_REL = 15; + const unsigned short PATHSEG_CURVETO_CUBIC_SMOOTH_ABS = 16; + const unsigned short PATHSEG_CURVETO_CUBIC_SMOOTH_REL = 17; + const unsigned short PATHSEG_CURVETO_QUADRATIC_SMOOTH_ABS = 18; + const unsigned short PATHSEG_CURVETO_QUADRATIC_SMOOTH_REL = 19; + + readonly attribute unsigned short pathSegType; + readonly attribute DOMString pathSegTypeAsLetter; +}; +interface SVGPathSegClosePath : SVGPathSeg { +}; +interface SVGPathSegMovetoAbs : SVGPathSeg { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); +}; +interface SVGPathSegMovetoRel : SVGPathSeg { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); +}; +interface SVGPathSegLinetoAbs : SVGPathSeg { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); +}; +interface SVGPathSegLinetoRel : SVGPathSeg { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); +}; +interface SVGPathSegCurvetoCubicAbs : SVGPathSeg { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); + attribute float x1 setraises(DOMException); + attribute float y1 setraises(DOMException); + attribute float x2 setraises(DOMException); + attribute float y2 setraises(DOMException); +}; +interface SVGPathSegCurvetoCubicRel : SVGPathSeg { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); + attribute float x1 setraises(DOMException); + attribute float y1 setraises(DOMException); + attribute float x2 setraises(DOMException); + attribute float y2 setraises(DOMException); +}; +interface SVGPathSegCurvetoQuadraticAbs : SVGPathSeg { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); + attribute float x1 setraises(DOMException); + attribute float y1 setraises(DOMException); +}; +interface SVGPathSegCurvetoQuadraticRel : SVGPathSeg { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); + attribute float x1 setraises(DOMException); + attribute float y1 setraises(DOMException); +}; +interface SVGPathSegArcAbs : SVGPathSeg { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); + attribute float r1 setraises(DOMException); + attribute float r2 setraises(DOMException); + attribute float angle setraises(DOMException); + attribute boolean largeArcFlag setraises(DOMException); + attribute boolean sweepFlag setraises(DOMException); +}; +interface SVGPathSegArcRel : SVGPathSeg { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); + attribute float r1 setraises(DOMException); + attribute float r2 setraises(DOMException); + attribute float angle setraises(DOMException); + attribute boolean largeArcFlag setraises(DOMException); + attribute boolean sweepFlag setraises(DOMException); +}; +interface SVGPathSegLinetoHorizontalAbs : SVGPathSeg { + attribute float x setraises(DOMException); +}; +interface SVGPathSegLinetoHorizontalRel : SVGPathSeg { + attribute float x setraises(DOMException); +}; +interface SVGPathSegLinetoVerticalAbs : SVGPathSeg { + attribute float y setraises(DOMException); +}; +interface SVGPathSegLinetoVerticalRel : SVGPathSeg { + attribute float y setraises(DOMException); +}; +interface SVGPathSegCurvetoCubicSmoothAbs : SVGPathSeg { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); + attribute float x2 setraises(DOMException); + attribute float y2 setraises(DOMException); +}; +interface SVGPathSegCurvetoCubicSmoothRel : SVGPathSeg { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); + attribute float x2 setraises(DOMException); + attribute float y2 setraises(DOMException); +}; +interface SVGPathSegCurvetoQuadraticSmoothAbs : SVGPathSeg { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); +}; +interface SVGPathSegCurvetoQuadraticSmoothRel : SVGPathSeg { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); +}; +interface SVGPathSegList { + + readonly attribute unsigned long numberOfItems; + + void clear() raises(DOMException); + SVGPathSeg initialize(in SVGPathSeg newItem) raises(DOMException); + SVGPathSeg getItem(in unsigned long index) raises(DOMException); + SVGPathSeg insertItemBefore(in SVGPathSeg newItem, in unsigned long index) raises(DOMException); + SVGPathSeg replaceItem(in SVGPathSeg newItem, in unsigned long index) raises(DOMException); + SVGPathSeg removeItem(in unsigned long index) raises(DOMException); + SVGPathSeg appendItem(in SVGPathSeg newItem) raises(DOMException); +}; +interface SVGAnimatedPathData { + readonly attribute SVGPathSegList pathSegList; + readonly attribute SVGPathSegList normalizedPathSegList; + readonly attribute SVGPathSegList animatedPathSegList; + readonly attribute SVGPathSegList animatedNormalizedPathSegList; +}; +interface SVGPathElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable, + SVGAnimatedPathData { + + readonly attribute SVGAnimatedNumber pathLength; + + float getTotalLength(); + SVGPoint getPointAtLength(in float distance); + unsigned long getPathSegAtLength(in float distance); + SVGPathSegClosePath createSVGPathSegClosePath(); + SVGPathSegMovetoAbs createSVGPathSegMovetoAbs(in float x, in float y); + SVGPathSegMovetoRel createSVGPathSegMovetoRel(in float x, in float y); + SVGPathSegLinetoAbs createSVGPathSegLinetoAbs(in float x, in float y); + SVGPathSegLinetoRel createSVGPathSegLinetoRel(in float x, in float y); + SVGPathSegCurvetoCubicAbs createSVGPathSegCurvetoCubicAbs(in float x, in float y, in float x1, in float y1, in float x2, in float y2); + SVGPathSegCurvetoCubicRel createSVGPathSegCurvetoCubicRel(in float x, in float y, in float x1, in float y1, in float x2, in float y2); + SVGPathSegCurvetoQuadraticAbs createSVGPathSegCurvetoQuadraticAbs(in float x, in float y, in float x1, in float y1); + SVGPathSegCurvetoQuadraticRel createSVGPathSegCurvetoQuadraticRel(in float x, in float y, in float x1, in float y1); + SVGPathSegArcAbs createSVGPathSegArcAbs(in float x, in float y, in float r1, in float r2, in float angle, in boolean largeArcFlag, in boolean sweepFlag); + SVGPathSegArcRel createSVGPathSegArcRel(in float x, in float y, in float r1, in float r2, in float angle, in boolean largeArcFlag, in boolean sweepFlag); + SVGPathSegLinetoHorizontalAbs createSVGPathSegLinetoHorizontalAbs(in float x); + SVGPathSegLinetoHorizontalRel createSVGPathSegLinetoHorizontalRel(in float x); + SVGPathSegLinetoVerticalAbs createSVGPathSegLinetoVerticalAbs(in float y); + SVGPathSegLinetoVerticalRel createSVGPathSegLinetoVerticalRel(in float y); + SVGPathSegCurvetoCubicSmoothAbs createSVGPathSegCurvetoCubicSmoothAbs(in float x, in float y, in float x2, in float y2); + SVGPathSegCurvetoCubicSmoothRel createSVGPathSegCurvetoCubicSmoothRel(in float x, in float y, in float x2, in float y2); + SVGPathSegCurvetoQuadraticSmoothAbs createSVGPathSegCurvetoQuadraticSmoothAbs(in float x, in float y); + SVGPathSegCurvetoQuadraticSmoothRel createSVGPathSegCurvetoQuadraticSmoothRel(in float x, in float y); +}; +interface SVGRectElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable { + readonly attribute SVGAnimatedLength x; + readonly attribute SVGAnimatedLength y; + readonly attribute SVGAnimatedLength width; + readonly attribute SVGAnimatedLength height; + readonly attribute SVGAnimatedLength rx; + readonly attribute SVGAnimatedLength ry; +}; +interface SVGCircleElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable { + readonly attribute SVGAnimatedLength cx; + readonly attribute SVGAnimatedLength cy; + readonly attribute SVGAnimatedLength r; +}; +interface SVGEllipseElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable { + readonly attribute SVGAnimatedLength cx; + readonly attribute SVGAnimatedLength cy; + readonly attribute SVGAnimatedLength rx; + readonly attribute SVGAnimatedLength ry; +}; +interface SVGLineElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable { + readonly attribute SVGAnimatedLength x1; + readonly attribute SVGAnimatedLength y1; + readonly attribute SVGAnimatedLength x2; + readonly attribute SVGAnimatedLength y2; +}; +interface SVGAnimatedPoints { + readonly attribute SVGPointList points; + readonly attribute SVGPointList animatedPoints; +}; +interface SVGPolylineElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable, + SVGAnimatedPoints { +}; +interface SVGPolygonElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable, + SVGAnimatedPoints { +}; +interface SVGTextContentElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable { + + // lengthAdjust Types + const unsigned short LENGTHADJUST_UNKNOWN = 0; + const unsigned short LENGTHADJUST_SPACING = 1; + const unsigned short LENGTHADJUST_SPACINGANDGLYPHS = 2; + + readonly attribute SVGAnimatedLength textLength; + readonly attribute SVGAnimatedEnumeration lengthAdjust; + + long getNumberOfChars(); + float getComputedTextLength(); + float getSubStringLength(in unsigned long charnum, in unsigned long nchars) raises(DOMException); + SVGPoint getStartPositionOfChar(in unsigned long charnum) raises(DOMException); + SVGPoint getEndPositionOfChar(in unsigned long charnum) raises(DOMException); + SVGRect getExtentOfChar(in unsigned long charnum) raises(DOMException); + float getRotationOfChar(in unsigned long charnum) raises(DOMException); + long getCharNumAtPosition(in SVGPoint point); + void selectSubString(in unsigned long charnum, in unsigned long nchars) raises(DOMException); +}; +interface SVGTextPositioningElement : SVGTextContentElement { + readonly attribute SVGAnimatedLengthList x; + readonly attribute SVGAnimatedLengthList y; + readonly attribute SVGAnimatedLengthList dx; + readonly attribute SVGAnimatedLengthList dy; + readonly attribute SVGAnimatedNumberList rotate; +}; +interface SVGTextElement : SVGTextPositioningElement, + SVGTransformable { +}; +interface SVGTSpanElement : SVGTextPositioningElement { +}; +interface SVGTRefElement : SVGTextPositioningElement, + SVGURIReference { +}; +interface SVGTextPathElement : SVGTextContentElement, + SVGURIReference { + + // textPath Method Types + const unsigned short TEXTPATH_METHODTYPE_UNKNOWN = 0; + const unsigned short TEXTPATH_METHODTYPE_ALIGN = 1; + const unsigned short TEXTPATH_METHODTYPE_STRETCH = 2; + + // textPath Spacing Types + const unsigned short TEXTPATH_SPACINGTYPE_UNKNOWN = 0; + const unsigned short TEXTPATH_SPACINGTYPE_AUTO = 1; + const unsigned short TEXTPATH_SPACINGTYPE_EXACT = 2; + + readonly attribute SVGAnimatedLength startOffset; + readonly attribute SVGAnimatedEnumeration method; + readonly attribute SVGAnimatedEnumeration spacing; +}; +interface SVGAltGlyphElement : SVGTextPositioningElement, + SVGURIReference { + attribute DOMString glyphRef setraises(DOMException); + attribute DOMString format setraises(DOMException); +}; +interface SVGAltGlyphDefElement : SVGElement { +}; +interface SVGAltGlyphItemElement : SVGElement { +}; +interface SVGGlyphRefElement : SVGElement, + SVGURIReference, + SVGStylable { + attribute DOMString glyphRef setraises(DOMException); + attribute DOMString format setraises(DOMException); + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); + attribute float dx setraises(DOMException); + attribute float dy setraises(DOMException); +}; +interface SVGPaint : SVGColor { + + // Paint Types + const unsigned short SVG_PAINTTYPE_UNKNOWN = 0; + const unsigned short SVG_PAINTTYPE_RGBCOLOR = 1; + const unsigned short SVG_PAINTTYPE_RGBCOLOR_ICCCOLOR = 2; + const unsigned short SVG_PAINTTYPE_NONE = 101; + const unsigned short SVG_PAINTTYPE_CURRENTCOLOR = 102; + const unsigned short SVG_PAINTTYPE_URI_NONE = 103; + const unsigned short SVG_PAINTTYPE_URI_CURRENTCOLOR = 104; + const unsigned short SVG_PAINTTYPE_URI_RGBCOLOR = 105; + const unsigned short SVG_PAINTTYPE_URI_RGBCOLOR_ICCCOLOR = 106; + const unsigned short SVG_PAINTTYPE_URI = 107; + + readonly attribute unsigned short paintType; + readonly attribute DOMString uri; + + void setUri(in DOMString uri); + void setPaint(in unsigned short paintType, in DOMString uri, in DOMString rgbColor, in DOMString iccColor) raises(SVGException); +}; +interface SVGMarkerElement : SVGElement, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGFitToViewBox { + + // Marker Unit Types + const unsigned short SVG_MARKERUNITS_UNKNOWN = 0; + const unsigned short SVG_MARKERUNITS_USERSPACEONUSE = 1; + const unsigned short SVG_MARKERUNITS_STROKEWIDTH = 2; + + // Marker Orientation Types + const unsigned short SVG_MARKER_ORIENT_UNKNOWN = 0; + const unsigned short SVG_MARKER_ORIENT_AUTO = 1; + const unsigned short SVG_MARKER_ORIENT_ANGLE = 2; + + readonly attribute SVGAnimatedLength refX; + readonly attribute SVGAnimatedLength refY; + readonly attribute SVGAnimatedEnumeration markerUnits; + readonly attribute SVGAnimatedLength markerWidth; + readonly attribute SVGAnimatedLength markerHeight; + readonly attribute SVGAnimatedEnumeration orientType; + readonly attribute SVGAnimatedAngle orientAngle; + + void setOrientToAuto() raises(DOMException); + void setOrientToAngle(in SVGAngle angle) raises(DOMException); +}; +interface SVGColorProfileElement : SVGElement, + SVGURIReference, + SVGRenderingIntent { + attribute DOMString local; + attribute DOMString name; + attribute unsigned short renderingIntent; +}; +interface SVGColorProfileRule : SVGCSSRule, + SVGRenderingIntent { + attribute DOMString src setraises(DOMException); + attribute DOMString name setraises(DOMException); + attribute unsigned short renderingIntent setraises(DOMException); +}; +interface SVGGradientElement : SVGElement, + SVGURIReference, + SVGExternalResourcesRequired, + SVGStylable, + SVGUnitTypes { + + // Spread Method Types + const unsigned short SVG_SPREADMETHOD_UNKNOWN = 0; + const unsigned short SVG_SPREADMETHOD_PAD = 1; + const unsigned short SVG_SPREADMETHOD_REFLECT = 2; + const unsigned short SVG_SPREADMETHOD_REPEAT = 3; + + readonly attribute SVGAnimatedEnumeration gradientUnits; + readonly attribute SVGAnimatedTransformList gradientTransform; + readonly attribute SVGAnimatedEnumeration spreadMethod; +}; +interface SVGLinearGradientElement : SVGGradientElement { + readonly attribute SVGAnimatedLength x1; + readonly attribute SVGAnimatedLength y1; + readonly attribute SVGAnimatedLength x2; + readonly attribute SVGAnimatedLength y2; +}; +interface SVGRadialGradientElement : SVGGradientElement { + readonly attribute SVGAnimatedLength cx; + readonly attribute SVGAnimatedLength cy; + readonly attribute SVGAnimatedLength r; + readonly attribute SVGAnimatedLength fx; + readonly attribute SVGAnimatedLength fy; +}; +interface SVGStopElement : SVGElement, + SVGStylable { + readonly attribute SVGAnimatedNumber offset; +}; +interface SVGPatternElement : SVGElement, + SVGURIReference, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGFitToViewBox, + SVGUnitTypes { + readonly attribute SVGAnimatedEnumeration patternUnits; + readonly attribute SVGAnimatedEnumeration patternContentUnits; + readonly attribute SVGAnimatedTransformList patternTransform; + readonly attribute SVGAnimatedLength x; + readonly attribute SVGAnimatedLength y; + readonly attribute SVGAnimatedLength width; + readonly attribute SVGAnimatedLength height; +}; +interface SVGClipPathElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable, + SVGUnitTypes { + readonly attribute SVGAnimatedEnumeration clipPathUnits; +}; +interface SVGMaskElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGUnitTypes { + readonly attribute SVGAnimatedEnumeration maskUnits; + readonly attribute SVGAnimatedEnumeration maskContentUnits; + readonly attribute SVGAnimatedLength x; + readonly attribute SVGAnimatedLength y; + readonly attribute SVGAnimatedLength width; + readonly attribute SVGAnimatedLength height; +}; +interface SVGFilterElement : SVGElement, + SVGURIReference, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGUnitTypes { + + readonly attribute SVGAnimatedEnumeration filterUnits; + readonly attribute SVGAnimatedEnumeration primitiveUnits; + readonly attribute SVGAnimatedLength x; + readonly attribute SVGAnimatedLength y; + readonly attribute SVGAnimatedLength width; + readonly attribute SVGAnimatedLength height; + readonly attribute SVGAnimatedInteger filterResX; + readonly attribute SVGAnimatedInteger filterResY; + + void setFilterRes(in unsigned long filterResX, in unsigned long filterResY) raises(DOMException); +}; +interface SVGFilterPrimitiveStandardAttributes : SVGStylable { + readonly attribute SVGAnimatedLength x; + readonly attribute SVGAnimatedLength y; + readonly attribute SVGAnimatedLength width; + readonly attribute SVGAnimatedLength height; + readonly attribute SVGAnimatedString result; +}; +interface SVGFEBlendElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { + + // Blend Mode Types + const unsigned short SVG_FEBLEND_MODE_UNKNOWN = 0; + const unsigned short SVG_FEBLEND_MODE_NORMAL = 1; + const unsigned short SVG_FEBLEND_MODE_MULTIPLY = 2; + const unsigned short SVG_FEBLEND_MODE_SCREEN = 3; + const unsigned short SVG_FEBLEND_MODE_DARKEN = 4; + const unsigned short SVG_FEBLEND_MODE_LIGHTEN = 5; + + readonly attribute SVGAnimatedString in1; + readonly attribute SVGAnimatedString in2; + readonly attribute SVGAnimatedEnumeration mode; +}; +interface SVGFEColorMatrixElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { + + // Color Matrix Types + const unsigned short SVG_FECOLORMATRIX_TYPE_UNKNOWN = 0; + const unsigned short SVG_FECOLORMATRIX_TYPE_MATRIX = 1; + const unsigned short SVG_FECOLORMATRIX_TYPE_SATURATE = 2; + const unsigned short SVG_FECOLORMATRIX_TYPE_HUEROTATE = 3; + const unsigned short SVG_FECOLORMATRIX_TYPE_LUMINANCETOALPHA = 4; + + readonly attribute SVGAnimatedString in1; + readonly attribute SVGAnimatedEnumeration type; + readonly attribute SVGAnimatedNumberList values; +}; +interface SVGFEComponentTransferElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { + readonly attribute SVGAnimatedString in1; +}; +interface SVGComponentTransferFunctionElement : SVGElement { + + // Component Transfer Types + const unsigned short SVG_FECOMPONENTTRANSFER_TYPE_UNKNOWN = 0; + const unsigned short SVG_FECOMPONENTTRANSFER_TYPE_IDENTITY = 1; + const unsigned short SVG_FECOMPONENTTRANSFER_TYPE_TABLE = 2; + const unsigned short SVG_FECOMPONENTTRANSFER_TYPE_DISCRETE = 3; + const unsigned short SVG_FECOMPONENTTRANSFER_TYPE_LINEAR = 4; + const unsigned short SVG_FECOMPONENTTRANSFER_TYPE_GAMMA = 5; + + readonly attribute SVGAnimatedEnumeration type; + readonly attribute SVGAnimatedNumberList tableValues; + readonly attribute SVGAnimatedNumber slope; + readonly attribute SVGAnimatedNumber intercept; + readonly attribute SVGAnimatedNumber amplitude; + readonly attribute SVGAnimatedNumber exponent; + readonly attribute SVGAnimatedNumber offset; +}; +interface SVGFEFuncRElement : SVGComponentTransferFunctionElement { +}; +interface SVGFEFuncGElement : SVGComponentTransferFunctionElement { +}; +interface SVGFEFuncBElement : SVGComponentTransferFunctionElement { +}; +interface SVGFEFuncAElement : SVGComponentTransferFunctionElement { +}; +interface SVGFECompositeElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { + + // Composite Operators + const unsigned short SVG_FECOMPOSITE_OPERATOR_UNKNOWN = 0; + const unsigned short SVG_FECOMPOSITE_OPERATOR_OVER = 1; + const unsigned short SVG_FECOMPOSITE_OPERATOR_IN = 2; + const unsigned short SVG_FECOMPOSITE_OPERATOR_OUT = 3; + const unsigned short SVG_FECOMPOSITE_OPERATOR_ATOP = 4; + const unsigned short SVG_FECOMPOSITE_OPERATOR_XOR = 5; + const unsigned short SVG_FECOMPOSITE_OPERATOR_ARITHMETIC = 6; + + readonly attribute SVGAnimatedString in1; + readonly attribute SVGAnimatedString in2; + readonly attribute SVGAnimatedEnumeration operator; + readonly attribute SVGAnimatedNumber k1; + readonly attribute SVGAnimatedNumber k2; + readonly attribute SVGAnimatedNumber k3; + readonly attribute SVGAnimatedNumber k4; +}; +interface SVGFEConvolveMatrixElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { + + // Edge Mode Values + const unsigned short SVG_EDGEMODE_UNKNOWN = 0; + const unsigned short SVG_EDGEMODE_DUPLICATE = 1; + const unsigned short SVG_EDGEMODE_WRAP = 2; + const unsigned short SVG_EDGEMODE_NONE = 3; + + readonly attribute SVGAnimatedString in1; + readonly attribute SVGAnimatedInteger orderX; + readonly attribute SVGAnimatedInteger orderY; + readonly attribute SVGAnimatedNumberList kernelMatrix; + readonly attribute SVGAnimatedNumber divisor; + readonly attribute SVGAnimatedNumber bias; + readonly attribute SVGAnimatedInteger targetX; + readonly attribute SVGAnimatedInteger targetY; + readonly attribute SVGAnimatedEnumeration edgeMode; + readonly attribute SVGAnimatedNumber kernelUnitLengthX; + readonly attribute SVGAnimatedNumber kernelUnitLengthY; + readonly attribute SVGAnimatedBoolean preserveAlpha; +}; +interface SVGFEDiffuseLightingElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { + readonly attribute SVGAnimatedString in1; + readonly attribute SVGAnimatedNumber surfaceScale; + readonly attribute SVGAnimatedNumber diffuseConstant; + readonly attribute SVGAnimatedNumber kernelUnitLengthX; + readonly attribute SVGAnimatedNumber kernelUnitLengthY; +}; +interface SVGFEDistantLightElement : SVGElement { + readonly attribute SVGAnimatedNumber azimuth; + readonly attribute SVGAnimatedNumber elevation; +}; +interface SVGFEPointLightElement : SVGElement { + readonly attribute SVGAnimatedNumber x; + readonly attribute SVGAnimatedNumber y; + readonly attribute SVGAnimatedNumber z; +}; +interface SVGFESpotLightElement : SVGElement { + readonly attribute SVGAnimatedNumber x; + readonly attribute SVGAnimatedNumber y; + readonly attribute SVGAnimatedNumber z; + readonly attribute SVGAnimatedNumber pointsAtX; + readonly attribute SVGAnimatedNumber pointsAtY; + readonly attribute SVGAnimatedNumber pointsAtZ; + readonly attribute SVGAnimatedNumber specularExponent; + readonly attribute SVGAnimatedNumber limitingConeAngle; +}; +interface SVGFEDisplacementMapElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { + + // Channel Selectors + const unsigned short SVG_CHANNEL_UNKNOWN = 0; + const unsigned short SVG_CHANNEL_R = 1; + const unsigned short SVG_CHANNEL_G = 2; + const unsigned short SVG_CHANNEL_B = 3; + const unsigned short SVG_CHANNEL_A = 4; + + readonly attribute SVGAnimatedString in1; + readonly attribute SVGAnimatedString in2; + readonly attribute SVGAnimatedNumber scale; + readonly attribute SVGAnimatedEnumeration xChannelSelector; + readonly attribute SVGAnimatedEnumeration yChannelSelector; +}; +interface SVGFEFloodElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { +}; +interface SVGFEGaussianBlurElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { + + readonly attribute SVGAnimatedString in1; + readonly attribute SVGAnimatedNumber stdDeviationX; + readonly attribute SVGAnimatedNumber stdDeviationY; + + void setStdDeviation(in float stdDeviationX, in float stdDeviationY) raises(DOMException); +}; +interface SVGFEImageElement : SVGElement, + SVGURIReference, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGFilterPrimitiveStandardAttributes { + readonly attribute SVGAnimatedPreserveAspectRatio preserveAspectRatio; +}; +interface SVGFEMergeElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { +}; +interface SVGFEMergeNodeElement : SVGElement { + readonly attribute SVGAnimatedString in1; +}; +interface SVGFEMorphologyElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { + + // Morphology Operators + const unsigned short SVG_MORPHOLOGY_OPERATOR_UNKNOWN = 0; + const unsigned short SVG_MORPHOLOGY_OPERATOR_ERODE = 1; + const unsigned short SVG_MORPHOLOGY_OPERATOR_DILATE = 2; + + readonly attribute SVGAnimatedString in1; + readonly attribute SVGAnimatedEnumeration operator; + readonly attribute SVGAnimatedNumber radiusX; + readonly attribute SVGAnimatedNumber radiusY; +}; +interface SVGFEOffsetElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { + readonly attribute SVGAnimatedString in1; + readonly attribute SVGAnimatedNumber dx; + readonly attribute SVGAnimatedNumber dy; +}; +interface SVGFESpecularLightingElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { + readonly attribute SVGAnimatedString in1; + readonly attribute SVGAnimatedNumber surfaceScale; + readonly attribute SVGAnimatedNumber specularConstant; + readonly attribute SVGAnimatedNumber specularExponent; + readonly attribute SVGAnimatedNumber kernelUnitLengthX; + readonly attribute SVGAnimatedNumber kernelUnitLengthY; +}; +interface SVGFETileElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { + readonly attribute SVGAnimatedString in1; +}; +interface SVGFETurbulenceElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { + + // 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; +}; +interface SVGCursorElement : SVGElement, + SVGURIReference, + SVGTests, + SVGExternalResourcesRequired { + readonly attribute SVGAnimatedLength x; + readonly attribute SVGAnimatedLength y; +}; +interface SVGAElement : SVGElement, + SVGURIReference, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable { + readonly attribute SVGAnimatedString target; +}; +interface SVGViewElement : SVGElement, + SVGExternalResourcesRequired, + SVGFitToViewBox, + SVGZoomAndPan { + readonly attribute SVGStringList viewTarget; +}; +interface SVGScriptElement : SVGElement, + SVGURIReference, + SVGExternalResourcesRequired { + attribute DOMString type setraises(DOMException); +}; +interface SVGZoomEvent : UIEvent { + readonly attribute SVGRect zoomRectScreen; + readonly attribute float previousScale; + readonly attribute SVGPoint previousTranslate; + readonly attribute float newScale; + readonly attribute SVGPoint newTranslate; +}; +interface ElementTimeControl { + void beginElement(); + void beginElementAt(in float offset); + void endElement(); + void endElementAt(in float offset); +}; +interface TimeEvent : Event { + + readonly attribute AbstractView view; + readonly attribute long detail; + + void initTimeEvent(in DOMString typeArg, in AbstractView viewArg, in long detailArg); +}; +interface SVGAnimationElement : SVGElement, + SVGTests, + SVGExternalResourcesRequired, + ElementTimeControl { + + readonly attribute SVGElement targetElement; + + float getStartTime() raises(DOMException); + float getCurrentTime(); + float getSimpleDuration() raises(DOMException); +}; +interface SVGAnimateElement : SVGAnimationElement, + SVGStylable { +}; +interface SVGSetElement : SVGAnimationElement { +}; +interface SVGAnimateMotionElement : SVGAnimationElement { +}; +interface SVGMPathElement : SVGElement, + SVGURIReference, + SVGExternalResourcesRequired { +}; +interface SVGAnimateColorElement : SVGAnimationElement, + SVGStylable { +}; +interface SVGAnimateTransformElement : SVGAnimationElement { +}; +interface SVGFontElement : SVGElement, + SVGExternalResourcesRequired, + SVGStylable { +}; +interface SVGGlyphElement : SVGElement, + SVGStylable { +}; +interface SVGMissingGlyphElement : SVGElement, + SVGStylable { +}; +interface SVGHKernElement : SVGElement { +}; +interface SVGVKernElement : SVGElement { +}; +interface SVGFontFaceElement : SVGElement { +}; +interface SVGFontFaceSrcElement : SVGElement { +}; +interface SVGFontFaceUriElement : SVGElement { +}; +interface SVGFontFaceFormatElement : SVGElement { +}; +interface SVGFontFaceNameElement : SVGElement { +}; +interface SVGMetadataElement : SVGElement { +}; +interface SVGForeignObjectElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable { + readonly attribute SVGAnimatedLength x; + readonly attribute SVGAnimatedLength y; + readonly attribute SVGAnimatedLength width; + readonly attribute SVGAnimatedLength height; +}; +exception SVGException { + unsigned short code; +}; + +// SVGException code +const unsigned short SVG_WRONG_TYPE_ERR = 0; +const unsigned short SVG_INVALID_VALUE_ERR = 1; +const unsigned short SVG_MATRIX_NOT_INVERTABLE = 2; +module smil { + +interface ElementTimeControl { + void beginElement(); + void beginElementAt(in float offset); + void endElement(); + void endElementAt(in float offset); +}; + +interface TimeEvent : Event { + + readonly attribute AbstractView view; + readonly attribute long detail; + + void initTimeEvent(in DOMString typeArg, in AbstractView viewArg, in long detailArg); +}; + +}; + +module svg { + +exception SVGException { + unsigned short code; +}; + +// SVGException code +const unsigned short SVG_WRONG_TYPE_ERR = 0; +const unsigned short SVG_INVALID_VALUE_ERR = 1; +const unsigned short SVG_MATRIX_NOT_INVERTABLE = 2; + +interface SVGElement : Element { + attribute DOMString id setraises(DOMException); + attribute DOMString xmlbase setraises(DOMException); + readonly attribute SVGSVGElement ownerSVGElement; + readonly attribute SVGElement viewportElement; +}; + +interface SVGAnimatedBoolean { + attribute boolean baseVal setraises(DOMException); + readonly attribute boolean animVal; +}; + +interface SVGAnimatedString { + attribute DOMString baseVal setraises(DOMException); + readonly attribute DOMString animVal; +}; + +interface SVGStringList { + + readonly attribute unsigned long numberOfItems; + + void clear() raises(DOMException); + DOMString initialize(in DOMString newItem) raises(DOMException); + DOMString getItem(in unsigned long index) raises(DOMException); + DOMString insertItemBefore(in DOMString newItem, in unsigned long index) raises(DOMException); + DOMString replaceItem(in DOMString newItem, in unsigned long index) raises(DOMException); + DOMString removeItem(in unsigned long index) raises(DOMException); + DOMString appendItem(in DOMString newItem) raises(DOMException); +}; + +interface SVGAnimatedEnumeration { + attribute unsigned short baseVal setraises(DOMException); + readonly attribute unsigned short animVal; +}; + +interface SVGAnimatedInteger { + attribute long baseVal setraises(DOMException); + readonly attribute long animVal; +}; + +interface SVGNumber { + attribute float value setraises(DOMException); +}; + +interface SVGAnimatedNumber { + attribute float baseVal setraises(DOMException); + readonly attribute float animVal; +}; + +interface SVGNumberList { + + readonly attribute unsigned long numberOfItems; + + void clear() raises(DOMException); + SVGNumber initialize(in SVGNumber newItem) raises(DOMException); + SVGNumber getItem(in unsigned long index) raises(DOMException); + SVGNumber insertItemBefore(in SVGNumber newItem, in unsigned long index) raises(DOMException); + SVGNumber replaceItem(in SVGNumber newItem, in unsigned long index) raises(DOMException); + SVGNumber removeItem(in unsigned long index) raises(DOMException); + SVGNumber appendItem(in SVGNumber newItem) raises(DOMException); +}; + +interface SVGAnimatedNumberList { + readonly attribute SVGNumberList baseVal; + readonly attribute SVGNumberList animVal; +}; + +interface SVGLength { + + // Length Unit Types + const unsigned short SVG_LENGTHTYPE_UNKNOWN = 0; + const unsigned short SVG_LENGTHTYPE_NUMBER = 1; + const unsigned short SVG_LENGTHTYPE_PERCENTAGE = 2; + const unsigned short SVG_LENGTHTYPE_EMS = 3; + const unsigned short SVG_LENGTHTYPE_EXS = 4; + const unsigned short SVG_LENGTHTYPE_PX = 5; + const unsigned short SVG_LENGTHTYPE_CM = 6; + const unsigned short SVG_LENGTHTYPE_MM = 7; + const unsigned short SVG_LENGTHTYPE_IN = 8; + const unsigned short SVG_LENGTHTYPE_PT = 9; + const unsigned short SVG_LENGTHTYPE_PC = 10; + + readonly attribute unsigned short unitType; + attribute float value setraises(DOMException); + attribute float valueInSpecifiedUnits setraises(DOMException); + attribute DOMString valueAsString setraises(DOMException); + + void newValueSpecifiedUnits(in unsigned short unitType, in float valueInSpecifiedUnits) raises(DOMException); + void convertToSpecifiedUnits(in unsigned short unitType) raises(DOMException); +}; + +interface SVGAnimatedLength { + readonly attribute SVGLength baseVal; + readonly attribute SVGLength animVal; +}; + +interface SVGLengthList { + + readonly attribute unsigned long numberOfItems; + + void clear() raises(DOMException); + SVGLength initialize(in SVGLength newItem) raises(DOMException); + SVGLength getItem(in unsigned long index) raises(DOMException); + SVGLength insertItemBefore(in SVGLength newItem, in unsigned long index) raises(DOMException); + SVGLength replaceItem(in SVGLength newItem, in unsigned long index) raises(DOMException); + SVGLength removeItem(in unsigned long index) raises(DOMException); + SVGLength appendItem(in SVGLength newItem) raises(DOMException); +}; + +interface SVGAnimatedLengthList { + readonly attribute SVGLengthList baseVal; + readonly attribute SVGLengthList animVal; +}; + +interface SVGAngle { + + // Angle Unit Types + const unsigned short SVG_ANGLETYPE_UNKNOWN = 0; + const unsigned short SVG_ANGLETYPE_UNSPECIFIED = 1; + const unsigned short SVG_ANGLETYPE_DEG = 2; + const unsigned short SVG_ANGLETYPE_RAD = 3; + const unsigned short SVG_ANGLETYPE_GRAD = 4; + + readonly attribute unsigned short unitType; + attribute float value setraises(DOMException); + attribute float valueInSpecifiedUnits setraises(DOMException); + attribute DOMString valueAsString setraises(DOMException); + + void newValueSpecifiedUnits(in unsigned short unitType, in float valueInSpecifiedUnits) raises(DOMException); + void convertToSpecifiedUnits(in unsigned short unitType) raises(DOMException); +}; + +interface SVGAnimatedAngle { + readonly attribute SVGAngle baseVal; + readonly attribute SVGAngle animVal; +}; + +interface SVGColor : CSSValue { + + // Color Types + const unsigned short SVG_COLORTYPE_UNKNOWN = 0; + const unsigned short SVG_COLORTYPE_RGBCOLOR = 1; + const unsigned short SVG_COLORTYPE_RGBCOLOR_ICCCOLOR = 2; + const unsigned short SVG_COLORTYPE_CURRENTCOLOR = 3; + + readonly attribute unsigned short colorType; + readonly attribute RGBColor rgbColor; + readonly attribute SVGICCColor iccColor; + + void setRGBColor(in DOMString rgbColor) raises(SVGException); + void setRGBColorICCColor(in DOMString rgbColor, in DOMString iccColor) raises(SVGException); + void setColor(in unsigned short colorType, in DOMString rgbColor, in DOMString iccColor) raises(SVGException); +}; + +interface SVGICCColor { + attribute DOMString colorProfile setraises(DOMException); + readonly attribute SVGNumberList colors; +}; + +interface SVGRect { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); + attribute float width setraises(DOMException); + attribute float height setraises(DOMException); +}; + +interface SVGAnimatedRect { + readonly attribute SVGRect baseVal; + readonly attribute SVGRect animVal; +}; + +interface SVGUnitTypes { + // Unit Types + const unsigned short SVG_UNIT_TYPE_UNKNOWN = 0; + const unsigned short SVG_UNIT_TYPE_USERSPACEONUSE = 1; + const unsigned short SVG_UNIT_TYPE_OBJECTBOUNDINGBOX = 2; +}; + +interface SVGStylable { + + //readonly attribute SVGAnimatedString className; + //readonly attribute CSSStyleDeclaration style; + + CSSValue getPresentationAttribute(in DOMString name); +}; + +interface SVGLocatable { + + readonly attribute SVGElement nearestViewportElement; + readonly attribute SVGElement farthestViewportElement; + + SVGRect getBBox(); + SVGMatrix getCTM(); + SVGMatrix getScreenCTM(); + SVGMatrix getTransformToElement(in SVGElement element) raises(SVGException); +}; + +interface SVGTransformable : SVGLocatable { + readonly attribute SVGAnimatedTransformList transform; +}; + +interface SVGTests { + + readonly attribute SVGStringList requiredFeatures; + readonly attribute SVGStringList requiredExtensions; + readonly attribute SVGStringList systemLanguage; + + boolean hasExtension(in DOMString extension); +}; + +interface SVGLangSpace { + attribute DOMString xmllang setraises(DOMException); + attribute DOMString xmlspace setraises(DOMException); +}; + +interface SVGExternalResourcesRequired { + readonly attribute SVGAnimatedBoolean externalResourcesRequired; +}; + +interface SVGFitToViewBox { + readonly attribute SVGAnimatedRect viewBox; + readonly attribute SVGAnimatedPreserveAspectRatio preserveAspectRatio; +}; + +interface SVGZoomAndPan { + + // Zoom and Pan Types + const unsigned short SVG_ZOOMANDPAN_UNKNOWN = 0; + const unsigned short SVG_ZOOMANDPAN_DISABLE = 1; + const unsigned short SVG_ZOOMANDPAN_MAGNIFY = 2; + + attribute unsigned short zoomAndPan setraises(DOMException); +}; + +interface SVGViewSpec : SVGZoomAndPan, + SVGFitToViewBox { + readonly attribute SVGTransformList transform; + readonly attribute SVGElement viewTarget; + readonly attribute DOMString viewBoxString; + readonly attribute DOMString preserveAspectRatioString; + readonly attribute DOMString transformString; + readonly attribute DOMString viewTargetString; +}; + +interface SVGURIReference { + readonly attribute SVGAnimatedString href; +}; + +interface SVGCSSRule : CSSRule { + const unsigned short COLOR_PROFILE_RULE = 7; +}; + +interface SVGRenderingIntent { + // Rendering Intent Types + const unsigned short RENDERING_INTENT_UNKNOWN = 0; + const unsigned short RENDERING_INTENT_AUTO = 1; + const unsigned short RENDERING_INTENT_PERCEPTUAL = 2; + const unsigned short RENDERING_INTENT_RELATIVE_COLORIMETRIC = 3; + const unsigned short RENDERING_INTENT_SATURATION = 4; + const unsigned short RENDERING_INTENT_ABSOLUTE_COLORIMETRIC = 5; +}; + +interface SVGDocument : Document, + DocumentEvent { + readonly attribute DOMString title; + readonly attribute DOMString referrer; + readonly attribute DOMString domain; + readonly attribute DOMString URL; + readonly attribute SVGSVGElement rootElement; +}; + +interface SVGSVGElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGLocatable, + SVGFitToViewBox, + SVGZoomAndPan, + DocumentEvent, + ViewCSS, + DocumentCSS { + + readonly attribute SVGAnimatedLength x; + readonly attribute SVGAnimatedLength y; + readonly attribute SVGAnimatedLength width; + readonly attribute SVGAnimatedLength height; + attribute DOMString contentScriptType setraises(DOMException); + attribute DOMString contentStyleType setraises(DOMException); + readonly attribute SVGRect viewport; + readonly attribute float pixelUnitToMillimeterX; + readonly attribute float pixelUnitToMillimeterY; + readonly attribute float screenPixelToMillimeterX; + readonly attribute float screenPixelToMillimeterY; + readonly attribute boolean useCurrentView; + readonly attribute SVGViewSpec currentView; + attribute float currentScale; + readonly attribute SVGPoint currentTranslate; + + unsigned long suspendRedraw(in unsigned long maxWaitMilliseconds); + void unsuspendRedraw(in unsigned long suspendHandleID); + void unsuspendRedrawAll(); + void forceRedraw(); + void pauseAnimations(); + void unpauseAnimations(); + boolean animationsPaused(); + float getCurrentTime(); + void setCurrentTime(in float seconds); + NodeList getIntersectionList(in SVGRect rect, in SVGElement referenceElement); + NodeList getEnclosureList(in SVGRect rect, in SVGElement referenceElement); + boolean checkIntersection(in SVGElement element, in SVGRect rect); + boolean checkEnclosure(in SVGElement element, in SVGRect rect); + void deselectAll(); + SVGNumber createSVGNumber(); + SVGLength createSVGLength(); + SVGAngle createSVGAngle(); + SVGPoint createSVGPoint(); + SVGMatrix createSVGMatrix(); + SVGRect createSVGRect(); + SVGTransform createSVGTransform(); + SVGTransform createSVGTransformFromMatrix(in SVGMatrix matrix); + Element getElementById(in DOMString elementId); +}; + +interface SVGGElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable { +}; + +interface SVGDefsElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable { +}; + +interface SVGDescElement : SVGElement, + SVGLangSpace, + SVGStylable { +}; + +interface SVGTitleElement : SVGElement, + SVGLangSpace, + SVGStylable { +}; + +interface SVGSymbolElement : SVGElement, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGFitToViewBox { +}; + +interface SVGUseElement : SVGElement, + SVGURIReference, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable { + readonly attribute SVGAnimatedLength x; + readonly attribute SVGAnimatedLength y; + readonly attribute SVGAnimatedLength width; + readonly attribute SVGAnimatedLength height; + readonly attribute SVGElementInstance instanceRoot; + readonly attribute SVGElementInstance animatedInstanceRoot; +}; + +interface SVGElementInstance : EventTarget { + readonly attribute SVGElement correspondingElement; + readonly attribute SVGUseElement correspondingUseElement; + readonly attribute SVGElementInstance parentNode; + readonly attribute SVGElementInstanceList childNodes; + readonly attribute SVGElementInstance firstChild; + readonly attribute SVGElementInstance lastChild; + readonly attribute SVGElementInstance previousSibling; + readonly attribute SVGElementInstance nextSibling; +}; + +interface SVGElementInstanceList { + + readonly attribute unsigned long length; + + SVGElementInstance item(in unsigned long index); +}; + +interface SVGImageElement : SVGElement, + SVGURIReference, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable { + readonly attribute SVGAnimatedLength x; + readonly attribute SVGAnimatedLength y; + readonly attribute SVGAnimatedLength width; + readonly attribute SVGAnimatedLength height; + readonly attribute SVGAnimatedPreserveAspectRatio preserveAspectRatio; +}; + +interface SVGSwitchElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable { +}; + +interface GetSVGDocument { + SVGDocument getSVGDocument(); +}; + +interface SVGStyleElement : SVGElement, + SVGLangSpace { + attribute DOMString type setraises(DOMException); + attribute DOMString media setraises(DOMException); + attribute DOMString title setraises(DOMException); +}; + +interface SVGPoint { + + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); + + SVGPoint matrixTransform(in SVGMatrix matrix); +}; + +interface SVGPointList { + + readonly attribute unsigned long numberOfItems; + + void clear() raises(DOMException); + SVGPoint initialize(in SVGPoint newItem) raises(DOMException); + SVGPoint getItem(in unsigned long index) raises(DOMException); + SVGPoint insertItemBefore(in SVGPoint newItem, in unsigned long index) raises(DOMException); + SVGPoint replaceItem(in SVGPoint newItem, in unsigned long index) raises(DOMException); + SVGPoint removeItem(in unsigned long index) raises(DOMException); + SVGPoint appendItem(in SVGPoint newItem) raises(DOMException); +}; + +interface SVGMatrix { + + attribute float a setraises(DOMException); + attribute float b setraises(DOMException); + attribute float c setraises(DOMException); + attribute float d setraises(DOMException); + attribute float e setraises(DOMException); + attribute float f setraises(DOMException); + + SVGMatrix multiply(in SVGMatrix secondMatrix); + SVGMatrix inverse() raises(SVGException); + SVGMatrix translate(in float x, in float y); + SVGMatrix scale(in float scaleFactor); + SVGMatrix scaleNonUniform(in float scaleFactorX, in float scaleFactorY); + SVGMatrix rotate(in float angle); + SVGMatrix rotateFromVector(in float x, in float y) raises(SVGException); + SVGMatrix flipX(); + SVGMatrix flipY(); + SVGMatrix skewX(in float angle); + SVGMatrix skewY(in float angle); +}; + +interface SVGTransform { + + // Transform Types + const unsigned short SVG_TRANSFORM_UNKNOWN = 0; + const unsigned short SVG_TRANSFORM_MATRIX = 1; + const unsigned short SVG_TRANSFORM_TRANSLATE = 2; + const unsigned short SVG_TRANSFORM_SCALE = 3; + const unsigned short SVG_TRANSFORM_ROTATE = 4; + const unsigned short SVG_TRANSFORM_SKEWX = 5; + const unsigned short SVG_TRANSFORM_SKEWY = 6; + + readonly attribute unsigned short type; + readonly attribute SVGMatrix matrix; + readonly attribute float angle; + + void setMatrix(in SVGMatrix matrix) raises(DOMException); + void setTranslate(in float tx, in float ty) raises(DOMException); + void setScale(in float sx, in float sy) raises(DOMException); + void setRotate(in float angle, in float cx, in float cy) raises(DOMException); + void setSkewX(in float angle) raises(DOMException); + void setSkewY(in float angle) raises(DOMException); +}; + +interface SVGTransformList { + + readonly attribute unsigned long numberOfItems; + + void clear() raises(DOMException); + SVGTransform initialize(in SVGTransform newItem) raises(DOMException); + SVGTransform getItem(in unsigned long index) raises(DOMException); + SVGTransform insertItemBefore(in SVGTransform newItem, in unsigned long index) raises(DOMException); + SVGTransform replaceItem(in SVGTransform newItem, in unsigned long index) raises(DOMException); + SVGTransform removeItem(in unsigned long index) raises(DOMException); + SVGTransform appendItem(in SVGTransform newItem) raises(DOMException); + SVGTransform createSVGTransformFromMatrix(in SVGMatrix matrix); + SVGTransform consolidate() raises(DOMException); +}; + +interface SVGAnimatedTransformList { + readonly attribute SVGTransformList baseVal; + readonly attribute SVGTransformList animVal; +}; + +interface SVGPreserveAspectRatio { + + // Alignment Types + const unsigned short SVG_PRESERVEASPECTRATIO_UNKNOWN = 0; + const unsigned short SVG_PRESERVEASPECTRATIO_NONE = 1; + const unsigned short SVG_PRESERVEASPECTRATIO_XMINYMIN = 2; + const unsigned short SVG_PRESERVEASPECTRATIO_XMIDYMIN = 3; + const unsigned short SVG_PRESERVEASPECTRATIO_XMAXYMIN = 4; + const unsigned short SVG_PRESERVEASPECTRATIO_XMINYMID = 5; + const unsigned short SVG_PRESERVEASPECTRATIO_XMIDYMID = 6; + const unsigned short SVG_PRESERVEASPECTRATIO_XMAXYMID = 7; + const unsigned short SVG_PRESERVEASPECTRATIO_XMINYMAX = 8; + const unsigned short SVG_PRESERVEASPECTRATIO_XMIDYMAX = 9; + const unsigned short SVG_PRESERVEASPECTRATIO_XMAXYMAX = 10; + + // Meet-or-slice Types + const unsigned short SVG_MEETORSLICE_UNKNOWN = 0; + const unsigned short SVG_MEETORSLICE_MEET = 1; + const unsigned short SVG_MEETORSLICE_SLICE = 2; + + attribute unsigned short align setraises(DOMException); + attribute unsigned short meetOrSlice setraises(DOMException); +}; + +interface SVGAnimatedPreserveAspectRatio { + readonly attribute SVGPreserveAspectRatio baseVal; + readonly attribute SVGPreserveAspectRatio animVal; +}; + +interface SVGPathSeg { + + // Path Segment Types + const unsigned short PATHSEG_UNKNOWN = 0; + const unsigned short PATHSEG_CLOSEPATH = 1; + const unsigned short PATHSEG_MOVETO_ABS = 2; + const unsigned short PATHSEG_MOVETO_REL = 3; + const unsigned short PATHSEG_LINETO_ABS = 4; + const unsigned short PATHSEG_LINETO_REL = 5; + const unsigned short PATHSEG_CURVETO_CUBIC_ABS = 6; + const unsigned short PATHSEG_CURVETO_CUBIC_REL = 7; + const unsigned short PATHSEG_CURVETO_QUADRATIC_ABS = 8; + const unsigned short PATHSEG_CURVETO_QUADRATIC_REL = 9; + const unsigned short PATHSEG_ARC_ABS = 10; + const unsigned short PATHSEG_ARC_REL = 11; + const unsigned short PATHSEG_LINETO_HORIZONTAL_ABS = 12; + const unsigned short PATHSEG_LINETO_HORIZONTAL_REL = 13; + const unsigned short PATHSEG_LINETO_VERTICAL_ABS = 14; + const unsigned short PATHSEG_LINETO_VERTICAL_REL = 15; + const unsigned short PATHSEG_CURVETO_CUBIC_SMOOTH_ABS = 16; + const unsigned short PATHSEG_CURVETO_CUBIC_SMOOTH_REL = 17; + const unsigned short PATHSEG_CURVETO_QUADRATIC_SMOOTH_ABS = 18; + const unsigned short PATHSEG_CURVETO_QUADRATIC_SMOOTH_REL = 19; + + readonly attribute unsigned short pathSegType; + readonly attribute DOMString pathSegTypeAsLetter; +}; + +interface SVGPathSegClosePath : SVGPathSeg { +}; + +interface SVGPathSegMovetoAbs : SVGPathSeg { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); +}; + +interface SVGPathSegMovetoRel : SVGPathSeg { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); +}; + +interface SVGPathSegLinetoAbs : SVGPathSeg { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); +}; + +interface SVGPathSegLinetoRel : SVGPathSeg { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); +}; + +interface SVGPathSegCurvetoCubicAbs : SVGPathSeg { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); + attribute float x1 setraises(DOMException); + attribute float y1 setraises(DOMException); + attribute float x2 setraises(DOMException); + attribute float y2 setraises(DOMException); +}; + +interface SVGPathSegCurvetoCubicRel : SVGPathSeg { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); + attribute float x1 setraises(DOMException); + attribute float y1 setraises(DOMException); + attribute float x2 setraises(DOMException); + attribute float y2 setraises(DOMException); +}; + +interface SVGPathSegCurvetoQuadraticAbs : SVGPathSeg { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); + attribute float x1 setraises(DOMException); + attribute float y1 setraises(DOMException); +}; + +interface SVGPathSegCurvetoQuadraticRel : SVGPathSeg { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); + attribute float x1 setraises(DOMException); + attribute float y1 setraises(DOMException); +}; + +interface SVGPathSegArcAbs : SVGPathSeg { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); + attribute float r1 setraises(DOMException); + attribute float r2 setraises(DOMException); + attribute float angle setraises(DOMException); + attribute boolean largeArcFlag setraises(DOMException); + attribute boolean sweepFlag setraises(DOMException); +}; + +interface SVGPathSegArcRel : SVGPathSeg { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); + attribute float r1 setraises(DOMException); + attribute float r2 setraises(DOMException); + attribute float angle setraises(DOMException); + attribute boolean largeArcFlag setraises(DOMException); + attribute boolean sweepFlag setraises(DOMException); +}; + +interface SVGPathSegLinetoHorizontalAbs : SVGPathSeg { + attribute float x setraises(DOMException); +}; + +interface SVGPathSegLinetoHorizontalRel : SVGPathSeg { + attribute float x setraises(DOMException); +}; + +interface SVGPathSegLinetoVerticalAbs : SVGPathSeg { + attribute float y setraises(DOMException); +}; + +interface SVGPathSegLinetoVerticalRel : SVGPathSeg { + attribute float y setraises(DOMException); +}; + +interface SVGPathSegCurvetoCubicSmoothAbs : SVGPathSeg { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); + attribute float x2 setraises(DOMException); + attribute float y2 setraises(DOMException); +}; + +interface SVGPathSegCurvetoCubicSmoothRel : SVGPathSeg { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); + attribute float x2 setraises(DOMException); + attribute float y2 setraises(DOMException); +}; + +interface SVGPathSegCurvetoQuadraticSmoothAbs : SVGPathSeg { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); +}; + +interface SVGPathSegCurvetoQuadraticSmoothRel : SVGPathSeg { + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); +}; + +interface SVGPathSegList { + + readonly attribute unsigned long numberOfItems; + + void clear() raises(DOMException); + SVGPathSeg initialize(in SVGPathSeg newItem) raises(DOMException); + SVGPathSeg getItem(in unsigned long index) raises(DOMException); + SVGPathSeg insertItemBefore(in SVGPathSeg newItem, in unsigned long index) raises(DOMException); + SVGPathSeg replaceItem(in SVGPathSeg newItem, in unsigned long index) raises(DOMException); + SVGPathSeg removeItem(in unsigned long index) raises(DOMException); + SVGPathSeg appendItem(in SVGPathSeg newItem) raises(DOMException); +}; + +interface SVGAnimatedPathData { + readonly attribute SVGPathSegList pathSegList; + readonly attribute SVGPathSegList normalizedPathSegList; + readonly attribute SVGPathSegList animatedPathSegList; + readonly attribute SVGPathSegList animatedNormalizedPathSegList; +}; + +interface SVGPathElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable, + SVGAnimatedPathData { + + readonly attribute SVGAnimatedNumber pathLength; + + float getTotalLength(); + SVGPoint getPointAtLength(in float distance); + unsigned long getPathSegAtLength(in float distance); + SVGPathSegClosePath createSVGPathSegClosePath(); + SVGPathSegMovetoAbs createSVGPathSegMovetoAbs(in float x, in float y); + SVGPathSegMovetoRel createSVGPathSegMovetoRel(in float x, in float y); + SVGPathSegLinetoAbs createSVGPathSegLinetoAbs(in float x, in float y); + SVGPathSegLinetoRel createSVGPathSegLinetoRel(in float x, in float y); + SVGPathSegCurvetoCubicAbs createSVGPathSegCurvetoCubicAbs(in float x, in float y, in float x1, in float y1, in float x2, in float y2); + SVGPathSegCurvetoCubicRel createSVGPathSegCurvetoCubicRel(in float x, in float y, in float x1, in float y1, in float x2, in float y2); + SVGPathSegCurvetoQuadraticAbs createSVGPathSegCurvetoQuadraticAbs(in float x, in float y, in float x1, in float y1); + SVGPathSegCurvetoQuadraticRel createSVGPathSegCurvetoQuadraticRel(in float x, in float y, in float x1, in float y1); + SVGPathSegArcAbs createSVGPathSegArcAbs(in float x, in float y, in float r1, in float r2, in float angle, in boolean largeArcFlag, in boolean sweepFlag); + SVGPathSegArcRel createSVGPathSegArcRel(in float x, in float y, in float r1, in float r2, in float angle, in boolean largeArcFlag, in boolean sweepFlag); + SVGPathSegLinetoHorizontalAbs createSVGPathSegLinetoHorizontalAbs(in float x); + SVGPathSegLinetoHorizontalRel createSVGPathSegLinetoHorizontalRel(in float x); + SVGPathSegLinetoVerticalAbs createSVGPathSegLinetoVerticalAbs(in float y); + SVGPathSegLinetoVerticalRel createSVGPathSegLinetoVerticalRel(in float y); + SVGPathSegCurvetoCubicSmoothAbs createSVGPathSegCurvetoCubicSmoothAbs(in float x, in float y, in float x2, in float y2); + SVGPathSegCurvetoCubicSmoothRel createSVGPathSegCurvetoCubicSmoothRel(in float x, in float y, in float x2, in float y2); + SVGPathSegCurvetoQuadraticSmoothAbs createSVGPathSegCurvetoQuadraticSmoothAbs(in float x, in float y); + SVGPathSegCurvetoQuadraticSmoothRel createSVGPathSegCurvetoQuadraticSmoothRel(in float x, in float y); +}; + +interface SVGRectElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable { + readonly attribute SVGAnimatedLength x; + readonly attribute SVGAnimatedLength y; + readonly attribute SVGAnimatedLength width; + readonly attribute SVGAnimatedLength height; + readonly attribute SVGAnimatedLength rx; + readonly attribute SVGAnimatedLength ry; +}; + +interface SVGCircleElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable { + readonly attribute SVGAnimatedLength cx; + readonly attribute SVGAnimatedLength cy; + readonly attribute SVGAnimatedLength r; +}; + +interface SVGEllipseElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable { + readonly attribute SVGAnimatedLength cx; + readonly attribute SVGAnimatedLength cy; + readonly attribute SVGAnimatedLength rx; + readonly attribute SVGAnimatedLength ry; +}; + +interface SVGLineElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable { + readonly attribute SVGAnimatedLength x1; + readonly attribute SVGAnimatedLength y1; + readonly attribute SVGAnimatedLength x2; + readonly attribute SVGAnimatedLength y2; +}; + +interface SVGAnimatedPoints { + readonly attribute SVGPointList points; + readonly attribute SVGPointList animatedPoints; +}; + +interface SVGPolylineElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable, + SVGAnimatedPoints { +}; + +interface SVGPolygonElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable, + SVGAnimatedPoints { +}; + +interface SVGTextContentElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable { + + // lengthAdjust Types + const unsigned short LENGTHADJUST_UNKNOWN = 0; + const unsigned short LENGTHADJUST_SPACING = 1; + const unsigned short LENGTHADJUST_SPACINGANDGLYPHS = 2; + + readonly attribute SVGAnimatedLength textLength; + readonly attribute SVGAnimatedEnumeration lengthAdjust; + + long getNumberOfChars(); + float getComputedTextLength(); + float getSubStringLength(in unsigned long charnum, in unsigned long nchars) raises(DOMException); + SVGPoint getStartPositionOfChar(in unsigned long charnum) raises(DOMException); + SVGPoint getEndPositionOfChar(in unsigned long charnum) raises(DOMException); + SVGRect getExtentOfChar(in unsigned long charnum) raises(DOMException); + float getRotationOfChar(in unsigned long charnum) raises(DOMException); + long getCharNumAtPosition(in SVGPoint point); + void selectSubString(in unsigned long charnum, in unsigned long nchars) raises(DOMException); +}; + +interface SVGTextPositioningElement : SVGTextContentElement { + readonly attribute SVGAnimatedLengthList x; + readonly attribute SVGAnimatedLengthList y; + readonly attribute SVGAnimatedLengthList dx; + readonly attribute SVGAnimatedLengthList dy; + readonly attribute SVGAnimatedNumberList rotate; +}; + +interface SVGTextElement : SVGTextPositioningElement, + SVGTransformable { +}; + +interface SVGTSpanElement : SVGTextPositioningElement { +}; + +interface SVGTRefElement : SVGTextPositioningElement, + SVGURIReference { +}; + +interface SVGTextPathElement : SVGTextContentElement, + SVGURIReference { + + // textPath Method Types + const unsigned short TEXTPATH_METHODTYPE_UNKNOWN = 0; + const unsigned short TEXTPATH_METHODTYPE_ALIGN = 1; + const unsigned short TEXTPATH_METHODTYPE_STRETCH = 2; + + // textPath Spacing Types + const unsigned short TEXTPATH_SPACINGTYPE_UNKNOWN = 0; + const unsigned short TEXTPATH_SPACINGTYPE_AUTO = 1; + const unsigned short TEXTPATH_SPACINGTYPE_EXACT = 2; + + readonly attribute SVGAnimatedLength startOffset; + readonly attribute SVGAnimatedEnumeration method; + readonly attribute SVGAnimatedEnumeration spacing; +}; + +interface SVGAltGlyphElement : SVGTextPositioningElement, + SVGURIReference { + attribute DOMString glyphRef setraises(DOMException); + attribute DOMString format setraises(DOMException); +}; + +interface SVGAltGlyphDefElement : SVGElement { +}; + +interface SVGAltGlyphItemElement : SVGElement { +}; + +interface SVGGlyphRefElement : SVGElement, + SVGURIReference, + SVGStylable { + attribute DOMString glyphRef setraises(DOMException); + attribute DOMString format setraises(DOMException); + attribute float x setraises(DOMException); + attribute float y setraises(DOMException); + attribute float dx setraises(DOMException); + attribute float dy setraises(DOMException); +}; + +interface SVGPaint : SVGColor { + + // Paint Types + const unsigned short SVG_PAINTTYPE_UNKNOWN = 0; + const unsigned short SVG_PAINTTYPE_RGBCOLOR = 1; + const unsigned short SVG_PAINTTYPE_RGBCOLOR_ICCCOLOR = 2; + const unsigned short SVG_PAINTTYPE_NONE = 101; + const unsigned short SVG_PAINTTYPE_CURRENTCOLOR = 102; + const unsigned short SVG_PAINTTYPE_URI_NONE = 103; + const unsigned short SVG_PAINTTYPE_URI_CURRENTCOLOR = 104; + const unsigned short SVG_PAINTTYPE_URI_RGBCOLOR = 105; + const unsigned short SVG_PAINTTYPE_URI_RGBCOLOR_ICCCOLOR = 106; + const unsigned short SVG_PAINTTYPE_URI = 107; + + readonly attribute unsigned short paintType; + readonly attribute DOMString uri; + + void setUri(in DOMString uri); + void setPaint(in unsigned short paintType, in DOMString uri, in DOMString rgbColor, in DOMString iccColor) raises(SVGException); +}; + +interface SVGMarkerElement : SVGElement, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGFitToViewBox { + + // Marker Unit Types + const unsigned short SVG_MARKERUNITS_UNKNOWN = 0; + const unsigned short SVG_MARKERUNITS_USERSPACEONUSE = 1; + const unsigned short SVG_MARKERUNITS_STROKEWIDTH = 2; + + // Marker Orientation Types + const unsigned short SVG_MARKER_ORIENT_UNKNOWN = 0; + const unsigned short SVG_MARKER_ORIENT_AUTO = 1; + const unsigned short SVG_MARKER_ORIENT_ANGLE = 2; + + readonly attribute SVGAnimatedLength refX; + readonly attribute SVGAnimatedLength refY; + readonly attribute SVGAnimatedEnumeration markerUnits; + readonly attribute SVGAnimatedLength markerWidth; + readonly attribute SVGAnimatedLength markerHeight; + readonly attribute SVGAnimatedEnumeration orientType; + readonly attribute SVGAnimatedAngle orientAngle; + + void setOrientToAuto() raises(DOMException); + void setOrientToAngle(in SVGAngle angle) raises(DOMException); +}; + +interface SVGColorProfileElement : SVGElement, + SVGURIReference, + SVGRenderingIntent { + attribute DOMString local; + attribute DOMString name; + attribute unsigned short renderingIntent; +}; + +interface SVGColorProfileRule : SVGCSSRule, + SVGRenderingIntent { + attribute DOMString src setraises(DOMException); + attribute DOMString name setraises(DOMException); + attribute unsigned short renderingIntent setraises(DOMException); +}; + +interface SVGGradientElement : SVGElement, + SVGURIReference, + SVGExternalResourcesRequired, + SVGStylable, + SVGUnitTypes { + + // Spread Method Types + const unsigned short SVG_SPREADMETHOD_UNKNOWN = 0; + const unsigned short SVG_SPREADMETHOD_PAD = 1; + const unsigned short SVG_SPREADMETHOD_REFLECT = 2; + const unsigned short SVG_SPREADMETHOD_REPEAT = 3; + + readonly attribute SVGAnimatedEnumeration gradientUnits; + readonly attribute SVGAnimatedTransformList gradientTransform; + readonly attribute SVGAnimatedEnumeration spreadMethod; +}; + +interface SVGLinearGradientElement : SVGGradientElement { + readonly attribute SVGAnimatedLength x1; + readonly attribute SVGAnimatedLength y1; + readonly attribute SVGAnimatedLength x2; + readonly attribute SVGAnimatedLength y2; +}; + +interface SVGRadialGradientElement : SVGGradientElement { + readonly attribute SVGAnimatedLength cx; + readonly attribute SVGAnimatedLength cy; + readonly attribute SVGAnimatedLength r; + readonly attribute SVGAnimatedLength fx; + readonly attribute SVGAnimatedLength fy; +}; + +interface SVGStopElement : SVGElement, + SVGStylable { + readonly attribute SVGAnimatedNumber offset; +}; + +interface SVGPatternElement : SVGElement, + SVGURIReference, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGFitToViewBox, + SVGUnitTypes { + readonly attribute SVGAnimatedEnumeration patternUnits; + readonly attribute SVGAnimatedEnumeration patternContentUnits; + readonly attribute SVGAnimatedTransformList patternTransform; + readonly attribute SVGAnimatedLength x; + readonly attribute SVGAnimatedLength y; + readonly attribute SVGAnimatedLength width; + readonly attribute SVGAnimatedLength height; +}; + +interface SVGClipPathElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable, + SVGUnitTypes { + readonly attribute SVGAnimatedEnumeration clipPathUnits; +}; + +interface SVGMaskElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGUnitTypes { + readonly attribute SVGAnimatedEnumeration maskUnits; + readonly attribute SVGAnimatedEnumeration maskContentUnits; + readonly attribute SVGAnimatedLength x; + readonly attribute SVGAnimatedLength y; + readonly attribute SVGAnimatedLength width; + readonly attribute SVGAnimatedLength height; +}; + +interface SVGFilterElement : SVGElement, + SVGURIReference, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGUnitTypes { + + readonly attribute SVGAnimatedEnumeration filterUnits; + readonly attribute SVGAnimatedEnumeration primitiveUnits; + readonly attribute SVGAnimatedLength x; + readonly attribute SVGAnimatedLength y; + readonly attribute SVGAnimatedLength width; + readonly attribute SVGAnimatedLength height; + readonly attribute SVGAnimatedInteger filterResX; + readonly attribute SVGAnimatedInteger filterResY; + + void setFilterRes(in unsigned long filterResX, in unsigned long filterResY) raises(DOMException); +}; + +interface SVGFilterPrimitiveStandardAttributes : SVGStylable { + readonly attribute SVGAnimatedLength x; + readonly attribute SVGAnimatedLength y; + readonly attribute SVGAnimatedLength width; + readonly attribute SVGAnimatedLength height; + readonly attribute SVGAnimatedString result; +}; + +interface SVGFEBlendElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { + + // Blend Mode Types + const unsigned short SVG_FEBLEND_MODE_UNKNOWN = 0; + const unsigned short SVG_FEBLEND_MODE_NORMAL = 1; + const unsigned short SVG_FEBLEND_MODE_MULTIPLY = 2; + const unsigned short SVG_FEBLEND_MODE_SCREEN = 3; + const unsigned short SVG_FEBLEND_MODE_DARKEN = 4; + const unsigned short SVG_FEBLEND_MODE_LIGHTEN = 5; + + readonly attribute SVGAnimatedString in1; + readonly attribute SVGAnimatedString in2; + readonly attribute SVGAnimatedEnumeration mode; +}; + +interface SVGFEColorMatrixElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { + + // Color Matrix Types + const unsigned short SVG_FECOLORMATRIX_TYPE_UNKNOWN = 0; + const unsigned short SVG_FECOLORMATRIX_TYPE_MATRIX = 1; + const unsigned short SVG_FECOLORMATRIX_TYPE_SATURATE = 2; + const unsigned short SVG_FECOLORMATRIX_TYPE_HUEROTATE = 3; + const unsigned short SVG_FECOLORMATRIX_TYPE_LUMINANCETOALPHA = 4; + + readonly attribute SVGAnimatedString in1; + readonly attribute SVGAnimatedEnumeration type; + readonly attribute SVGAnimatedNumberList values; +}; + +interface SVGFEComponentTransferElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { + readonly attribute SVGAnimatedString in1; +}; + +interface SVGComponentTransferFunctionElement : SVGElement { + + // Component Transfer Types + const unsigned short SVG_FECOMPONENTTRANSFER_TYPE_UNKNOWN = 0; + const unsigned short SVG_FECOMPONENTTRANSFER_TYPE_IDENTITY = 1; + const unsigned short SVG_FECOMPONENTTRANSFER_TYPE_TABLE = 2; + const unsigned short SVG_FECOMPONENTTRANSFER_TYPE_DISCRETE = 3; + const unsigned short SVG_FECOMPONENTTRANSFER_TYPE_LINEAR = 4; + const unsigned short SVG_FECOMPONENTTRANSFER_TYPE_GAMMA = 5; + + readonly attribute SVGAnimatedEnumeration type; + readonly attribute SVGAnimatedNumberList tableValues; + readonly attribute SVGAnimatedNumber slope; + readonly attribute SVGAnimatedNumber intercept; + readonly attribute SVGAnimatedNumber amplitude; + readonly attribute SVGAnimatedNumber exponent; + readonly attribute SVGAnimatedNumber offset; +}; + +interface SVGFEFuncRElement : SVGComponentTransferFunctionElement { +}; + +interface SVGFEFuncGElement : SVGComponentTransferFunctionElement { +}; + +interface SVGFEFuncBElement : SVGComponentTransferFunctionElement { +}; + +interface SVGFEFuncAElement : SVGComponentTransferFunctionElement { +}; + +interface SVGFECompositeElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { + + // Composite Operators + const unsigned short SVG_FECOMPOSITE_OPERATOR_UNKNOWN = 0; + const unsigned short SVG_FECOMPOSITE_OPERATOR_OVER = 1; + const unsigned short SVG_FECOMPOSITE_OPERATOR_IN = 2; + const unsigned short SVG_FECOMPOSITE_OPERATOR_OUT = 3; + const unsigned short SVG_FECOMPOSITE_OPERATOR_ATOP = 4; + const unsigned short SVG_FECOMPOSITE_OPERATOR_XOR = 5; + const unsigned short SVG_FECOMPOSITE_OPERATOR_ARITHMETIC = 6; + + readonly attribute SVGAnimatedString in1; + readonly attribute SVGAnimatedString in2; + readonly attribute SVGAnimatedEnumeration operator; + readonly attribute SVGAnimatedNumber k1; + readonly attribute SVGAnimatedNumber k2; + readonly attribute SVGAnimatedNumber k3; + readonly attribute SVGAnimatedNumber k4; +}; + +interface SVGFEConvolveMatrixElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { + + // Edge Mode Values + const unsigned short SVG_EDGEMODE_UNKNOWN = 0; + const unsigned short SVG_EDGEMODE_DUPLICATE = 1; + const unsigned short SVG_EDGEMODE_WRAP = 2; + const unsigned short SVG_EDGEMODE_NONE = 3; + + readonly attribute SVGAnimatedString in1; + readonly attribute SVGAnimatedInteger orderX; + readonly attribute SVGAnimatedInteger orderY; + readonly attribute SVGAnimatedNumberList kernelMatrix; + readonly attribute SVGAnimatedNumber divisor; + readonly attribute SVGAnimatedNumber bias; + readonly attribute SVGAnimatedInteger targetX; + readonly attribute SVGAnimatedInteger targetY; + readonly attribute SVGAnimatedEnumeration edgeMode; + readonly attribute SVGAnimatedNumber kernelUnitLengthX; + readonly attribute SVGAnimatedNumber kernelUnitLengthY; + readonly attribute SVGAnimatedBoolean preserveAlpha; +}; + +interface SVGFEDiffuseLightingElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { + readonly attribute SVGAnimatedString in1; + readonly attribute SVGAnimatedNumber surfaceScale; + readonly attribute SVGAnimatedNumber diffuseConstant; + readonly attribute SVGAnimatedNumber kernelUnitLengthX; + readonly attribute SVGAnimatedNumber kernelUnitLengthY; +}; + +interface SVGFEDistantLightElement : SVGElement { + readonly attribute SVGAnimatedNumber azimuth; + readonly attribute SVGAnimatedNumber elevation; +}; + +interface SVGFEPointLightElement : SVGElement { + readonly attribute SVGAnimatedNumber x; + readonly attribute SVGAnimatedNumber y; + readonly attribute SVGAnimatedNumber z; +}; + +interface SVGFESpotLightElement : SVGElement { + readonly attribute SVGAnimatedNumber x; + readonly attribute SVGAnimatedNumber y; + readonly attribute SVGAnimatedNumber z; + readonly attribute SVGAnimatedNumber pointsAtX; + readonly attribute SVGAnimatedNumber pointsAtY; + readonly attribute SVGAnimatedNumber pointsAtZ; + readonly attribute SVGAnimatedNumber specularExponent; + readonly attribute SVGAnimatedNumber limitingConeAngle; +}; + +interface SVGFEDisplacementMapElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { + + // Channel Selectors + const unsigned short SVG_CHANNEL_UNKNOWN = 0; + const unsigned short SVG_CHANNEL_R = 1; + const unsigned short SVG_CHANNEL_G = 2; + const unsigned short SVG_CHANNEL_B = 3; + const unsigned short SVG_CHANNEL_A = 4; + + readonly attribute SVGAnimatedString in1; + readonly attribute SVGAnimatedString in2; + readonly attribute SVGAnimatedNumber scale; + readonly attribute SVGAnimatedEnumeration xChannelSelector; + readonly attribute SVGAnimatedEnumeration yChannelSelector; +}; + +interface SVGFEFloodElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { +}; + +interface SVGFEGaussianBlurElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { + + readonly attribute SVGAnimatedString in1; + readonly attribute SVGAnimatedNumber stdDeviationX; + readonly attribute SVGAnimatedNumber stdDeviationY; + + void setStdDeviation(in float stdDeviationX, in float stdDeviationY) raises(DOMException); +}; + +interface SVGFEImageElement : SVGElement, + SVGURIReference, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGFilterPrimitiveStandardAttributes { + readonly attribute SVGAnimatedPreserveAspectRatio preserveAspectRatio; +}; + +interface SVGFEMergeElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { +}; + +interface SVGFEMergeNodeElement : SVGElement { + readonly attribute SVGAnimatedString in1; +}; + +interface SVGFEMorphologyElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { + + // Morphology Operators + const unsigned short SVG_MORPHOLOGY_OPERATOR_UNKNOWN = 0; + const unsigned short SVG_MORPHOLOGY_OPERATOR_ERODE = 1; + const unsigned short SVG_MORPHOLOGY_OPERATOR_DILATE = 2; + + readonly attribute SVGAnimatedString in1; + readonly attribute SVGAnimatedEnumeration operator; + readonly attribute SVGAnimatedNumber radiusX; + readonly attribute SVGAnimatedNumber radiusY; +}; + +interface SVGFEOffsetElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { + readonly attribute SVGAnimatedString in1; + readonly attribute SVGAnimatedNumber dx; + readonly attribute SVGAnimatedNumber dy; +}; + +interface SVGFESpecularLightingElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { + readonly attribute SVGAnimatedString in1; + readonly attribute SVGAnimatedNumber surfaceScale; + readonly attribute SVGAnimatedNumber specularConstant; + readonly attribute SVGAnimatedNumber specularExponent; + readonly attribute SVGAnimatedNumber kernelUnitLengthX; + readonly attribute SVGAnimatedNumber kernelUnitLengthY; +}; + +interface SVGFETileElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { + readonly attribute SVGAnimatedString in1; +}; + +interface SVGFETurbulenceElement : SVGElement, + SVGFilterPrimitiveStandardAttributes { + + // 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; +}; + +interface SVGCursorElement : SVGElement, + SVGURIReference, + SVGTests, + SVGExternalResourcesRequired { + readonly attribute SVGAnimatedLength x; + readonly attribute SVGAnimatedLength y; +}; + +interface SVGAElement : SVGElement, + SVGURIReference, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable { + readonly attribute SVGAnimatedString target; +}; + +interface SVGViewElement : SVGElement, + SVGExternalResourcesRequired, + SVGFitToViewBox, + SVGZoomAndPan { + readonly attribute SVGStringList viewTarget; +}; + +interface SVGScriptElement : SVGElement, + SVGURIReference, + SVGExternalResourcesRequired { + attribute DOMString type setraises(DOMException); +}; + +interface SVGZoomEvent : UIEvent { + readonly attribute SVGRect zoomRectScreen; + readonly attribute float previousScale; + readonly attribute SVGPoint previousTranslate; + readonly attribute float newScale; + readonly attribute SVGPoint newTranslate; +}; + +interface SVGAnimationElement : SVGElement, + SVGTests, + SVGExternalResourcesRequired, + ElementTimeControl { + + readonly attribute SVGElement targetElement; + + float getStartTime() raises(DOMException); + float getCurrentTime(); + float getSimpleDuration() raises(DOMException); +}; + +interface SVGAnimateElement : SVGAnimationElement, + SVGStylable { +}; + +interface SVGSetElement : SVGAnimationElement { +}; + +interface SVGAnimateMotionElement : SVGAnimationElement { +}; + +interface SVGMPathElement : SVGElement, + SVGURIReference, + SVGExternalResourcesRequired { +}; + +interface SVGAnimateColorElement : SVGAnimationElement, + SVGStylable { +}; + +interface SVGAnimateTransformElement : SVGAnimationElement { +}; + +interface SVGFontElement : SVGElement, + SVGExternalResourcesRequired, + SVGStylable { +}; + +interface SVGGlyphElement : SVGElement, + SVGStylable { +}; + +interface SVGMissingGlyphElement : SVGElement, + SVGStylable { +}; + +interface SVGHKernElement : SVGElement { +}; + +interface SVGVKernElement : SVGElement { +}; + +interface SVGFontFaceElement : SVGElement { +}; + +interface SVGFontFaceSrcElement : SVGElement { +}; + +interface SVGFontFaceUriElement : SVGElement { +}; + +interface SVGFontFaceFormatElement : SVGElement { +}; + +interface SVGFontFaceNameElement : SVGElement { +}; + +interface SVGMetadataElement : SVGElement { +}; + +interface SVGForeignObjectElement : SVGElement, + SVGTests, + SVGLangSpace, + SVGExternalResourcesRequired, + SVGStylable, + SVGTransformable { + readonly attribute SVGAnimatedLength x; + readonly attribute SVGAnimatedLength y; + readonly attribute SVGAnimatedLength width; + readonly attribute SVGAnimatedLength height; +}; + +}; + diff --git a/libraries/tools/idl2k/src/main/antlr4/org/antlr/webidl/WebIDL.g4 b/libraries/tools/idl2k/src/main/antlr4/org/antlr/webidl/WebIDL.g4 index c9540d4bfc7..d820a4f88ab 100644 --- a/libraries/tools/idl2k/src/main/antlr4/org/antlr/webidl/WebIDL.g4 +++ b/libraries/tools/idl2k/src/main/antlr4/org/antlr/webidl/WebIDL.g4 @@ -67,14 +67,25 @@ definition | dictionary | enum_ | typedef + | exception_ + | const_ + | module | implementsStatement ; +module + : 'module' IDENTIFIER_WEBIDL '{' definitions '}' ';'? + ; + callbackOrInterface : 'callback' callbackRestOrInterface | interface_ ; +exception_ + : 'exception' IDENTIFIER_WEBIDL inheritance '{' dictionaryMembers '}' ';' + ; + callbackRestOrInterface : callbackRest | interface_ @@ -150,7 +161,7 @@ defaultValue ; inheritance - : ':' IDENTIFIER_WEBIDL + : ':' IDENTIFIER_WEBIDL ( ',' IDENTIFIER_WEBIDL )* | /* empty */ ; @@ -271,16 +282,11 @@ readWriteAttribute ; attributeRest - : 'attribute' type (IDENTIFIER_WEBIDL | 'required') ';' + : 'attribute' type (IDENTIFIER_WEBIDL | 'required') attributeAnnotations* ';' ; -attributeName - : attributeNameKeyword - | IDENTIFIER_WEBIDL -; - -attributeNameKeyword - : 'required' +attributeAnnotations + : IDENTIFIER_WEBIDL ( '(' type (',' type)* ')' )? ; inherit @@ -316,7 +322,7 @@ special ; operationRest - : optionalIdentifier '(' argumentList ')' ';' + : optionalIdentifier '(' argumentList ')' attributeAnnotations* ';' ; optionalIdentifier @@ -339,7 +345,7 @@ argument ; optionalOrRequiredArgument - : 'optional'? type ellipsis argumentName default_ + : 'optional'? ('in'|'out')? type ellipsis argumentName default_ ; argumentName diff --git a/libraries/tools/idl2k/src/main/kotlin/download.kt b/libraries/tools/idl2k/src/main/kotlin/download.kt index 37e3c0a03bf..6f00133cda9 100644 --- a/libraries/tools/idl2k/src/main/kotlin/download.kt +++ b/libraries/tools/idl2k/src/main/kotlin/download.kt @@ -37,6 +37,7 @@ val urls = listOf( "https://raw.githubusercontent.com/whatwg/fetch/master/Overview.src.html" to "org.w3c.fetch", "http://www.w3.org/TR/vibration/" to "org.w3c.vibration", "http://dev.w3.org/csswg/cssom/" to "org.w3c.dom.css", + "http://web.archive.org/web/20150317051602/http://www.w3.org/TR/SVG11/single-page.html" to "org.w3c.dom.svg", "https://www.khronos.org/registry/webgl/specs/latest/1.0/webgl.idl" to "org.khronos.webgl", "https://www.khronos.org/registry/typedarray/specs/latest/typedarray.idl" to "org.khronos.webgl" ) diff --git a/libraries/tools/idl2k/src/main/kotlin/idl.kt b/libraries/tools/idl2k/src/main/kotlin/idl.kt index d513b5b12d6..e39d13fab89 100644 --- a/libraries/tools/idl2k/src/main/kotlin/idl.kt +++ b/libraries/tools/idl2k/src/main/kotlin/idl.kt @@ -19,6 +19,7 @@ package org.jetbrains.idl2k import org.antlr.v4.runtime.CharStream import org.antlr.v4.runtime.CommonTokenStream import org.antlr.v4.runtime.ParserRuleContext +import org.antlr.v4.runtime.tree.ParseTree import org.antlr.v4.runtime.tree.TerminalNode import org.antlr.webidl.WebIDLBaseVisitor import org.antlr.webidl.WebIDLLexer @@ -82,7 +83,7 @@ class ExtendedAttributeParser : WebIDLBaseVisitor() { override fun defaultResult(): ExtendedAttribute = ExtendedAttribute(name, call, arguments) override fun visitExtendedAttribute(ctx: WebIDLParser.ExtendedAttributeContext): ExtendedAttribute { - call = ctx.children?.filter { it is TerminalNode && it.getSymbol().getType() == WebIDLLexer.IDENTIFIER_WEBIDL }?.firstOrNull()?.getText() ?: "" + call = ctx.children.filterIdentifiers().firstOrNull()?.getText() ?: "" visitChildren(ctx) return defaultResult() @@ -259,7 +260,7 @@ class ConstantVisitor(val attributes: List) : WebIDLBaseVisit } } -class DefinitionVisitor(val extendedAttributes: List, val namespace: String) : WebIDLBaseVisitor() { +class DefinitionVisitor(val extendedAttributes: List, val namespace: String, val declarations : MutableList) : WebIDLBaseVisitor() { private var type: DefinitionType = DefinitionType.INTERFACE private var name = "" private val memberAttributes = ArrayList() @@ -295,6 +296,15 @@ class DefinitionVisitor(val extendedAttributes: List, val nam return defaultResult() } + override fun visitModule(ctx: ModuleContext): Definition { + val moduleName = getName(ctx) + val namespace = if (this.namespace.endsWith(moduleName)) this.namespace else this.namespace + "." + moduleName + + ModuleVisitor(declarations, namespace).visitChildren(ctx) + + return defaultResult() + } + override fun visitInterface_(ctx: Interface_Context): Definition { name = getName(ctx) visitChildren(ctx) @@ -347,8 +357,8 @@ class DefinitionVisitor(val extendedAttributes: List, val nam override fun visitDictionaryMember(ctx: DictionaryMemberContext): Definition { val name = ctx.children - ?.filter { it is TerminalNode && it.getSymbol().getType() == WebIDLLexer.IDENTIFIER_WEBIDL } - ?.first { it.getText() != "" } + .filterIdentifiers() + .firstOrNull { it.getText() != "" } ?.getText() val type = TypeVisitor().visit(ctx.children.first { it is TypeContext }) @@ -369,7 +379,7 @@ class DefinitionVisitor(val extendedAttributes: List, val nam } override fun visitImplementsStatement(ctx: ImplementsStatementContext): Definition { - val identifiers = ctx.children.filter { it is TerminalNode && it.getSymbol().getType() == WebIDLLexer.IDENTIFIER_WEBIDL }.map { it.getText() } + val identifiers = ctx.children.filterIdentifiers().map { it.getText() } if (identifiers.size() >= 2) { type = DefinitionType.EXTENSION_INTERFACE @@ -390,8 +400,8 @@ class DefinitionVisitor(val extendedAttributes: List, val nam } override fun visitInheritance(ctx: WebIDLParser.InheritanceContext): Definition { - if (ctx.children != null && ctx.isEmpty().not()) { - inherited.add(getName(ctx)) + if (ctx.children != null) { + inherited.addAll(ctx.children.filterIdentifiers().map {it.getText().trim()}.filter {it != ""}) } return defaultResult() } @@ -431,38 +441,38 @@ class DefinitionVisitor(val extendedAttributes: List, val nam } -private fun getName(ctx: ParserRuleContext) = ctx.children.first { it is TerminalNode && it.getSymbol().getType() == WebIDLLexer.IDENTIFIER_WEBIDL }.getText() +class ModuleVisitor(val declarations : MutableList, var namespace : String = "") : WebIDLBaseVisitor() { + val extendedAttributes = ArrayList() + + override fun visitDefinition(ctx: WebIDLParser.DefinitionContext) { + val declaration = DefinitionVisitor(extendedAttributes.toList(), namespace, declarations).visitChildren(ctx) + extendedAttributes.clear() + declarations.add(declaration) + } + + override fun visitExtendedAttribute(ctx: ExtendedAttributeContext?) { + val att = with(ExtendedAttributeParser()) { + visit(ctx) + } + + extendedAttributes.add(att) + } + + override fun visitNamespaceRest(ctx: NamespaceRestContext) { + this.namespace = ctx.getText() + } +} + +private fun List?.filterIdentifiers(): List = this?.filter { it is TerminalNode && it.getSymbol().getType() == WebIDLLexer.IDENTIFIER_WEBIDL } ?: emptyList() +private fun getName(ctx: ParserRuleContext) = ctx.children.filterIdentifiers().first().getText() fun parseIDL(reader: CharStream): Repository { val ll = WebIDLLexer(reader) val pp = WebIDLParser(CommonTokenStream(ll)) val idl = pp.webIDL() - val declarations = ArrayList() - - idl.accept(object : WebIDLBaseVisitor() { - val extendedAttributes = ArrayList() - var namespace = "" - - override fun visitDefinition(ctx: WebIDLParser.DefinitionContext) { - val declaration = DefinitionVisitor(extendedAttributes.toList(), namespace).visitChildren(ctx) - extendedAttributes.clear() - declarations.add(declaration) - } - - override fun visitExtendedAttribute(ctx: ExtendedAttributeContext?) { - val att = with(ExtendedAttributeParser()) { - visit(ctx) - } - - extendedAttributes.add(att) - } - - override fun visitNamespaceRest(ctx: NamespaceRestContext) { - this.namespace = ctx.getText() - } - }) + ModuleVisitor(declarations).visit(idl) return Repository( declarations.filterIsInstance().filter { it.name.isEmpty().not() }.groupBy { it.name }.mapValues { it.getValue().reduce(::merge) },