blob: 7543c2a903227ee22ebb966eaef21fb1e617d5fd [file] [log] [blame]
library dart.dom.svg;
import 'dart:async';
import 'dart:collection';
import 'dart:html';
import 'dart:html_common';
import 'dart:_js_helper' show Creates, Returns, JavaScriptIndexingBehavior, JSName;
import 'dart:_foreign_helper' show JS;
// DO NOT EDIT
// Auto-generated dart:svg library.
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
final _START_TAG_REGEXP = new RegExp('<(\\w+)');
class _SvgElementFactoryProvider {
static SvgElement createSvgElement_tag(String tag) {
final Element temp =
document.$dom_createElementNS("http://www.w3.org/2000/svg", tag);
return temp;
}
static SvgElement createSvgElement_svg(String svg) {
Element parentTag;
final match = _START_TAG_REGEXP.firstMatch(svg);
if (match != null && match.group(1).toLowerCase() == 'svg') {
parentTag = new Element.tag('div');
} else {
parentTag = new SvgSvgElement();
}
parentTag.innerHtml = svg;
if (parentTag.children.length == 1) return parentTag.children.removeLast();
throw new ArgumentError(
'SVG had ${parentTag.children.length} '
'top-level children but 1 expected');
}
}
class _SvgSvgElementFactoryProvider {
static SvgSvgElement createSvgSvgElement() {
final el = new SvgElement.tag("svg");
// The SVG spec requires the version attribute to match the spec version
el.attributes['version'] = "1.1";
return el;
}
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGAElement')
class AElement extends StyledElement implements UriReference, Tests, Transformable, ExternalResourcesRequired, LangSpace native "*SVGAElement" {
@DomName('SVGAElement.SVGAElement')
@DocsEditable
factory AElement() => _SvgElementFactoryProvider.createSvgElement_tag("a");
@DomName('SVGAElement.target')
@DocsEditable
final AnimatedString target;
// From SVGExternalResourcesRequired
@DomName('SVGAElement.externalResourcesRequired')
@DocsEditable
final AnimatedBoolean externalResourcesRequired;
// From SVGLangSpace
@DomName('SVGAElement.xmllang')
@DocsEditable
String xmllang;
@DomName('SVGAElement.xmlspace')
@DocsEditable
String xmlspace;
// From SVGLocatable
@DomName('SVGAElement.farthestViewportElement')
@DocsEditable
final SvgElement farthestViewportElement;
@DomName('SVGAElement.nearestViewportElement')
@DocsEditable
final SvgElement nearestViewportElement;
@DomName('SVGAElement.getBBox')
@DocsEditable
Rect getBBox() native;
@JSName('getCTM')
@DomName('SVGAElement.getCTM')
@DocsEditable
Matrix getCtm() native;
@JSName('getScreenCTM')
@DomName('SVGAElement.getScreenCTM')
@DocsEditable
Matrix getScreenCtm() native;
@DomName('SVGAElement.getTransformToElement')
@DocsEditable
Matrix getTransformToElement(SvgElement element) native;
// From SVGTests
@DomName('SVGAElement.requiredExtensions')
@DocsEditable
final StringList requiredExtensions;
@DomName('SVGAElement.requiredFeatures')
@DocsEditable
final StringList requiredFeatures;
@DomName('SVGAElement.systemLanguage')
@DocsEditable
final StringList systemLanguage;
@DomName('SVGAElement.hasExtension')
@DocsEditable
bool hasExtension(String extension) native;
// From SVGTransformable
@DomName('SVGAElement.transform')
@DocsEditable
final AnimatedTransformList transform;
// From SVGURIReference
@DomName('SVGAElement.href')
@DocsEditable
final AnimatedString href;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGAltGlyphElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.SAFARI)
class AltGlyphElement extends TextPositioningElement implements UriReference native "*SVGAltGlyphElement" {
@DomName('SVGAltGlyphElement.SVGAltGlyphElement')
@DocsEditable
factory AltGlyphElement() => _SvgElementFactoryProvider.createSvgElement_tag("altGlyph");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('altGlyph') && (new SvgElement.tag('altGlyph') is AltGlyphElement);
@DomName('SVGAltGlyphElement.format')
@DocsEditable
String format;
@DomName('SVGAltGlyphElement.glyphRef')
@DocsEditable
String glyphRef;
// From SVGURIReference
@DomName('SVGAltGlyphElement.href')
@DocsEditable
final AnimatedString href;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGAngle')
class Angle native "*SVGAngle" {
static const int SVG_ANGLETYPE_DEG = 2;
static const int SVG_ANGLETYPE_GRAD = 4;
static const int SVG_ANGLETYPE_RAD = 3;
static const int SVG_ANGLETYPE_UNKNOWN = 0;
static const int SVG_ANGLETYPE_UNSPECIFIED = 1;
@DomName('SVGAngle.unitType')
@DocsEditable
final int unitType;
@DomName('SVGAngle.value')
@DocsEditable
num value;
@DomName('SVGAngle.valueAsString')
@DocsEditable
String valueAsString;
@DomName('SVGAngle.valueInSpecifiedUnits')
@DocsEditable
num valueInSpecifiedUnits;
@DomName('SVGAngle.convertToSpecifiedUnits')
@DocsEditable
void convertToSpecifiedUnits(int unitType) native;
@DomName('SVGAngle.newValueSpecifiedUnits')
@DocsEditable
void newValueSpecifiedUnits(int unitType, num valueInSpecifiedUnits) native;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGAnimateElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.SAFARI)
class AnimateElement extends AnimationElement native "*SVGAnimateElement" {
@DomName('SVGAnimateElement.SVGAnimateElement')
@DocsEditable
factory AnimateElement() => _SvgElementFactoryProvider.createSvgElement_tag("animate");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('animate') && (new SvgElement.tag('animate') is AnimateElement);
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGAnimateMotionElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.SAFARI)
class AnimateMotionElement extends AnimationElement native "*SVGAnimateMotionElement" {
@DomName('SVGAnimateMotionElement.SVGAnimateMotionElement')
@DocsEditable
factory AnimateMotionElement() => _SvgElementFactoryProvider.createSvgElement_tag("animateMotion");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('animateMotion') && (new SvgElement.tag('animateMotion') is AnimateMotionElement);
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGAnimateTransformElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.SAFARI)
class AnimateTransformElement extends AnimationElement native "*SVGAnimateTransformElement" {
@DomName('SVGAnimateTransformElement.SVGAnimateTransformElement')
@DocsEditable
factory AnimateTransformElement() => _SvgElementFactoryProvider.createSvgElement_tag("animateTransform");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('animateTransform') && (new SvgElement.tag('animateTransform') is AnimateTransformElement);
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGAnimatedAngle')
class AnimatedAngle native "*SVGAnimatedAngle" {
@DomName('SVGAnimatedAngle.animVal')
@DocsEditable
final Angle animVal;
@DomName('SVGAnimatedAngle.baseVal')
@DocsEditable
final Angle baseVal;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGAnimatedBoolean')
class AnimatedBoolean native "*SVGAnimatedBoolean" {
@DomName('SVGAnimatedBoolean.animVal')
@DocsEditable
final bool animVal;
@DomName('SVGAnimatedBoolean.baseVal')
@DocsEditable
bool baseVal;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGAnimatedEnumeration')
class AnimatedEnumeration native "*SVGAnimatedEnumeration" {
@DomName('SVGAnimatedEnumeration.animVal')
@DocsEditable
final int animVal;
@DomName('SVGAnimatedEnumeration.baseVal')
@DocsEditable
int baseVal;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGAnimatedInteger')
class AnimatedInteger native "*SVGAnimatedInteger" {
@DomName('SVGAnimatedInteger.animVal')
@DocsEditable
final int animVal;
@DomName('SVGAnimatedInteger.baseVal')
@DocsEditable
int baseVal;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGAnimatedLength')
class AnimatedLength native "*SVGAnimatedLength" {
@DomName('SVGAnimatedLength.animVal')
@DocsEditable
final Length animVal;
@DomName('SVGAnimatedLength.baseVal')
@DocsEditable
final Length baseVal;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGAnimatedLengthList')
class AnimatedLengthList native "*SVGAnimatedLengthList" {
@DomName('SVGAnimatedLengthList.animVal')
@DocsEditable
final LengthList animVal;
@DomName('SVGAnimatedLengthList.baseVal')
@DocsEditable
final LengthList baseVal;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGAnimatedNumber')
class AnimatedNumber native "*SVGAnimatedNumber" {
@DomName('SVGAnimatedNumber.animVal')
@DocsEditable
final num animVal;
@DomName('SVGAnimatedNumber.baseVal')
@DocsEditable
num baseVal;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGAnimatedNumberList')
class AnimatedNumberList native "*SVGAnimatedNumberList" {
@DomName('SVGAnimatedNumberList.animVal')
@DocsEditable
final NumberList animVal;
@DomName('SVGAnimatedNumberList.baseVal')
@DocsEditable
final NumberList baseVal;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGAnimatedPreserveAspectRatio')
class AnimatedPreserveAspectRatio native "*SVGAnimatedPreserveAspectRatio" {
@DomName('SVGAnimatedPreserveAspectRatio.animVal')
@DocsEditable
final PreserveAspectRatio animVal;
@DomName('SVGAnimatedPreserveAspectRatio.baseVal')
@DocsEditable
final PreserveAspectRatio baseVal;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGAnimatedRect')
class AnimatedRect native "*SVGAnimatedRect" {
@DomName('SVGAnimatedRect.animVal')
@DocsEditable
final Rect animVal;
@DomName('SVGAnimatedRect.baseVal')
@DocsEditable
final Rect baseVal;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGAnimatedString')
class AnimatedString native "*SVGAnimatedString" {
@DomName('SVGAnimatedString.animVal')
@DocsEditable
final String animVal;
@DomName('SVGAnimatedString.baseVal')
@DocsEditable
String baseVal;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGAnimatedTransformList')
class AnimatedTransformList native "*SVGAnimatedTransformList" {
@DomName('SVGAnimatedTransformList.animVal')
@DocsEditable
final TransformList animVal;
@DomName('SVGAnimatedTransformList.baseVal')
@DocsEditable
final TransformList baseVal;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGAnimationElement')
class AnimationElement extends SvgElement implements Tests, ElementTimeControl, ExternalResourcesRequired native "*SVGAnimationElement" {
@DomName('SVGAnimationElement.SVGAnimationElement')
@DocsEditable
factory AnimationElement() => _SvgElementFactoryProvider.createSvgElement_tag("animation");
@DomName('SVGAnimationElement.targetElement')
@DocsEditable
final SvgElement targetElement;
@DomName('SVGAnimationElement.getCurrentTime')
@DocsEditable
num getCurrentTime() native;
@DomName('SVGAnimationElement.getSimpleDuration')
@DocsEditable
num getSimpleDuration() native;
@DomName('SVGAnimationElement.getStartTime')
@DocsEditable
num getStartTime() native;
// From ElementTimeControl
@DomName('SVGAnimationElement.beginElement')
@DocsEditable
void beginElement() native;
@DomName('SVGAnimationElement.beginElementAt')
@DocsEditable
void beginElementAt(num offset) native;
@DomName('SVGAnimationElement.endElement')
@DocsEditable
void endElement() native;
@DomName('SVGAnimationElement.endElementAt')
@DocsEditable
void endElementAt(num offset) native;
// From SVGExternalResourcesRequired
@DomName('SVGAnimationElement.externalResourcesRequired')
@DocsEditable
final AnimatedBoolean externalResourcesRequired;
// From SVGTests
@DomName('SVGAnimationElement.requiredExtensions')
@DocsEditable
final StringList requiredExtensions;
@DomName('SVGAnimationElement.requiredFeatures')
@DocsEditable
final StringList requiredFeatures;
@DomName('SVGAnimationElement.systemLanguage')
@DocsEditable
final StringList systemLanguage;
@DomName('SVGAnimationElement.hasExtension')
@DocsEditable
bool hasExtension(String extension) native;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGCircleElement')
class CircleElement extends StyledElement implements Transformable, Tests, ExternalResourcesRequired, LangSpace native "*SVGCircleElement" {
@DomName('SVGCircleElement.SVGCircleElement')
@DocsEditable
factory CircleElement() => _SvgElementFactoryProvider.createSvgElement_tag("circle");
@DomName('SVGCircleElement.cx')
@DocsEditable
final AnimatedLength cx;
@DomName('SVGCircleElement.cy')
@DocsEditable
final AnimatedLength cy;
@DomName('SVGCircleElement.r')
@DocsEditable
final AnimatedLength r;
// From SVGExternalResourcesRequired
@DomName('SVGCircleElement.externalResourcesRequired')
@DocsEditable
final AnimatedBoolean externalResourcesRequired;
// From SVGLangSpace
@DomName('SVGCircleElement.xmllang')
@DocsEditable
String xmllang;
@DomName('SVGCircleElement.xmlspace')
@DocsEditable
String xmlspace;
// From SVGLocatable
@DomName('SVGCircleElement.farthestViewportElement')
@DocsEditable
final SvgElement farthestViewportElement;
@DomName('SVGCircleElement.nearestViewportElement')
@DocsEditable
final SvgElement nearestViewportElement;
@DomName('SVGCircleElement.getBBox')
@DocsEditable
Rect getBBox() native;
@JSName('getCTM')
@DomName('SVGCircleElement.getCTM')
@DocsEditable
Matrix getCtm() native;
@JSName('getScreenCTM')
@DomName('SVGCircleElement.getScreenCTM')
@DocsEditable
Matrix getScreenCtm() native;
@DomName('SVGCircleElement.getTransformToElement')
@DocsEditable
Matrix getTransformToElement(SvgElement element) native;
// From SVGTests
@DomName('SVGCircleElement.requiredExtensions')
@DocsEditable
final StringList requiredExtensions;
@DomName('SVGCircleElement.requiredFeatures')
@DocsEditable
final StringList requiredFeatures;
@DomName('SVGCircleElement.systemLanguage')
@DocsEditable
final StringList systemLanguage;
@DomName('SVGCircleElement.hasExtension')
@DocsEditable
bool hasExtension(String extension) native;
// From SVGTransformable
@DomName('SVGCircleElement.transform')
@DocsEditable
final AnimatedTransformList transform;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGClipPathElement')
class ClipPathElement extends StyledElement implements Transformable, Tests, ExternalResourcesRequired, LangSpace native "*SVGClipPathElement" {
@DomName('SVGClipPathElement.SVGClipPathElement')
@DocsEditable
factory ClipPathElement() => _SvgElementFactoryProvider.createSvgElement_tag("clipPath");
@DomName('SVGClipPathElement.clipPathUnits')
@DocsEditable
final AnimatedEnumeration clipPathUnits;
// From SVGExternalResourcesRequired
@DomName('SVGClipPathElement.externalResourcesRequired')
@DocsEditable
final AnimatedBoolean externalResourcesRequired;
// From SVGLangSpace
@DomName('SVGClipPathElement.xmllang')
@DocsEditable
String xmllang;
@DomName('SVGClipPathElement.xmlspace')
@DocsEditable
String xmlspace;
// From SVGLocatable
@DomName('SVGClipPathElement.farthestViewportElement')
@DocsEditable
final SvgElement farthestViewportElement;
@DomName('SVGClipPathElement.nearestViewportElement')
@DocsEditable
final SvgElement nearestViewportElement;
@DomName('SVGClipPathElement.getBBox')
@DocsEditable
Rect getBBox() native;
@JSName('getCTM')
@DomName('SVGClipPathElement.getCTM')
@DocsEditable
Matrix getCtm() native;
@JSName('getScreenCTM')
@DomName('SVGClipPathElement.getScreenCTM')
@DocsEditable
Matrix getScreenCtm() native;
@DomName('SVGClipPathElement.getTransformToElement')
@DocsEditable
Matrix getTransformToElement(SvgElement element) native;
// From SVGTests
@DomName('SVGClipPathElement.requiredExtensions')
@DocsEditable
final StringList requiredExtensions;
@DomName('SVGClipPathElement.requiredFeatures')
@DocsEditable
final StringList requiredFeatures;
@DomName('SVGClipPathElement.systemLanguage')
@DocsEditable
final StringList systemLanguage;
@DomName('SVGClipPathElement.hasExtension')
@DocsEditable
bool hasExtension(String extension) native;
// From SVGTransformable
@DomName('SVGClipPathElement.transform')
@DocsEditable
final AnimatedTransformList transform;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGColor')
class Color extends CssValue native "*SVGColor" {
static const int SVG_COLORTYPE_CURRENTCOLOR = 3;
static const int SVG_COLORTYPE_RGBCOLOR = 1;
static const int SVG_COLORTYPE_RGBCOLOR_ICCCOLOR = 2;
static const int SVG_COLORTYPE_UNKNOWN = 0;
@DomName('SVGColor.colorType')
@DocsEditable
final int colorType;
@DomName('SVGColor.rgbColor')
@DocsEditable
final RgbColor rgbColor;
@DomName('SVGColor.setColor')
@DocsEditable
void setColor(int colorType, String rgbColor, String iccColor) native;
@JSName('setRGBColor')
@DomName('SVGColor.setRGBColor')
@DocsEditable
void setRgbColor(String rgbColor) native;
@JSName('setRGBColorICCColor')
@DomName('SVGColor.setRGBColorICCColor')
@DocsEditable
void setRgbColorIccColor(String rgbColor, String iccColor) native;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGDefsElement')
class DefsElement extends StyledElement implements Transformable, Tests, ExternalResourcesRequired, LangSpace native "*SVGDefsElement" {
@DomName('SVGDefsElement.SVGDefsElement')
@DocsEditable
factory DefsElement() => _SvgElementFactoryProvider.createSvgElement_tag("defs");
// From SVGExternalResourcesRequired
@DomName('SVGDefsElement.externalResourcesRequired')
@DocsEditable
final AnimatedBoolean externalResourcesRequired;
// From SVGLangSpace
@DomName('SVGDefsElement.xmllang')
@DocsEditable
String xmllang;
@DomName('SVGDefsElement.xmlspace')
@DocsEditable
String xmlspace;
// From SVGLocatable
@DomName('SVGDefsElement.farthestViewportElement')
@DocsEditable
final SvgElement farthestViewportElement;
@DomName('SVGDefsElement.nearestViewportElement')
@DocsEditable
final SvgElement nearestViewportElement;
@DomName('SVGDefsElement.getBBox')
@DocsEditable
Rect getBBox() native;
@JSName('getCTM')
@DomName('SVGDefsElement.getCTM')
@DocsEditable
Matrix getCtm() native;
@JSName('getScreenCTM')
@DomName('SVGDefsElement.getScreenCTM')
@DocsEditable
Matrix getScreenCtm() native;
@DomName('SVGDefsElement.getTransformToElement')
@DocsEditable
Matrix getTransformToElement(SvgElement element) native;
// From SVGTests
@DomName('SVGDefsElement.requiredExtensions')
@DocsEditable
final StringList requiredExtensions;
@DomName('SVGDefsElement.requiredFeatures')
@DocsEditable
final StringList requiredFeatures;
@DomName('SVGDefsElement.systemLanguage')
@DocsEditable
final StringList systemLanguage;
@DomName('SVGDefsElement.hasExtension')
@DocsEditable
bool hasExtension(String extension) native;
// From SVGTransformable
@DomName('SVGDefsElement.transform')
@DocsEditable
final AnimatedTransformList transform;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGDescElement')
class DescElement extends StyledElement implements LangSpace native "*SVGDescElement" {
@DomName('SVGDescElement.SVGDescElement')
@DocsEditable
factory DescElement() => _SvgElementFactoryProvider.createSvgElement_tag("desc");
// From SVGLangSpace
@DomName('SVGDescElement.xmllang')
@DocsEditable
String xmllang;
@DomName('SVGDescElement.xmlspace')
@DocsEditable
String xmlspace;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGElementInstance')
class ElementInstance extends EventTarget native "*SVGElementInstance" {
@DomName('SVGElementInstance.abortEvent')
@DocsEditable
static const EventStreamProvider<Event> abortEvent = const EventStreamProvider<Event>('abort');
@DomName('SVGElementInstance.beforecopyEvent')
@DocsEditable
static const EventStreamProvider<Event> beforeCopyEvent = const EventStreamProvider<Event>('beforecopy');
@DomName('SVGElementInstance.beforecutEvent')
@DocsEditable
static const EventStreamProvider<Event> beforeCutEvent = const EventStreamProvider<Event>('beforecut');
@DomName('SVGElementInstance.beforepasteEvent')
@DocsEditable
static const EventStreamProvider<Event> beforePasteEvent = const EventStreamProvider<Event>('beforepaste');
@DomName('SVGElementInstance.blurEvent')
@DocsEditable
static const EventStreamProvider<Event> blurEvent = const EventStreamProvider<Event>('blur');
@DomName('SVGElementInstance.changeEvent')
@DocsEditable
static const EventStreamProvider<Event> changeEvent = const EventStreamProvider<Event>('change');
@DomName('SVGElementInstance.clickEvent')
@DocsEditable
static const EventStreamProvider<MouseEvent> clickEvent = const EventStreamProvider<MouseEvent>('click');
@DomName('SVGElementInstance.contextmenuEvent')
@DocsEditable
static const EventStreamProvider<MouseEvent> contextMenuEvent = const EventStreamProvider<MouseEvent>('contextmenu');
@DomName('SVGElementInstance.copyEvent')
@DocsEditable
static const EventStreamProvider<Event> copyEvent = const EventStreamProvider<Event>('copy');
@DomName('SVGElementInstance.cutEvent')
@DocsEditable
static const EventStreamProvider<Event> cutEvent = const EventStreamProvider<Event>('cut');
@DomName('SVGElementInstance.dblclickEvent')
@DocsEditable
static const EventStreamProvider<Event> doubleClickEvent = const EventStreamProvider<Event>('dblclick');
@DomName('SVGElementInstance.dragEvent')
@DocsEditable
static const EventStreamProvider<MouseEvent> dragEvent = const EventStreamProvider<MouseEvent>('drag');
@DomName('SVGElementInstance.dragendEvent')
@DocsEditable
static const EventStreamProvider<MouseEvent> dragEndEvent = const EventStreamProvider<MouseEvent>('dragend');
@DomName('SVGElementInstance.dragenterEvent')
@DocsEditable
static const EventStreamProvider<MouseEvent> dragEnterEvent = const EventStreamProvider<MouseEvent>('dragenter');
@DomName('SVGElementInstance.dragleaveEvent')
@DocsEditable
static const EventStreamProvider<MouseEvent> dragLeaveEvent = const EventStreamProvider<MouseEvent>('dragleave');
@DomName('SVGElementInstance.dragoverEvent')
@DocsEditable
static const EventStreamProvider<MouseEvent> dragOverEvent = const EventStreamProvider<MouseEvent>('dragover');
@DomName('SVGElementInstance.dragstartEvent')
@DocsEditable
static const EventStreamProvider<MouseEvent> dragStartEvent = const EventStreamProvider<MouseEvent>('dragstart');
@DomName('SVGElementInstance.dropEvent')
@DocsEditable
static const EventStreamProvider<MouseEvent> dropEvent = const EventStreamProvider<MouseEvent>('drop');
@DomName('SVGElementInstance.errorEvent')
@DocsEditable
static const EventStreamProvider<Event> errorEvent = const EventStreamProvider<Event>('error');
@DomName('SVGElementInstance.focusEvent')
@DocsEditable
static const EventStreamProvider<Event> focusEvent = const EventStreamProvider<Event>('focus');
@DomName('SVGElementInstance.inputEvent')
@DocsEditable
static const EventStreamProvider<Event> inputEvent = const EventStreamProvider<Event>('input');
@DomName('SVGElementInstance.keydownEvent')
@DocsEditable
static const EventStreamProvider<KeyboardEvent> keyDownEvent = const EventStreamProvider<KeyboardEvent>('keydown');
@DomName('SVGElementInstance.keypressEvent')
@DocsEditable
static const EventStreamProvider<KeyboardEvent> keyPressEvent = const EventStreamProvider<KeyboardEvent>('keypress');
@DomName('SVGElementInstance.keyupEvent')
@DocsEditable
static const EventStreamProvider<KeyboardEvent> keyUpEvent = const EventStreamProvider<KeyboardEvent>('keyup');
@DomName('SVGElementInstance.loadEvent')
@DocsEditable
static const EventStreamProvider<Event> loadEvent = const EventStreamProvider<Event>('load');
@DomName('SVGElementInstance.mousedownEvent')
@DocsEditable
static const EventStreamProvider<MouseEvent> mouseDownEvent = const EventStreamProvider<MouseEvent>('mousedown');
@DomName('SVGElementInstance.mousemoveEvent')
@DocsEditable
static const EventStreamProvider<MouseEvent> mouseMoveEvent = const EventStreamProvider<MouseEvent>('mousemove');
@DomName('SVGElementInstance.mouseoutEvent')
@DocsEditable
static const EventStreamProvider<MouseEvent> mouseOutEvent = const EventStreamProvider<MouseEvent>('mouseout');
@DomName('SVGElementInstance.mouseoverEvent')
@DocsEditable
static const EventStreamProvider<MouseEvent> mouseOverEvent = const EventStreamProvider<MouseEvent>('mouseover');
@DomName('SVGElementInstance.mouseupEvent')
@DocsEditable
static const EventStreamProvider<MouseEvent> mouseUpEvent = const EventStreamProvider<MouseEvent>('mouseup');
@DomName('SVGElementInstance.mousewheelEvent')
@DocsEditable
static const EventStreamProvider<WheelEvent> mouseWheelEvent = const EventStreamProvider<WheelEvent>('mousewheel');
@DomName('SVGElementInstance.pasteEvent')
@DocsEditable
static const EventStreamProvider<Event> pasteEvent = const EventStreamProvider<Event>('paste');
@DomName('SVGElementInstance.resetEvent')
@DocsEditable
static const EventStreamProvider<Event> resetEvent = const EventStreamProvider<Event>('reset');
@DomName('SVGElementInstance.resizeEvent')
@DocsEditable
static const EventStreamProvider<Event> resizeEvent = const EventStreamProvider<Event>('resize');
@DomName('SVGElementInstance.scrollEvent')
@DocsEditable
static const EventStreamProvider<Event> scrollEvent = const EventStreamProvider<Event>('scroll');
@DomName('SVGElementInstance.searchEvent')
@DocsEditable
static const EventStreamProvider<Event> searchEvent = const EventStreamProvider<Event>('search');
@DomName('SVGElementInstance.selectEvent')
@DocsEditable
static const EventStreamProvider<Event> selectEvent = const EventStreamProvider<Event>('select');
@DomName('SVGElementInstance.selectstartEvent')
@DocsEditable
static const EventStreamProvider<Event> selectStartEvent = const EventStreamProvider<Event>('selectstart');
@DomName('SVGElementInstance.submitEvent')
@DocsEditable
static const EventStreamProvider<Event> submitEvent = const EventStreamProvider<Event>('submit');
@DomName('SVGElementInstance.unloadEvent')
@DocsEditable
static const EventStreamProvider<Event> unloadEvent = const EventStreamProvider<Event>('unload');
@DomName('SVGElementInstance.childNodes')
@DocsEditable
@Returns('_ElementInstanceList')
@Creates('_ElementInstanceList')
final List<ElementInstance> childNodes;
@DomName('SVGElementInstance.correspondingElement')
@DocsEditable
final SvgElement correspondingElement;
@DomName('SVGElementInstance.correspondingUseElement')
@DocsEditable
final UseElement correspondingUseElement;
@DomName('SVGElementInstance.firstChild')
@DocsEditable
final ElementInstance firstChild;
@DomName('SVGElementInstance.lastChild')
@DocsEditable
final ElementInstance lastChild;
@DomName('SVGElementInstance.nextSibling')
@DocsEditable
final ElementInstance nextSibling;
@DomName('SVGElementInstance.parentNode')
@DocsEditable
final ElementInstance parentNode;
@DomName('SVGElementInstance.previousSibling')
@DocsEditable
final ElementInstance previousSibling;
@DomName('SVGElementInstance.onabort')
@DocsEditable
Stream<Event> get onAbort => abortEvent.forTarget(this);
@DomName('SVGElementInstance.onbeforecopy')
@DocsEditable
Stream<Event> get onBeforeCopy => beforeCopyEvent.forTarget(this);
@DomName('SVGElementInstance.onbeforecut')
@DocsEditable
Stream<Event> get onBeforeCut => beforeCutEvent.forTarget(this);
@DomName('SVGElementInstance.onbeforepaste')
@DocsEditable
Stream<Event> get onBeforePaste => beforePasteEvent.forTarget(this);
@DomName('SVGElementInstance.onblur')
@DocsEditable
Stream<Event> get onBlur => blurEvent.forTarget(this);
@DomName('SVGElementInstance.onchange')
@DocsEditable
Stream<Event> get onChange => changeEvent.forTarget(this);
@DomName('SVGElementInstance.onclick')
@DocsEditable
Stream<MouseEvent> get onClick => clickEvent.forTarget(this);
@DomName('SVGElementInstance.oncontextmenu')
@DocsEditable
Stream<MouseEvent> get onContextMenu => contextMenuEvent.forTarget(this);
@DomName('SVGElementInstance.oncopy')
@DocsEditable
Stream<Event> get onCopy => copyEvent.forTarget(this);
@DomName('SVGElementInstance.oncut')
@DocsEditable
Stream<Event> get onCut => cutEvent.forTarget(this);
@DomName('SVGElementInstance.ondblclick')
@DocsEditable
Stream<Event> get onDoubleClick => doubleClickEvent.forTarget(this);
@DomName('SVGElementInstance.ondrag')
@DocsEditable
Stream<MouseEvent> get onDrag => dragEvent.forTarget(this);
@DomName('SVGElementInstance.ondragend')
@DocsEditable
Stream<MouseEvent> get onDragEnd => dragEndEvent.forTarget(this);
@DomName('SVGElementInstance.ondragenter')
@DocsEditable
Stream<MouseEvent> get onDragEnter => dragEnterEvent.forTarget(this);
@DomName('SVGElementInstance.ondragleave')
@DocsEditable
Stream<MouseEvent> get onDragLeave => dragLeaveEvent.forTarget(this);
@DomName('SVGElementInstance.ondragover')
@DocsEditable
Stream<MouseEvent> get onDragOver => dragOverEvent.forTarget(this);
@DomName('SVGElementInstance.ondragstart')
@DocsEditable
Stream<MouseEvent> get onDragStart => dragStartEvent.forTarget(this);
@DomName('SVGElementInstance.ondrop')
@DocsEditable
Stream<MouseEvent> get onDrop => dropEvent.forTarget(this);
@DomName('SVGElementInstance.onerror')
@DocsEditable
Stream<Event> get onError => errorEvent.forTarget(this);
@DomName('SVGElementInstance.onfocus')
@DocsEditable
Stream<Event> get onFocus => focusEvent.forTarget(this);
@DomName('SVGElementInstance.oninput')
@DocsEditable
Stream<Event> get onInput => inputEvent.forTarget(this);
@DomName('SVGElementInstance.onkeydown')
@DocsEditable
Stream<KeyboardEvent> get onKeyDown => keyDownEvent.forTarget(this);
@DomName('SVGElementInstance.onkeypress')
@DocsEditable
Stream<KeyboardEvent> get onKeyPress => keyPressEvent.forTarget(this);
@DomName('SVGElementInstance.onkeyup')
@DocsEditable
Stream<KeyboardEvent> get onKeyUp => keyUpEvent.forTarget(this);
@DomName('SVGElementInstance.onload')
@DocsEditable
Stream<Event> get onLoad => loadEvent.forTarget(this);
@DomName('SVGElementInstance.onmousedown')
@DocsEditable
Stream<MouseEvent> get onMouseDown => mouseDownEvent.forTarget(this);
@DomName('SVGElementInstance.onmousemove')
@DocsEditable
Stream<MouseEvent> get onMouseMove => mouseMoveEvent.forTarget(this);
@DomName('SVGElementInstance.onmouseout')
@DocsEditable
Stream<MouseEvent> get onMouseOut => mouseOutEvent.forTarget(this);
@DomName('SVGElementInstance.onmouseover')
@DocsEditable
Stream<MouseEvent> get onMouseOver => mouseOverEvent.forTarget(this);
@DomName('SVGElementInstance.onmouseup')
@DocsEditable
Stream<MouseEvent> get onMouseUp => mouseUpEvent.forTarget(this);
@DomName('SVGElementInstance.onmousewheel')
@DocsEditable
Stream<WheelEvent> get onMouseWheel => mouseWheelEvent.forTarget(this);
@DomName('SVGElementInstance.onpaste')
@DocsEditable
Stream<Event> get onPaste => pasteEvent.forTarget(this);
@DomName('SVGElementInstance.onreset')
@DocsEditable
Stream<Event> get onReset => resetEvent.forTarget(this);
@DomName('SVGElementInstance.onresize')
@DocsEditable
Stream<Event> get onResize => resizeEvent.forTarget(this);
@DomName('SVGElementInstance.onscroll')
@DocsEditable
Stream<Event> get onScroll => scrollEvent.forTarget(this);
@DomName('SVGElementInstance.onsearch')
@DocsEditable
Stream<Event> get onSearch => searchEvent.forTarget(this);
@DomName('SVGElementInstance.onselect')
@DocsEditable
Stream<Event> get onSelect => selectEvent.forTarget(this);
@DomName('SVGElementInstance.onselectstart')
@DocsEditable
Stream<Event> get onSelectStart => selectStartEvent.forTarget(this);
@DomName('SVGElementInstance.onsubmit')
@DocsEditable
Stream<Event> get onSubmit => submitEvent.forTarget(this);
@DomName('SVGElementInstance.onunload')
@DocsEditable
Stream<Event> get onUnload => unloadEvent.forTarget(this);
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DomName('ElementTimeControl')
abstract class ElementTimeControl {
void beginElement();
void beginElementAt(num offset);
void endElement();
void endElementAt(num offset);
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGEllipseElement')
class EllipseElement extends StyledElement implements Transformable, Tests, ExternalResourcesRequired, LangSpace native "*SVGEllipseElement" {
@DomName('SVGEllipseElement.SVGEllipseElement')
@DocsEditable
factory EllipseElement() => _SvgElementFactoryProvider.createSvgElement_tag("ellipse");
@DomName('SVGEllipseElement.cx')
@DocsEditable
final AnimatedLength cx;
@DomName('SVGEllipseElement.cy')
@DocsEditable
final AnimatedLength cy;
@DomName('SVGEllipseElement.rx')
@DocsEditable
final AnimatedLength rx;
@DomName('SVGEllipseElement.ry')
@DocsEditable
final AnimatedLength ry;
// From SVGExternalResourcesRequired
@DomName('SVGEllipseElement.externalResourcesRequired')
@DocsEditable
final AnimatedBoolean externalResourcesRequired;
// From SVGLangSpace
@DomName('SVGEllipseElement.xmllang')
@DocsEditable
String xmllang;
@DomName('SVGEllipseElement.xmlspace')
@DocsEditable
String xmlspace;
// From SVGLocatable
@DomName('SVGEllipseElement.farthestViewportElement')
@DocsEditable
final SvgElement farthestViewportElement;
@DomName('SVGEllipseElement.nearestViewportElement')
@DocsEditable
final SvgElement nearestViewportElement;
@DomName('SVGEllipseElement.getBBox')
@DocsEditable
Rect getBBox() native;
@JSName('getCTM')
@DomName('SVGEllipseElement.getCTM')
@DocsEditable
Matrix getCtm() native;
@JSName('getScreenCTM')
@DomName('SVGEllipseElement.getScreenCTM')
@DocsEditable
Matrix getScreenCtm() native;
@DomName('SVGEllipseElement.getTransformToElement')
@DocsEditable
Matrix getTransformToElement(SvgElement element) native;
// From SVGTests
@DomName('SVGEllipseElement.requiredExtensions')
@DocsEditable
final StringList requiredExtensions;
@DomName('SVGEllipseElement.requiredFeatures')
@DocsEditable
final StringList requiredFeatures;
@DomName('SVGEllipseElement.systemLanguage')
@DocsEditable
final StringList systemLanguage;
@DomName('SVGEllipseElement.hasExtension')
@DocsEditable
bool hasExtension(String extension) native;
// From SVGTransformable
@DomName('SVGEllipseElement.transform')
@DocsEditable
final AnimatedTransformList transform;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DomName('SVGExternalResourcesRequired')
abstract class ExternalResourcesRequired {
/// Checks if this type is supported on the current platform.
static bool supported(SvgElement element) => JS('bool', '#.externalResourcesRequired !== undefined && #.externalResourcesRequired.animVal !== undefined', element, element);
AnimatedBoolean externalResourcesRequired;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFEBlendElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.IE, '10')
@SupportedBrowser(SupportedBrowser.SAFARI)
class FEBlendElement extends StyledElement implements FilterPrimitiveStandardAttributes native "*SVGFEBlendElement" {
@DomName('SVGFEBlendElement.SVGFEBlendElement')
@DocsEditable
factory FEBlendElement() => _SvgElementFactoryProvider.createSvgElement_tag("feBlend");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('feBlend') && (new SvgElement.tag('feBlend') is FEBlendElement);
static const int SVG_FEBLEND_MODE_DARKEN = 4;
static const int SVG_FEBLEND_MODE_LIGHTEN = 5;
static const int SVG_FEBLEND_MODE_MULTIPLY = 2;
static const int SVG_FEBLEND_MODE_NORMAL = 1;
static const int SVG_FEBLEND_MODE_SCREEN = 3;
static const int SVG_FEBLEND_MODE_UNKNOWN = 0;
@DomName('SVGFEBlendElement.in1')
@DocsEditable
final AnimatedString in1;
@DomName('SVGFEBlendElement.in2')
@DocsEditable
final AnimatedString in2;
@DomName('SVGFEBlendElement.mode')
@DocsEditable
final AnimatedEnumeration mode;
// From SVGFilterPrimitiveStandardAttributes
@DomName('SVGFEBlendElement.height')
@DocsEditable
final AnimatedLength height;
@DomName('SVGFEBlendElement.result')
@DocsEditable
final AnimatedString result;
@DomName('SVGFEBlendElement.width')
@DocsEditable
final AnimatedLength width;
@DomName('SVGFEBlendElement.x')
@DocsEditable
final AnimatedLength x;
@DomName('SVGFEBlendElement.y')
@DocsEditable
final AnimatedLength y;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFEColorMatrixElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.IE, '10')
@SupportedBrowser(SupportedBrowser.SAFARI)
class FEColorMatrixElement extends StyledElement implements FilterPrimitiveStandardAttributes native "*SVGFEColorMatrixElement" {
@DomName('SVGFEColorMatrixElement.SVGFEColorMatrixElement')
@DocsEditable
factory FEColorMatrixElement() => _SvgElementFactoryProvider.createSvgElement_tag("feColorMatrix");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('feColorMatrix') && (new SvgElement.tag('feColorMatrix') is FEColorMatrixElement);
static const int SVG_FECOLORMATRIX_TYPE_HUEROTATE = 3;
static const int SVG_FECOLORMATRIX_TYPE_LUMINANCETOALPHA = 4;
static const int SVG_FECOLORMATRIX_TYPE_MATRIX = 1;
static const int SVG_FECOLORMATRIX_TYPE_SATURATE = 2;
static const int SVG_FECOLORMATRIX_TYPE_UNKNOWN = 0;
@DomName('SVGFEColorMatrixElement.in1')
@DocsEditable
final AnimatedString in1;
@DomName('SVGFEColorMatrixElement.type')
@DocsEditable
final AnimatedEnumeration type;
@DomName('SVGFEColorMatrixElement.values')
@DocsEditable
final AnimatedNumberList values;
// From SVGFilterPrimitiveStandardAttributes
@DomName('SVGFEColorMatrixElement.height')
@DocsEditable
final AnimatedLength height;
@DomName('SVGFEColorMatrixElement.result')
@DocsEditable
final AnimatedString result;
@DomName('SVGFEColorMatrixElement.width')
@DocsEditable
final AnimatedLength width;
@DomName('SVGFEColorMatrixElement.x')
@DocsEditable
final AnimatedLength x;
@DomName('SVGFEColorMatrixElement.y')
@DocsEditable
final AnimatedLength y;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFEComponentTransferElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.IE, '10')
@SupportedBrowser(SupportedBrowser.SAFARI)
class FEComponentTransferElement extends StyledElement implements FilterPrimitiveStandardAttributes native "*SVGFEComponentTransferElement" {
@DomName('SVGFEComponentTransferElement.SVGFEComponentTransferElement')
@DocsEditable
factory FEComponentTransferElement() => _SvgElementFactoryProvider.createSvgElement_tag("feComponentTransfer");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('feComponentTransfer') && (new SvgElement.tag('feComponentTransfer') is FEComponentTransferElement);
@DomName('SVGFEComponentTransferElement.in1')
@DocsEditable
final AnimatedString in1;
// From SVGFilterPrimitiveStandardAttributes
@DomName('SVGFEComponentTransferElement.height')
@DocsEditable
final AnimatedLength height;
@DomName('SVGFEComponentTransferElement.result')
@DocsEditable
final AnimatedString result;
@DomName('SVGFEComponentTransferElement.width')
@DocsEditable
final AnimatedLength width;
@DomName('SVGFEComponentTransferElement.x')
@DocsEditable
final AnimatedLength x;
@DomName('SVGFEComponentTransferElement.y')
@DocsEditable
final AnimatedLength y;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFECompositeElement')
class FECompositeElement extends StyledElement implements FilterPrimitiveStandardAttributes native "*SVGFECompositeElement" {
static const int SVG_FECOMPOSITE_OPERATOR_ARITHMETIC = 6;
static const int SVG_FECOMPOSITE_OPERATOR_ATOP = 4;
static const int SVG_FECOMPOSITE_OPERATOR_IN = 2;
static const int SVG_FECOMPOSITE_OPERATOR_OUT = 3;
static const int SVG_FECOMPOSITE_OPERATOR_OVER = 1;
static const int SVG_FECOMPOSITE_OPERATOR_UNKNOWN = 0;
static const int SVG_FECOMPOSITE_OPERATOR_XOR = 5;
@DomName('SVGFECompositeElement.in1')
@DocsEditable
final AnimatedString in1;
@DomName('SVGFECompositeElement.in2')
@DocsEditable
final AnimatedString in2;
@DomName('SVGFECompositeElement.k1')
@DocsEditable
final AnimatedNumber k1;
@DomName('SVGFECompositeElement.k2')
@DocsEditable
final AnimatedNumber k2;
@DomName('SVGFECompositeElement.k3')
@DocsEditable
final AnimatedNumber k3;
@DomName('SVGFECompositeElement.k4')
@DocsEditable
final AnimatedNumber k4;
@DomName('SVGFECompositeElement.operator')
@DocsEditable
final AnimatedEnumeration operator;
// From SVGFilterPrimitiveStandardAttributes
@DomName('SVGFECompositeElement.height')
@DocsEditable
final AnimatedLength height;
@DomName('SVGFECompositeElement.result')
@DocsEditable
final AnimatedString result;
@DomName('SVGFECompositeElement.width')
@DocsEditable
final AnimatedLength width;
@DomName('SVGFECompositeElement.x')
@DocsEditable
final AnimatedLength x;
@DomName('SVGFECompositeElement.y')
@DocsEditable
final AnimatedLength y;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFEConvolveMatrixElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.IE, '10')
@SupportedBrowser(SupportedBrowser.SAFARI)
class FEConvolveMatrixElement extends StyledElement implements FilterPrimitiveStandardAttributes native "*SVGFEConvolveMatrixElement" {
@DomName('SVGFEConvolveMatrixElement.SVGFEConvolveMatrixElement')
@DocsEditable
factory FEConvolveMatrixElement() => _SvgElementFactoryProvider.createSvgElement_tag("feConvolveMatrix");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('feConvolveMatrix') && (new SvgElement.tag('feConvolveMatrix') is FEConvolveMatrixElement);
static const int SVG_EDGEMODE_DUPLICATE = 1;
static const int SVG_EDGEMODE_NONE = 3;
static const int SVG_EDGEMODE_UNKNOWN = 0;
static const int SVG_EDGEMODE_WRAP = 2;
@DomName('SVGFEConvolveMatrixElement.bias')
@DocsEditable
final AnimatedNumber bias;
@DomName('SVGFEConvolveMatrixElement.divisor')
@DocsEditable
final AnimatedNumber divisor;
@DomName('SVGFEConvolveMatrixElement.edgeMode')
@DocsEditable
final AnimatedEnumeration edgeMode;
@DomName('SVGFEConvolveMatrixElement.in1')
@DocsEditable
final AnimatedString in1;
@DomName('SVGFEConvolveMatrixElement.kernelMatrix')
@DocsEditable
final AnimatedNumberList kernelMatrix;
@DomName('SVGFEConvolveMatrixElement.kernelUnitLengthX')
@DocsEditable
final AnimatedNumber kernelUnitLengthX;
@DomName('SVGFEConvolveMatrixElement.kernelUnitLengthY')
@DocsEditable
final AnimatedNumber kernelUnitLengthY;
@DomName('SVGFEConvolveMatrixElement.orderX')
@DocsEditable
final AnimatedInteger orderX;
@DomName('SVGFEConvolveMatrixElement.orderY')
@DocsEditable
final AnimatedInteger orderY;
@DomName('SVGFEConvolveMatrixElement.preserveAlpha')
@DocsEditable
final AnimatedBoolean preserveAlpha;
@DomName('SVGFEConvolveMatrixElement.targetX')
@DocsEditable
final AnimatedInteger targetX;
@DomName('SVGFEConvolveMatrixElement.targetY')
@DocsEditable
final AnimatedInteger targetY;
// From SVGFilterPrimitiveStandardAttributes
@DomName('SVGFEConvolveMatrixElement.height')
@DocsEditable
final AnimatedLength height;
@DomName('SVGFEConvolveMatrixElement.result')
@DocsEditable
final AnimatedString result;
@DomName('SVGFEConvolveMatrixElement.width')
@DocsEditable
final AnimatedLength width;
@DomName('SVGFEConvolveMatrixElement.x')
@DocsEditable
final AnimatedLength x;
@DomName('SVGFEConvolveMatrixElement.y')
@DocsEditable
final AnimatedLength y;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFEDiffuseLightingElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.IE, '10')
@SupportedBrowser(SupportedBrowser.SAFARI)
class FEDiffuseLightingElement extends StyledElement implements FilterPrimitiveStandardAttributes native "*SVGFEDiffuseLightingElement" {
@DomName('SVGFEDiffuseLightingElement.SVGFEDiffuseLightingElement')
@DocsEditable
factory FEDiffuseLightingElement() => _SvgElementFactoryProvider.createSvgElement_tag("feDiffuseLighting");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('feDiffuseLighting') && (new SvgElement.tag('feDiffuseLighting') is FEDiffuseLightingElement);
@DomName('SVGFEDiffuseLightingElement.diffuseConstant')
@DocsEditable
final AnimatedNumber diffuseConstant;
@DomName('SVGFEDiffuseLightingElement.in1')
@DocsEditable
final AnimatedString in1;
@DomName('SVGFEDiffuseLightingElement.kernelUnitLengthX')
@DocsEditable
final AnimatedNumber kernelUnitLengthX;
@DomName('SVGFEDiffuseLightingElement.kernelUnitLengthY')
@DocsEditable
final AnimatedNumber kernelUnitLengthY;
@DomName('SVGFEDiffuseLightingElement.surfaceScale')
@DocsEditable
final AnimatedNumber surfaceScale;
// From SVGFilterPrimitiveStandardAttributes
@DomName('SVGFEDiffuseLightingElement.height')
@DocsEditable
final AnimatedLength height;
@DomName('SVGFEDiffuseLightingElement.result')
@DocsEditable
final AnimatedString result;
@DomName('SVGFEDiffuseLightingElement.width')
@DocsEditable
final AnimatedLength width;
@DomName('SVGFEDiffuseLightingElement.x')
@DocsEditable
final AnimatedLength x;
@DomName('SVGFEDiffuseLightingElement.y')
@DocsEditable
final AnimatedLength y;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFEDisplacementMapElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.IE, '10')
@SupportedBrowser(SupportedBrowser.SAFARI)
class FEDisplacementMapElement extends StyledElement implements FilterPrimitiveStandardAttributes native "*SVGFEDisplacementMapElement" {
@DomName('SVGFEDisplacementMapElement.SVGFEDisplacementMapElement')
@DocsEditable
factory FEDisplacementMapElement() => _SvgElementFactoryProvider.createSvgElement_tag("feDisplacementMap");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('feDisplacementMap') && (new SvgElement.tag('feDisplacementMap') is FEDisplacementMapElement);
static const int SVG_CHANNEL_A = 4;
static const int SVG_CHANNEL_B = 3;
static const int SVG_CHANNEL_G = 2;
static const int SVG_CHANNEL_R = 1;
static const int SVG_CHANNEL_UNKNOWN = 0;
@DomName('SVGFEDisplacementMapElement.in1')
@DocsEditable
final AnimatedString in1;
@DomName('SVGFEDisplacementMapElement.in2')
@DocsEditable
final AnimatedString in2;
@DomName('SVGFEDisplacementMapElement.scale')
@DocsEditable
final AnimatedNumber scale;
@DomName('SVGFEDisplacementMapElement.xChannelSelector')
@DocsEditable
final AnimatedEnumeration xChannelSelector;
@DomName('SVGFEDisplacementMapElement.yChannelSelector')
@DocsEditable
final AnimatedEnumeration yChannelSelector;
// From SVGFilterPrimitiveStandardAttributes
@DomName('SVGFEDisplacementMapElement.height')
@DocsEditable
final AnimatedLength height;
@DomName('SVGFEDisplacementMapElement.result')
@DocsEditable
final AnimatedString result;
@DomName('SVGFEDisplacementMapElement.width')
@DocsEditable
final AnimatedLength width;
@DomName('SVGFEDisplacementMapElement.x')
@DocsEditable
final AnimatedLength x;
@DomName('SVGFEDisplacementMapElement.y')
@DocsEditable
final AnimatedLength y;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFEDistantLightElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.IE, '10')
@SupportedBrowser(SupportedBrowser.SAFARI)
class FEDistantLightElement extends SvgElement native "*SVGFEDistantLightElement" {
@DomName('SVGFEDistantLightElement.SVGFEDistantLightElement')
@DocsEditable
factory FEDistantLightElement() => _SvgElementFactoryProvider.createSvgElement_tag("feDistantLight");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('feDistantLight') && (new SvgElement.tag('feDistantLight') is FEDistantLightElement);
@DomName('SVGFEDistantLightElement.azimuth')
@DocsEditable
final AnimatedNumber azimuth;
@DomName('SVGFEDistantLightElement.elevation')
@DocsEditable
final AnimatedNumber elevation;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFEFloodElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.IE, '10')
@SupportedBrowser(SupportedBrowser.SAFARI)
class FEFloodElement extends StyledElement implements FilterPrimitiveStandardAttributes native "*SVGFEFloodElement" {
@DomName('SVGFEFloodElement.SVGFEFloodElement')
@DocsEditable
factory FEFloodElement() => _SvgElementFactoryProvider.createSvgElement_tag("feFlood");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('feFlood') && (new SvgElement.tag('feFlood') is FEFloodElement);
// From SVGFilterPrimitiveStandardAttributes
@DomName('SVGFEFloodElement.height')
@DocsEditable
final AnimatedLength height;
@DomName('SVGFEFloodElement.result')
@DocsEditable
final AnimatedString result;
@DomName('SVGFEFloodElement.width')
@DocsEditable
final AnimatedLength width;
@DomName('SVGFEFloodElement.x')
@DocsEditable
final AnimatedLength x;
@DomName('SVGFEFloodElement.y')
@DocsEditable
final AnimatedLength y;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFEFuncAElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.IE, '10')
@SupportedBrowser(SupportedBrowser.SAFARI)
class FEFuncAElement extends _SVGComponentTransferFunctionElement native "*SVGFEFuncAElement" {
@DomName('SVGFEFuncAElement.SVGFEFuncAElement')
@DocsEditable
factory FEFuncAElement() => _SvgElementFactoryProvider.createSvgElement_tag("feFuncA");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('feFuncA') && (new SvgElement.tag('feFuncA') is FEFuncAElement);
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFEFuncBElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.IE, '10')
@SupportedBrowser(SupportedBrowser.SAFARI)
class FEFuncBElement extends _SVGComponentTransferFunctionElement native "*SVGFEFuncBElement" {
@DomName('SVGFEFuncBElement.SVGFEFuncBElement')
@DocsEditable
factory FEFuncBElement() => _SvgElementFactoryProvider.createSvgElement_tag("feFuncB");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('feFuncB') && (new SvgElement.tag('feFuncB') is FEFuncBElement);
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFEFuncGElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.IE, '10')
@SupportedBrowser(SupportedBrowser.SAFARI)
class FEFuncGElement extends _SVGComponentTransferFunctionElement native "*SVGFEFuncGElement" {
@DomName('SVGFEFuncGElement.SVGFEFuncGElement')
@DocsEditable
factory FEFuncGElement() => _SvgElementFactoryProvider.createSvgElement_tag("feFuncG");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('feFuncG') && (new SvgElement.tag('feFuncG') is FEFuncGElement);
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFEFuncRElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.IE, '10')
@SupportedBrowser(SupportedBrowser.SAFARI)
class FEFuncRElement extends _SVGComponentTransferFunctionElement native "*SVGFEFuncRElement" {
@DomName('SVGFEFuncRElement.SVGFEFuncRElement')
@DocsEditable
factory FEFuncRElement() => _SvgElementFactoryProvider.createSvgElement_tag("feFuncR");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('feFuncR') && (new SvgElement.tag('feFuncR') is FEFuncRElement);
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFEGaussianBlurElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.IE, '10')
@SupportedBrowser(SupportedBrowser.SAFARI)
class FEGaussianBlurElement extends StyledElement implements FilterPrimitiveStandardAttributes native "*SVGFEGaussianBlurElement" {
@DomName('SVGFEGaussianBlurElement.SVGFEGaussianBlurElement')
@DocsEditable
factory FEGaussianBlurElement() => _SvgElementFactoryProvider.createSvgElement_tag("feGaussianBlur");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('feGaussianBlur') && (new SvgElement.tag('feGaussianBlur') is FEGaussianBlurElement);
@DomName('SVGFEGaussianBlurElement.in1')
@DocsEditable
final AnimatedString in1;
@DomName('SVGFEGaussianBlurElement.stdDeviationX')
@DocsEditable
final AnimatedNumber stdDeviationX;
@DomName('SVGFEGaussianBlurElement.stdDeviationY')
@DocsEditable
final AnimatedNumber stdDeviationY;
@DomName('SVGFEGaussianBlurElement.setStdDeviation')
@DocsEditable
void setStdDeviation(num stdDeviationX, num stdDeviationY) native;
// From SVGFilterPrimitiveStandardAttributes
@DomName('SVGFEGaussianBlurElement.height')
@DocsEditable
final AnimatedLength height;
@DomName('SVGFEGaussianBlurElement.result')
@DocsEditable
final AnimatedString result;
@DomName('SVGFEGaussianBlurElement.width')
@DocsEditable
final AnimatedLength width;
@DomName('SVGFEGaussianBlurElement.x')
@DocsEditable
final AnimatedLength x;
@DomName('SVGFEGaussianBlurElement.y')
@DocsEditable
final AnimatedLength y;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFEImageElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.IE, '10')
@SupportedBrowser(SupportedBrowser.SAFARI)
class FEImageElement extends StyledElement implements FilterPrimitiveStandardAttributes, UriReference, ExternalResourcesRequired, LangSpace native "*SVGFEImageElement" {
@DomName('SVGFEImageElement.SVGFEImageElement')
@DocsEditable
factory FEImageElement() => _SvgElementFactoryProvider.createSvgElement_tag("feImage");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('feImage') && (new SvgElement.tag('feImage') is FEImageElement);
@DomName('SVGFEImageElement.preserveAspectRatio')
@DocsEditable
final AnimatedPreserveAspectRatio preserveAspectRatio;
// From SVGExternalResourcesRequired
@DomName('SVGFEImageElement.externalResourcesRequired')
@DocsEditable
final AnimatedBoolean externalResourcesRequired;
// From SVGFilterPrimitiveStandardAttributes
@DomName('SVGFEImageElement.height')
@DocsEditable
final AnimatedLength height;
@DomName('SVGFEImageElement.result')
@DocsEditable
final AnimatedString result;
@DomName('SVGFEImageElement.width')
@DocsEditable
final AnimatedLength width;
@DomName('SVGFEImageElement.x')
@DocsEditable
final AnimatedLength x;
@DomName('SVGFEImageElement.y')
@DocsEditable
final AnimatedLength y;
// From SVGLangSpace
@DomName('SVGFEImageElement.xmllang')
@DocsEditable
String xmllang;
@DomName('SVGFEImageElement.xmlspace')
@DocsEditable
String xmlspace;
// From SVGURIReference
@DomName('SVGFEImageElement.href')
@DocsEditable
final AnimatedString href;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFEMergeElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.IE, '10')
@SupportedBrowser(SupportedBrowser.SAFARI)
class FEMergeElement extends StyledElement implements FilterPrimitiveStandardAttributes native "*SVGFEMergeElement" {
@DomName('SVGFEMergeElement.SVGFEMergeElement')
@DocsEditable
factory FEMergeElement() => _SvgElementFactoryProvider.createSvgElement_tag("feMerge");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('feMerge') && (new SvgElement.tag('feMerge') is FEMergeElement);
// From SVGFilterPrimitiveStandardAttributes
@DomName('SVGFEMergeElement.height')
@DocsEditable
final AnimatedLength height;
@DomName('SVGFEMergeElement.result')
@DocsEditable
final AnimatedString result;
@DomName('SVGFEMergeElement.width')
@DocsEditable
final AnimatedLength width;
@DomName('SVGFEMergeElement.x')
@DocsEditable
final AnimatedLength x;
@DomName('SVGFEMergeElement.y')
@DocsEditable
final AnimatedLength y;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFEMergeNodeElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.IE, '10')
@SupportedBrowser(SupportedBrowser.SAFARI)
class FEMergeNodeElement extends SvgElement native "*SVGFEMergeNodeElement" {
@DomName('SVGFEMergeNodeElement.SVGFEMergeNodeElement')
@DocsEditable
factory FEMergeNodeElement() => _SvgElementFactoryProvider.createSvgElement_tag("feMergeNode");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('feMergeNode') && (new SvgElement.tag('feMergeNode') is FEMergeNodeElement);
@DomName('SVGFEMergeNodeElement.in1')
@DocsEditable
final AnimatedString in1;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFEMorphologyElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.IE, '10')
@SupportedBrowser(SupportedBrowser.SAFARI)
class FEMorphologyElement extends StyledElement implements FilterPrimitiveStandardAttributes native "*SVGFEMorphologyElement" {
static const int SVG_MORPHOLOGY_OPERATOR_DILATE = 2;
static const int SVG_MORPHOLOGY_OPERATOR_ERODE = 1;
static const int SVG_MORPHOLOGY_OPERATOR_UNKNOWN = 0;
@DomName('SVGFEMorphologyElement.in1')
@DocsEditable
final AnimatedString in1;
@DomName('SVGFEMorphologyElement.operator')
@DocsEditable
final AnimatedEnumeration operator;
@DomName('SVGFEMorphologyElement.radiusX')
@DocsEditable
final AnimatedNumber radiusX;
@DomName('SVGFEMorphologyElement.radiusY')
@DocsEditable
final AnimatedNumber radiusY;
@DomName('SVGFEMorphologyElement.setRadius')
@DocsEditable
void setRadius(num radiusX, num radiusY) native;
// From SVGFilterPrimitiveStandardAttributes
@DomName('SVGFEMorphologyElement.height')
@DocsEditable
final AnimatedLength height;
@DomName('SVGFEMorphologyElement.result')
@DocsEditable
final AnimatedString result;
@DomName('SVGFEMorphologyElement.width')
@DocsEditable
final AnimatedLength width;
@DomName('SVGFEMorphologyElement.x')
@DocsEditable
final AnimatedLength x;
@DomName('SVGFEMorphologyElement.y')
@DocsEditable
final AnimatedLength y;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFEOffsetElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.IE, '10')
@SupportedBrowser(SupportedBrowser.SAFARI)
class FEOffsetElement extends StyledElement implements FilterPrimitiveStandardAttributes native "*SVGFEOffsetElement" {
@DomName('SVGFEOffsetElement.SVGFEOffsetElement')
@DocsEditable
factory FEOffsetElement() => _SvgElementFactoryProvider.createSvgElement_tag("feOffset");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('feOffset') && (new SvgElement.tag('feOffset') is FEOffsetElement);
@DomName('SVGFEOffsetElement.dx')
@DocsEditable
final AnimatedNumber dx;
@DomName('SVGFEOffsetElement.dy')
@DocsEditable
final AnimatedNumber dy;
@DomName('SVGFEOffsetElement.in1')
@DocsEditable
final AnimatedString in1;
// From SVGFilterPrimitiveStandardAttributes
@DomName('SVGFEOffsetElement.height')
@DocsEditable
final AnimatedLength height;
@DomName('SVGFEOffsetElement.result')
@DocsEditable
final AnimatedString result;
@DomName('SVGFEOffsetElement.width')
@DocsEditable
final AnimatedLength width;
@DomName('SVGFEOffsetElement.x')
@DocsEditable
final AnimatedLength x;
@DomName('SVGFEOffsetElement.y')
@DocsEditable
final AnimatedLength y;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFEPointLightElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.IE, '10')
@SupportedBrowser(SupportedBrowser.SAFARI)
class FEPointLightElement extends SvgElement native "*SVGFEPointLightElement" {
@DomName('SVGFEPointLightElement.SVGFEPointLightElement')
@DocsEditable
factory FEPointLightElement() => _SvgElementFactoryProvider.createSvgElement_tag("fePointLight");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('fePointLight') && (new SvgElement.tag('fePointLight') is FEPointLightElement);
@DomName('SVGFEPointLightElement.x')
@DocsEditable
final AnimatedNumber x;
@DomName('SVGFEPointLightElement.y')
@DocsEditable
final AnimatedNumber y;
@DomName('SVGFEPointLightElement.z')
@DocsEditable
final AnimatedNumber z;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFESpecularLightingElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.IE, '10')
@SupportedBrowser(SupportedBrowser.SAFARI)
class FESpecularLightingElement extends StyledElement implements FilterPrimitiveStandardAttributes native "*SVGFESpecularLightingElement" {
@DomName('SVGFESpecularLightingElement.SVGFESpecularLightingElement')
@DocsEditable
factory FESpecularLightingElement() => _SvgElementFactoryProvider.createSvgElement_tag("feSpecularLighting");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('feSpecularLighting') && (new SvgElement.tag('feSpecularLighting') is FESpecularLightingElement);
@DomName('SVGFESpecularLightingElement.in1')
@DocsEditable
final AnimatedString in1;
@DomName('SVGFESpecularLightingElement.specularConstant')
@DocsEditable
final AnimatedNumber specularConstant;
@DomName('SVGFESpecularLightingElement.specularExponent')
@DocsEditable
final AnimatedNumber specularExponent;
@DomName('SVGFESpecularLightingElement.surfaceScale')
@DocsEditable
final AnimatedNumber surfaceScale;
// From SVGFilterPrimitiveStandardAttributes
@DomName('SVGFESpecularLightingElement.height')
@DocsEditable
final AnimatedLength height;
@DomName('SVGFESpecularLightingElement.result')
@DocsEditable
final AnimatedString result;
@DomName('SVGFESpecularLightingElement.width')
@DocsEditable
final AnimatedLength width;
@DomName('SVGFESpecularLightingElement.x')
@DocsEditable
final AnimatedLength x;
@DomName('SVGFESpecularLightingElement.y')
@DocsEditable
final AnimatedLength y;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFESpotLightElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.IE, '10')
@SupportedBrowser(SupportedBrowser.SAFARI)
class FESpotLightElement extends SvgElement native "*SVGFESpotLightElement" {
@DomName('SVGFESpotLightElement.SVGFESpotLightElement')
@DocsEditable
factory FESpotLightElement() => _SvgElementFactoryProvider.createSvgElement_tag("feSpotLight");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('feSpotLight') && (new SvgElement.tag('feSpotLight') is FESpotLightElement);
@DomName('SVGFESpotLightElement.limitingConeAngle')
@DocsEditable
final AnimatedNumber limitingConeAngle;
@DomName('SVGFESpotLightElement.pointsAtX')
@DocsEditable
final AnimatedNumber pointsAtX;
@DomName('SVGFESpotLightElement.pointsAtY')
@DocsEditable
final AnimatedNumber pointsAtY;
@DomName('SVGFESpotLightElement.pointsAtZ')
@DocsEditable
final AnimatedNumber pointsAtZ;
@DomName('SVGFESpotLightElement.specularExponent')
@DocsEditable
final AnimatedNumber specularExponent;
@DomName('SVGFESpotLightElement.x')
@DocsEditable
final AnimatedNumber x;
@DomName('SVGFESpotLightElement.y')
@DocsEditable
final AnimatedNumber y;
@DomName('SVGFESpotLightElement.z')
@DocsEditable
final AnimatedNumber z;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFETileElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.IE, '10')
@SupportedBrowser(SupportedBrowser.SAFARI)
class FETileElement extends StyledElement implements FilterPrimitiveStandardAttributes native "*SVGFETileElement" {
@DomName('SVGFETileElement.SVGFETileElement')
@DocsEditable
factory FETileElement() => _SvgElementFactoryProvider.createSvgElement_tag("feTile");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('feTile') && (new SvgElement.tag('feTile') is FETileElement);
@DomName('SVGFETileElement.in1')
@DocsEditable
final AnimatedString in1;
// From SVGFilterPrimitiveStandardAttributes
@DomName('SVGFETileElement.height')
@DocsEditable
final AnimatedLength height;
@DomName('SVGFETileElement.result')
@DocsEditable
final AnimatedString result;
@DomName('SVGFETileElement.width')
@DocsEditable
final AnimatedLength width;
@DomName('SVGFETileElement.x')
@DocsEditable
final AnimatedLength x;
@DomName('SVGFETileElement.y')
@DocsEditable
final AnimatedLength y;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFETurbulenceElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.IE, '10')
@SupportedBrowser(SupportedBrowser.SAFARI)
class FETurbulenceElement extends StyledElement implements FilterPrimitiveStandardAttributes native "*SVGFETurbulenceElement" {
@DomName('SVGFETurbulenceElement.SVGFETurbulenceElement')
@DocsEditable
factory FETurbulenceElement() => _SvgElementFactoryProvider.createSvgElement_tag("feTurbulence");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('feTurbulence') && (new SvgElement.tag('feTurbulence') is FETurbulenceElement);
static const int SVG_STITCHTYPE_NOSTITCH = 2;
static const int SVG_STITCHTYPE_STITCH = 1;
static const int SVG_STITCHTYPE_UNKNOWN = 0;
static const int SVG_TURBULENCE_TYPE_FRACTALNOISE = 1;
static const int SVG_TURBULENCE_TYPE_TURBULENCE = 2;
static const int SVG_TURBULENCE_TYPE_UNKNOWN = 0;
@DomName('SVGFETurbulenceElement.baseFrequencyX')
@DocsEditable
final AnimatedNumber baseFrequencyX;
@DomName('SVGFETurbulenceElement.baseFrequencyY')
@DocsEditable
final AnimatedNumber baseFrequencyY;
@DomName('SVGFETurbulenceElement.numOctaves')
@DocsEditable
final AnimatedInteger numOctaves;
@DomName('SVGFETurbulenceElement.seed')
@DocsEditable
final AnimatedNumber seed;
@DomName('SVGFETurbulenceElement.stitchTiles')
@DocsEditable
final AnimatedEnumeration stitchTiles;
@DomName('SVGFETurbulenceElement.type')
@DocsEditable
final AnimatedEnumeration type;
// From SVGFilterPrimitiveStandardAttributes
@DomName('SVGFETurbulenceElement.height')
@DocsEditable
final AnimatedLength height;
@DomName('SVGFETurbulenceElement.result')
@DocsEditable
final AnimatedString result;
@DomName('SVGFETurbulenceElement.width')
@DocsEditable
final AnimatedLength width;
@DomName('SVGFETurbulenceElement.x')
@DocsEditable
final AnimatedLength x;
@DomName('SVGFETurbulenceElement.y')
@DocsEditable
final AnimatedLength y;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFilterElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.IE, '10')
@SupportedBrowser(SupportedBrowser.SAFARI)
class FilterElement extends StyledElement implements UriReference, ExternalResourcesRequired, LangSpace native "*SVGFilterElement" {
@DomName('SVGFilterElement.SVGFilterElement')
@DocsEditable
factory FilterElement() => _SvgElementFactoryProvider.createSvgElement_tag("filter");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('filter') && (new SvgElement.tag('filter') is FilterElement);
@DomName('SVGFilterElement.filterResX')
@DocsEditable
final AnimatedInteger filterResX;
@DomName('SVGFilterElement.filterResY')
@DocsEditable
final AnimatedInteger filterResY;
@DomName('SVGFilterElement.filterUnits')
@DocsEditable
final AnimatedEnumeration filterUnits;
@DomName('SVGFilterElement.height')
@DocsEditable
final AnimatedLength height;
@DomName('SVGFilterElement.primitiveUnits')
@DocsEditable
final AnimatedEnumeration primitiveUnits;
@DomName('SVGFilterElement.width')
@DocsEditable
final AnimatedLength width;
@DomName('SVGFilterElement.x')
@DocsEditable
final AnimatedLength x;
@DomName('SVGFilterElement.y')
@DocsEditable
final AnimatedLength y;
@DomName('SVGFilterElement.setFilterRes')
@DocsEditable
void setFilterRes(int filterResX, int filterResY) native;
// From SVGExternalResourcesRequired
@DomName('SVGFilterElement.externalResourcesRequired')
@DocsEditable
final AnimatedBoolean externalResourcesRequired;
// From SVGLangSpace
@DomName('SVGFilterElement.xmllang')
@DocsEditable
String xmllang;
@DomName('SVGFilterElement.xmlspace')
@DocsEditable
String xmlspace;
// From SVGURIReference
@DomName('SVGFilterElement.href')
@DocsEditable
final AnimatedString href;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DomName('SVGFilterPrimitiveStandardAttributes')
abstract class FilterPrimitiveStandardAttributes {
AnimatedLength height;
AnimatedString result;
AnimatedLength width;
AnimatedLength x;
AnimatedLength y;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DomName('SVGFitToViewBox')
abstract class FitToViewBox {
AnimatedPreserveAspectRatio preserveAspectRatio;
AnimatedRect viewBox;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGForeignObjectElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.SAFARI)
class ForeignObjectElement extends StyledElement implements Transformable, Tests, ExternalResourcesRequired, LangSpace native "*SVGForeignObjectElement" {
@DomName('SVGForeignObjectElement.SVGForeignObjectElement')
@DocsEditable
factory ForeignObjectElement() => _SvgElementFactoryProvider.createSvgElement_tag("foreignObject");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('foreignObject') && (new SvgElement.tag('foreignObject') is ForeignObjectElement);
@DomName('SVGForeignObjectElement.height')
@DocsEditable
final AnimatedLength height;
@DomName('SVGForeignObjectElement.width')
@DocsEditable
final AnimatedLength width;
@DomName('SVGForeignObjectElement.x')
@DocsEditable
final AnimatedLength x;
@DomName('SVGForeignObjectElement.y')
@DocsEditable
final AnimatedLength y;
// From SVGExternalResourcesRequired
@DomName('SVGForeignObjectElement.externalResourcesRequired')
@DocsEditable
final AnimatedBoolean externalResourcesRequired;
// From SVGLangSpace
@DomName('SVGForeignObjectElement.xmllang')
@DocsEditable
String xmllang;
@DomName('SVGForeignObjectElement.xmlspace')
@DocsEditable
String xmlspace;
// From SVGLocatable
@DomName('SVGForeignObjectElement.farthestViewportElement')
@DocsEditable
final SvgElement farthestViewportElement;
@DomName('SVGForeignObjectElement.nearestViewportElement')
@DocsEditable
final SvgElement nearestViewportElement;
@DomName('SVGForeignObjectElement.getBBox')
@DocsEditable
Rect getBBox() native;
@JSName('getCTM')
@DomName('SVGForeignObjectElement.getCTM')
@DocsEditable
Matrix getCtm() native;
@JSName('getScreenCTM')
@DomName('SVGForeignObjectElement.getScreenCTM')
@DocsEditable
Matrix getScreenCtm() native;
@DomName('SVGForeignObjectElement.getTransformToElement')
@DocsEditable
Matrix getTransformToElement(SvgElement element) native;
// From SVGTests
@DomName('SVGForeignObjectElement.requiredExtensions')
@DocsEditable
final StringList requiredExtensions;
@DomName('SVGForeignObjectElement.requiredFeatures')
@DocsEditable
final StringList requiredFeatures;
@DomName('SVGForeignObjectElement.systemLanguage')
@DocsEditable
final StringList systemLanguage;
@DomName('SVGForeignObjectElement.hasExtension')
@DocsEditable
bool hasExtension(String extension) native;
// From SVGTransformable
@DomName('SVGForeignObjectElement.transform')
@DocsEditable
final AnimatedTransformList transform;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGGElement')
class GElement extends StyledElement implements Transformable, Tests, ExternalResourcesRequired, LangSpace native "*SVGGElement" {
@DomName('SVGGElement.SVGGElement')
@DocsEditable
factory GElement() => _SvgElementFactoryProvider.createSvgElement_tag("g");
// From SVGExternalResourcesRequired
@DomName('SVGGElement.externalResourcesRequired')
@DocsEditable
final AnimatedBoolean externalResourcesRequired;
// From SVGLangSpace
@DomName('SVGGElement.xmllang')
@DocsEditable
String xmllang;
@DomName('SVGGElement.xmlspace')
@DocsEditable
String xmlspace;
// From SVGLocatable
@DomName('SVGGElement.farthestViewportElement')
@DocsEditable
final SvgElement farthestViewportElement;
@DomName('SVGGElement.nearestViewportElement')
@DocsEditable
final SvgElement nearestViewportElement;
@DomName('SVGGElement.getBBox')
@DocsEditable
Rect getBBox() native;
@JSName('getCTM')
@DomName('SVGGElement.getCTM')
@DocsEditable
Matrix getCtm() native;
@JSName('getScreenCTM')
@DomName('SVGGElement.getScreenCTM')
@DocsEditable
Matrix getScreenCtm() native;
@DomName('SVGGElement.getTransformToElement')
@DocsEditable
Matrix getTransformToElement(SvgElement element) native;
// From SVGTests
@DomName('SVGGElement.requiredExtensions')
@DocsEditable
final StringList requiredExtensions;
@DomName('SVGGElement.requiredFeatures')
@DocsEditable
final StringList requiredFeatures;
@DomName('SVGGElement.systemLanguage')
@DocsEditable
final StringList systemLanguage;
@DomName('SVGGElement.hasExtension')
@DocsEditable
bool hasExtension(String extension) native;
// From SVGTransformable
@DomName('SVGGElement.transform')
@DocsEditable
final AnimatedTransformList transform;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGImageElement')
class ImageElement extends StyledElement implements UriReference, Tests, Transformable, ExternalResourcesRequired, LangSpace native "*SVGImageElement" {
@DomName('SVGImageElement.SVGImageElement')
@DocsEditable
factory ImageElement() => _SvgElementFactoryProvider.createSvgElement_tag("image");
@DomName('SVGImageElement.height')
@DocsEditable
final AnimatedLength height;
@DomName('SVGImageElement.preserveAspectRatio')
@DocsEditable
final AnimatedPreserveAspectRatio preserveAspectRatio;
@DomName('SVGImageElement.width')
@DocsEditable
final AnimatedLength width;
@DomName('SVGImageElement.x')
@DocsEditable
final AnimatedLength x;
@DomName('SVGImageElement.y')
@DocsEditable
final AnimatedLength y;
// From SVGExternalResourcesRequired
@DomName('SVGImageElement.externalResourcesRequired')
@DocsEditable
final AnimatedBoolean externalResourcesRequired;
// From SVGLangSpace
@DomName('SVGImageElement.xmllang')
@DocsEditable
String xmllang;
@DomName('SVGImageElement.xmlspace')
@DocsEditable
String xmlspace;
// From SVGLocatable
@DomName('SVGImageElement.farthestViewportElement')
@DocsEditable
final SvgElement farthestViewportElement;
@DomName('SVGImageElement.nearestViewportElement')
@DocsEditable
final SvgElement nearestViewportElement;
@DomName('SVGImageElement.getBBox')
@DocsEditable
Rect getBBox() native;
@JSName('getCTM')
@DomName('SVGImageElement.getCTM')
@DocsEditable
Matrix getCtm() native;
@JSName('getScreenCTM')
@DomName('SVGImageElement.getScreenCTM')
@DocsEditable
Matrix getScreenCtm() native;
@DomName('SVGImageElement.getTransformToElement')
@DocsEditable
Matrix getTransformToElement(SvgElement element) native;
// From SVGTests
@DomName('SVGImageElement.requiredExtensions')
@DocsEditable
final StringList requiredExtensions;
@DomName('SVGImageElement.requiredFeatures')
@DocsEditable
final StringList requiredFeatures;
@DomName('SVGImageElement.systemLanguage')
@DocsEditable
final StringList systemLanguage;
@DomName('SVGImageElement.hasExtension')
@DocsEditable
bool hasExtension(String extension) native;
// From SVGTransformable
@DomName('SVGImageElement.transform')
@DocsEditable
final AnimatedTransformList transform;
// From SVGURIReference
@DomName('SVGImageElement.href')
@DocsEditable
final AnimatedString href;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DomName('SVGLangSpace')
abstract class LangSpace {
/// Checks if this type is supported on the current platform.
static bool supported(SvgElement element) => JS('bool', '#.xmlspace !== undefined && #.xmllang !== undefined', element, element);
String xmllang;
String xmlspace;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGLength')
class Length native "*SVGLength" {
static const int SVG_LENGTHTYPE_CM = 6;
static const int SVG_LENGTHTYPE_EMS = 3;
static const int SVG_LENGTHTYPE_EXS = 4;
static const int SVG_LENGTHTYPE_IN = 8;
static const int SVG_LENGTHTYPE_MM = 7;
static const int SVG_LENGTHTYPE_NUMBER = 1;
static const int SVG_LENGTHTYPE_PC = 10;
static const int SVG_LENGTHTYPE_PERCENTAGE = 2;
static const int SVG_LENGTHTYPE_PT = 9;
static const int SVG_LENGTHTYPE_PX = 5;
static const int SVG_LENGTHTYPE_UNKNOWN = 0;
@DomName('SVGLength.unitType')
@DocsEditable
final int unitType;
@DomName('SVGLength.value')
@DocsEditable
num value;
@DomName('SVGLength.valueAsString')
@DocsEditable
String valueAsString;
@DomName('SVGLength.valueInSpecifiedUnits')
@DocsEditable
num valueInSpecifiedUnits;
@DomName('SVGLength.convertToSpecifiedUnits')
@DocsEditable
void convertToSpecifiedUnits(int unitType) native;
@DomName('SVGLength.newValueSpecifiedUnits')
@DocsEditable
void newValueSpecifiedUnits(int unitType, num valueInSpecifiedUnits) native;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGLengthList')
class LengthList implements JavaScriptIndexingBehavior, List<Length> native "*SVGLengthList" {
@DomName('SVGLengthList.numberOfItems')
@DocsEditable
final int numberOfItems;
Length operator[](int index) => JS("Length", "#[#]", this, index);
void operator[]=(int index, Length value) {
throw new UnsupportedError("Cannot assign element of immutable List.");
}
// -- start List<Length> mixins.
// Length is the element type.
// From Iterable<Length>:
Iterator<Length> get iterator {
// Note: NodeLists are not fixed size. And most probably length shouldn't
// be cached in both iterator _and_ forEach method. For now caching it
// for consistency.
return new FixedSizeListIterator<Length>(this);
}
// SVG Collections expose numberOfItems rather than length.
int get length => numberOfItems;
dynamic reduce(dynamic initialValue, dynamic combine(dynamic, Length)) {
return IterableMixinWorkaround.reduce(this, initialValue, combine);
}
bool contains(Length element) => IterableMixinWorkaround.contains(this, element);
void forEach(void f(Length element)) => IterableMixinWorkaround.forEach(this, f);
String join([String separator]) =>
IterableMixinWorkaround.joinList(this, separator);
Iterable map(f(Length element)) =>
IterableMixinWorkaround.mapList(this, f);
Iterable<Length> where(bool f(Length element)) =>
IterableMixinWorkaround.where(this, f);
Iterable expand(Iterable f(Length element)) =>
IterableMixinWorkaround.expand(this, f);
bool every(bool f(Length element)) => IterableMixinWorkaround.every(this, f);
bool any(bool f(Length element)) => IterableMixinWorkaround.any(this, f);
List<Length> toList() => new List<Length>.from(this);
Set<Length> toSet() => new Set<Length>.from(this);
bool get isEmpty => this.length == 0;
Iterable<Length> take(int n) => IterableMixinWorkaround.takeList(this, n);
Iterable<Length> takeWhile(bool test(Length value)) {
return IterableMixinWorkaround.takeWhile(this, test);
}
Iterable<Length> skip(int n) => IterableMixinWorkaround.skipList(this, n);
Iterable<Length> skipWhile(bool test(Length value)) {
return IterableMixinWorkaround.skipWhile(this, test);
}
Length firstMatching(bool test(Length value), { Length orElse() }) {
return IterableMixinWorkaround.firstMatching(this, test, orElse);
}
Length lastMatching(bool test(Length value), {Length orElse()}) {
return IterableMixinWorkaround.lastMatchingInList(this, test, orElse);
}
Length singleMatching(bool test(Length value)) {
return IterableMixinWorkaround.singleMatching(this, test);
}
Length elementAt(int index) {
return this[index];
}
// From Collection<Length>:
void add(Length value) {
throw new UnsupportedError("Cannot add to immutable List.");
}
void addLast(Length value) {
throw new UnsupportedError("Cannot add to immutable List.");
}
void addAll(Iterable<Length> iterable) {
throw new UnsupportedError("Cannot add to immutable List.");
}
// From List<Length>:
void set length(int value) {
throw new UnsupportedError("Cannot resize immutable List.");
}
// clear() defined by IDL.
Iterable<Length> get reversed {
return IterableMixinWorkaround.reversedList(this);
}
void sort([int compare(Length a, Length b)]) {
throw new UnsupportedError("Cannot sort immutable List.");
}
int indexOf(Length element, [int start = 0]) =>
Lists.indexOf(this, element, start, this.length);
int lastIndexOf(Length element, [int start]) {
if (start == null) start = length - 1;
return Lists.lastIndexOf(this, element, start);
}
Length get first {
if (this.length > 0) return this[0];
throw new StateError("No elements");
}
Length get last {
if (this.length > 0) return this[this.length - 1];
throw new StateError("No elements");
}
Length get single {
if (length == 1) return this[0];
if (length == 0) throw new StateError("No elements");
throw new StateError("More than one element");
}
Length min([int compare(Length a, Length b)]) =>
IterableMixinWorkaround.min(this, compare);
Length max([int compare(Length a, Length b)]) =>
IterableMixinWorkaround.max(this, compare);
Length removeAt(int pos) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
Length removeLast() {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void remove(Object object) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void removeAll(Iterable elements) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void retainAll(Iterable elements) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void removeMatching(bool test(Length element)) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void retainMatching(bool test(Length element)) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void setRange(int start, int rangeLength, List<Length> from, [int startFrom]) {
throw new UnsupportedError("Cannot setRange on immutable List.");
}
void removeRange(int start, int rangeLength) {
throw new UnsupportedError("Cannot removeRange on immutable List.");
}
void insertRange(int start, int rangeLength, [Length initialValue]) {
throw new UnsupportedError("Cannot insertRange on immutable List.");
}
List<Length> getRange(int start, int rangeLength) =>
Lists.getRange(this, start, rangeLength, <Length>[]);
// -- end List<Length> mixins.
@DomName('SVGLengthList.appendItem')
@DocsEditable
Length appendItem(Length item) native;
@DomName('SVGLengthList.clear')
@DocsEditable
void clear() native;
@DomName('SVGLengthList.getItem')
@DocsEditable
Length getItem(int index) native;
@DomName('SVGLengthList.initialize')
@DocsEditable
Length initialize(Length item) native;
@DomName('SVGLengthList.insertItemBefore')
@DocsEditable
Length insertItemBefore(Length item, int index) native;
@DomName('SVGLengthList.removeItem')
@DocsEditable
Length removeItem(int index) native;
@DomName('SVGLengthList.replaceItem')
@DocsEditable
Length replaceItem(Length item, int index) native;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGLineElement')
class LineElement extends StyledElement implements Transformable, Tests, ExternalResourcesRequired, LangSpace native "*SVGLineElement" {
@DomName('SVGLineElement.SVGLineElement')
@DocsEditable
factory LineElement() => _SvgElementFactoryProvider.createSvgElement_tag("line");
@DomName('SVGLineElement.x1')
@DocsEditable
final AnimatedLength x1;
@DomName('SVGLineElement.x2')
@DocsEditable
final AnimatedLength x2;
@DomName('SVGLineElement.y1')
@DocsEditable
final AnimatedLength y1;
@DomName('SVGLineElement.y2')
@DocsEditable
final AnimatedLength y2;
// From SVGExternalResourcesRequired
@DomName('SVGLineElement.externalResourcesRequired')
@DocsEditable
final AnimatedBoolean externalResourcesRequired;
// From SVGLangSpace
@DomName('SVGLineElement.xmllang')
@DocsEditable
String xmllang;
@DomName('SVGLineElement.xmlspace')
@DocsEditable
String xmlspace;
// From SVGLocatable
@DomName('SVGLineElement.farthestViewportElement')
@DocsEditable
final SvgElement farthestViewportElement;
@DomName('SVGLineElement.nearestViewportElement')
@DocsEditable
final SvgElement nearestViewportElement;
@DomName('SVGLineElement.getBBox')
@DocsEditable
Rect getBBox() native;
@JSName('getCTM')
@DomName('SVGLineElement.getCTM')
@DocsEditable
Matrix getCtm() native;
@JSName('getScreenCTM')
@DomName('SVGLineElement.getScreenCTM')
@DocsEditable
Matrix getScreenCtm() native;
@DomName('SVGLineElement.getTransformToElement')
@DocsEditable
Matrix getTransformToElement(SvgElement element) native;
// From SVGTests
@DomName('SVGLineElement.requiredExtensions')
@DocsEditable
final StringList requiredExtensions;
@DomName('SVGLineElement.requiredFeatures')
@DocsEditable
final StringList requiredFeatures;
@DomName('SVGLineElement.systemLanguage')
@DocsEditable
final StringList systemLanguage;
@DomName('SVGLineElement.hasExtension')
@DocsEditable
bool hasExtension(String extension) native;
// From SVGTransformable
@DomName('SVGLineElement.transform')
@DocsEditable
final AnimatedTransformList transform;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGLinearGradientElement')
class LinearGradientElement extends _SVGGradientElement native "*SVGLinearGradientElement" {
@DomName('SVGLinearGradientElement.SVGLinearGradientElement')
@DocsEditable
factory LinearGradientElement() => _SvgElementFactoryProvider.createSvgElement_tag("linearGradient");
@DomName('SVGLinearGradientElement.x1')
@DocsEditable
final AnimatedLength x1;
@DomName('SVGLinearGradientElement.x2')
@DocsEditable
final AnimatedLength x2;
@DomName('SVGLinearGradientElement.y1')
@DocsEditable
final AnimatedLength y1;
@DomName('SVGLinearGradientElement.y2')
@DocsEditable
final AnimatedLength y2;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DomName('SVGLocatable')
abstract class Locatable {
SvgElement farthestViewportElement;
SvgElement nearestViewportElement;
Rect getBBox();
Matrix getCTM();
Matrix getScreenCTM();
Matrix getTransformToElement(SvgElement element);
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGMarkerElement')
class MarkerElement extends StyledElement implements FitToViewBox, ExternalResourcesRequired, LangSpace native "*SVGMarkerElement" {
@DomName('SVGMarkerElement.SVGMarkerElement')
@DocsEditable
factory MarkerElement() => _SvgElementFactoryProvider.createSvgElement_tag("marker");
static const int SVG_MARKERUNITS_STROKEWIDTH = 2;
static const int SVG_MARKERUNITS_UNKNOWN = 0;
static const int SVG_MARKERUNITS_USERSPACEONUSE = 1;
static const int SVG_MARKER_ORIENT_ANGLE = 2;
static const int SVG_MARKER_ORIENT_AUTO = 1;
static const int SVG_MARKER_ORIENT_UNKNOWN = 0;
@DomName('SVGMarkerElement.markerHeight')
@DocsEditable
final AnimatedLength markerHeight;
@DomName('SVGMarkerElement.markerUnits')
@DocsEditable
final AnimatedEnumeration markerUnits;
@DomName('SVGMarkerElement.markerWidth')
@DocsEditable
final AnimatedLength markerWidth;
@DomName('SVGMarkerElement.orientAngle')
@DocsEditable
final AnimatedAngle orientAngle;
@DomName('SVGMarkerElement.orientType')
@DocsEditable
final AnimatedEnumeration orientType;
@DomName('SVGMarkerElement.refX')
@DocsEditable
final AnimatedLength refX;
@DomName('SVGMarkerElement.refY')
@DocsEditable
final AnimatedLength refY;
@DomName('SVGMarkerElement.setOrientToAngle')
@DocsEditable
void setOrientToAngle(Angle angle) native;
@DomName('SVGMarkerElement.setOrientToAuto')
@DocsEditable
void setOrientToAuto() native;
// From SVGExternalResourcesRequired
@DomName('SVGMarkerElement.externalResourcesRequired')
@DocsEditable
final AnimatedBoolean externalResourcesRequired;
// From SVGFitToViewBox
@DomName('SVGMarkerElement.preserveAspectRatio')
@DocsEditable
final AnimatedPreserveAspectRatio preserveAspectRatio;
@DomName('SVGMarkerElement.viewBox')
@DocsEditable
final AnimatedRect viewBox;
// From SVGLangSpace
@DomName('SVGMarkerElement.xmllang')
@DocsEditable
String xmllang;
@DomName('SVGMarkerElement.xmlspace')
@DocsEditable
String xmlspace;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGMaskElement')
class MaskElement extends StyledElement implements Tests, ExternalResourcesRequired, LangSpace native "*SVGMaskElement" {
@DomName('SVGMaskElement.SVGMaskElement')
@DocsEditable
factory MaskElement() => _SvgElementFactoryProvider.createSvgElement_tag("mask");
@DomName('SVGMaskElement.height')
@DocsEditable
final AnimatedLength height;
@DomName('SVGMaskElement.maskContentUnits')
@DocsEditable
final AnimatedEnumeration maskContentUnits;
@DomName('SVGMaskElement.maskUnits')
@DocsEditable
final AnimatedEnumeration maskUnits;
@DomName('SVGMaskElement.width')
@DocsEditable
final AnimatedLength width;
@DomName('SVGMaskElement.x')
@DocsEditable
final AnimatedLength x;
@DomName('SVGMaskElement.y')
@DocsEditable
final AnimatedLength y;
// From SVGExternalResourcesRequired
@DomName('SVGMaskElement.externalResourcesRequired')
@DocsEditable
final AnimatedBoolean externalResourcesRequired;
// From SVGLangSpace
@DomName('SVGMaskElement.xmllang')
@DocsEditable
String xmllang;
@DomName('SVGMaskElement.xmlspace')
@DocsEditable
String xmlspace;
// From SVGTests
@DomName('SVGMaskElement.requiredExtensions')
@DocsEditable
final StringList requiredExtensions;
@DomName('SVGMaskElement.requiredFeatures')
@DocsEditable
final StringList requiredFeatures;
@DomName('SVGMaskElement.systemLanguage')
@DocsEditable
final StringList systemLanguage;
@DomName('SVGMaskElement.hasExtension')
@DocsEditable
bool hasExtension(String extension) native;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGMatrix')
class Matrix native "*SVGMatrix" {
@DomName('SVGMatrix.a')
@DocsEditable
num a;
@DomName('SVGMatrix.b')
@DocsEditable
num b;
@DomName('SVGMatrix.c')
@DocsEditable
num c;
@DomName('SVGMatrix.d')
@DocsEditable
num d;
@DomName('SVGMatrix.e')
@DocsEditable
num e;
@DomName('SVGMatrix.f')
@DocsEditable
num f;
@DomName('SVGMatrix.flipX')
@DocsEditable
Matrix flipX() native;
@DomName('SVGMatrix.flipY')
@DocsEditable
Matrix flipY() native;
@DomName('SVGMatrix.inverse')
@DocsEditable
Matrix inverse() native;
@DomName('SVGMatrix.multiply')
@DocsEditable
Matrix multiply(Matrix secondMatrix) native;
@DomName('SVGMatrix.rotate')
@DocsEditable
Matrix rotate(num angle) native;
@DomName('SVGMatrix.rotateFromVector')
@DocsEditable
Matrix rotateFromVector(num x, num y) native;
@DomName('SVGMatrix.scale')
@DocsEditable
Matrix scale(num scaleFactor) native;
@DomName('SVGMatrix.scaleNonUniform')
@DocsEditable
Matrix scaleNonUniform(num scaleFactorX, num scaleFactorY) native;
@DomName('SVGMatrix.skewX')
@DocsEditable
Matrix skewX(num angle) native;
@DomName('SVGMatrix.skewY')
@DocsEditable
Matrix skewY(num angle) native;
@DomName('SVGMatrix.translate')
@DocsEditable
Matrix translate(num x, num y) native;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGMetadataElement')
class MetadataElement extends SvgElement native "*SVGMetadataElement" {
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGNumber')
class Number native "*SVGNumber" {
@DomName('SVGNumber.value')
@DocsEditable
num value;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGNumberList')
class NumberList implements JavaScriptIndexingBehavior, List<Number> native "*SVGNumberList" {
@DomName('SVGNumberList.numberOfItems')
@DocsEditable
final int numberOfItems;
Number operator[](int index) => JS("Number", "#[#]", this, index);
void operator[]=(int index, Number value) {
throw new UnsupportedError("Cannot assign element of immutable List.");
}
// -- start List<Number> mixins.
// Number is the element type.
// From Iterable<Number>:
Iterator<Number> get iterator {
// Note: NodeLists are not fixed size. And most probably length shouldn't
// be cached in both iterator _and_ forEach method. For now caching it
// for consistency.
return new FixedSizeListIterator<Number>(this);
}
// SVG Collections expose numberOfItems rather than length.
int get length => numberOfItems;
dynamic reduce(dynamic initialValue, dynamic combine(dynamic, Number)) {
return IterableMixinWorkaround.reduce(this, initialValue, combine);
}
bool contains(Number element) => IterableMixinWorkaround.contains(this, element);
void forEach(void f(Number element)) => IterableMixinWorkaround.forEach(this, f);
String join([String separator]) =>
IterableMixinWorkaround.joinList(this, separator);
Iterable map(f(Number element)) =>
IterableMixinWorkaround.mapList(this, f);
Iterable<Number> where(bool f(Number element)) =>
IterableMixinWorkaround.where(this, f);
Iterable expand(Iterable f(Number element)) =>
IterableMixinWorkaround.expand(this, f);
bool every(bool f(Number element)) => IterableMixinWorkaround.every(this, f);
bool any(bool f(Number element)) => IterableMixinWorkaround.any(this, f);
List<Number> toList() => new List<Number>.from(this);
Set<Number> toSet() => new Set<Number>.from(this);
bool get isEmpty => this.length == 0;
Iterable<Number> take(int n) => IterableMixinWorkaround.takeList(this, n);
Iterable<Number> takeWhile(bool test(Number value)) {
return IterableMixinWorkaround.takeWhile(this, test);
}
Iterable<Number> skip(int n) => IterableMixinWorkaround.skipList(this, n);
Iterable<Number> skipWhile(bool test(Number value)) {
return IterableMixinWorkaround.skipWhile(this, test);
}
Number firstMatching(bool test(Number value), { Number orElse() }) {
return IterableMixinWorkaround.firstMatching(this, test, orElse);
}
Number lastMatching(bool test(Number value), {Number orElse()}) {
return IterableMixinWorkaround.lastMatchingInList(this, test, orElse);
}
Number singleMatching(bool test(Number value)) {
return IterableMixinWorkaround.singleMatching(this, test);
}
Number elementAt(int index) {
return this[index];
}
// From Collection<Number>:
void add(Number value) {
throw new UnsupportedError("Cannot add to immutable List.");
}
void addLast(Number value) {
throw new UnsupportedError("Cannot add to immutable List.");
}
void addAll(Iterable<Number> iterable) {
throw new UnsupportedError("Cannot add to immutable List.");
}
// From List<Number>:
void set length(int value) {
throw new UnsupportedError("Cannot resize immutable List.");
}
// clear() defined by IDL.
Iterable<Number> get reversed {
return IterableMixinWorkaround.reversedList(this);
}
void sort([int compare(Number a, Number b)]) {
throw new UnsupportedError("Cannot sort immutable List.");
}
int indexOf(Number element, [int start = 0]) =>
Lists.indexOf(this, element, start, this.length);
int lastIndexOf(Number element, [int start]) {
if (start == null) start = length - 1;
return Lists.lastIndexOf(this, element, start);
}
Number get first {
if (this.length > 0) return this[0];
throw new StateError("No elements");
}
Number get last {
if (this.length > 0) return this[this.length - 1];
throw new StateError("No elements");
}
Number get single {
if (length == 1) return this[0];
if (length == 0) throw new StateError("No elements");
throw new StateError("More than one element");
}
Number min([int compare(Number a, Number b)]) =>
IterableMixinWorkaround.min(this, compare);
Number max([int compare(Number a, Number b)]) =>
IterableMixinWorkaround.max(this, compare);
Number removeAt(int pos) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
Number removeLast() {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void remove(Object object) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void removeAll(Iterable elements) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void retainAll(Iterable elements) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void removeMatching(bool test(Number element)) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void retainMatching(bool test(Number element)) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void setRange(int start, int rangeLength, List<Number> from, [int startFrom]) {
throw new UnsupportedError("Cannot setRange on immutable List.");
}
void removeRange(int start, int rangeLength) {
throw new UnsupportedError("Cannot removeRange on immutable List.");
}
void insertRange(int start, int rangeLength, [Number initialValue]) {
throw new UnsupportedError("Cannot insertRange on immutable List.");
}
List<Number> getRange(int start, int rangeLength) =>
Lists.getRange(this, start, rangeLength, <Number>[]);
// -- end List<Number> mixins.
@DomName('SVGNumberList.appendItem')
@DocsEditable
Number appendItem(Number item) native;
@DomName('SVGNumberList.clear')
@DocsEditable
void clear() native;
@DomName('SVGNumberList.getItem')
@DocsEditable
Number getItem(int index) native;
@DomName('SVGNumberList.initialize')
@DocsEditable
Number initialize(Number item) native;
@DomName('SVGNumberList.insertItemBefore')
@DocsEditable
Number insertItemBefore(Number item, int index) native;
@DomName('SVGNumberList.removeItem')
@DocsEditable
Number removeItem(int index) native;
@DomName('SVGNumberList.replaceItem')
@DocsEditable
Number replaceItem(Number item, int index) native;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGPaint')
class Paint extends Color native "*SVGPaint" {
static const int SVG_PAINTTYPE_CURRENTCOLOR = 102;
static const int SVG_PAINTTYPE_NONE = 101;
static const int SVG_PAINTTYPE_RGBCOLOR = 1;
static const int SVG_PAINTTYPE_RGBCOLOR_ICCCOLOR = 2;
static const int SVG_PAINTTYPE_UNKNOWN = 0;
static const int SVG_PAINTTYPE_URI = 107;
static const int SVG_PAINTTYPE_URI_CURRENTCOLOR = 104;
static const int SVG_PAINTTYPE_URI_NONE = 103;
static const int SVG_PAINTTYPE_URI_RGBCOLOR = 105;
static const int SVG_PAINTTYPE_URI_RGBCOLOR_ICCCOLOR = 106;
@DomName('SVGPaint.paintType')
@DocsEditable
final int paintType;
@DomName('SVGPaint.uri')
@DocsEditable
final String uri;
@DomName('SVGPaint.setPaint')
@DocsEditable
void setPaint(int paintType, String uri, String rgbColor, String iccColor) native;
@DomName('SVGPaint.setUri')
@DocsEditable
void setUri(String uri) native;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGPathElement')
class PathElement extends StyledElement implements Transformable, Tests, ExternalResourcesRequired, LangSpace native "*SVGPathElement" {
@DomName('SVGPathElement.SVGPathElement')
@DocsEditable
factory PathElement() => _SvgElementFactoryProvider.createSvgElement_tag("path");
@DomName('SVGPathElement.animatedNormalizedPathSegList')
@DocsEditable
final PathSegList animatedNormalizedPathSegList;
@DomName('SVGPathElement.animatedPathSegList')
@DocsEditable
final PathSegList animatedPathSegList;
@DomName('SVGPathElement.normalizedPathSegList')
@DocsEditable
final PathSegList normalizedPathSegList;
@DomName('SVGPathElement.pathLength')
@DocsEditable
final AnimatedNumber pathLength;
@DomName('SVGPathElement.pathSegList')
@DocsEditable
final PathSegList pathSegList;
@JSName('createSVGPathSegArcAbs')
@DomName('SVGPathElement.createSVGPathSegArcAbs')
@DocsEditable
PathSegArcAbs createSvgPathSegArcAbs(num x, num y, num r1, num r2, num angle, bool largeArcFlag, bool sweepFlag) native;
@JSName('createSVGPathSegArcRel')
@DomName('SVGPathElement.createSVGPathSegArcRel')
@DocsEditable
PathSegArcRel createSvgPathSegArcRel(num x, num y, num r1, num r2, num angle, bool largeArcFlag, bool sweepFlag) native;
@JSName('createSVGPathSegClosePath')
@DomName('SVGPathElement.createSVGPathSegClosePath')
@DocsEditable
PathSegClosePath createSvgPathSegClosePath() native;
@JSName('createSVGPathSegCurvetoCubicAbs')
@DomName('SVGPathElement.createSVGPathSegCurvetoCubicAbs')
@DocsEditable
PathSegCurvetoCubicAbs createSvgPathSegCurvetoCubicAbs(num x, num y, num x1, num y1, num x2, num y2) native;
@JSName('createSVGPathSegCurvetoCubicRel')
@DomName('SVGPathElement.createSVGPathSegCurvetoCubicRel')
@DocsEditable
PathSegCurvetoCubicRel createSvgPathSegCurvetoCubicRel(num x, num y, num x1, num y1, num x2, num y2) native;
@JSName('createSVGPathSegCurvetoCubicSmoothAbs')
@DomName('SVGPathElement.createSVGPathSegCurvetoCubicSmoothAbs')
@DocsEditable
PathSegCurvetoCubicSmoothAbs createSvgPathSegCurvetoCubicSmoothAbs(num x, num y, num x2, num y2) native;
@JSName('createSVGPathSegCurvetoCubicSmoothRel')
@DomName('SVGPathElement.createSVGPathSegCurvetoCubicSmoothRel')
@DocsEditable
PathSegCurvetoCubicSmoothRel createSvgPathSegCurvetoCubicSmoothRel(num x, num y, num x2, num y2) native;
@JSName('createSVGPathSegCurvetoQuadraticAbs')
@DomName('SVGPathElement.createSVGPathSegCurvetoQuadraticAbs')
@DocsEditable
PathSegCurvetoQuadraticAbs createSvgPathSegCurvetoQuadraticAbs(num x, num y, num x1, num y1) native;
@JSName('createSVGPathSegCurvetoQuadraticRel')
@DomName('SVGPathElement.createSVGPathSegCurvetoQuadraticRel')
@DocsEditable
PathSegCurvetoQuadraticRel createSvgPathSegCurvetoQuadraticRel(num x, num y, num x1, num y1) native;
@JSName('createSVGPathSegCurvetoQuadraticSmoothAbs')
@DomName('SVGPathElement.createSVGPathSegCurvetoQuadraticSmoothAbs')
@DocsEditable
PathSegCurvetoQuadraticSmoothAbs createSvgPathSegCurvetoQuadraticSmoothAbs(num x, num y) native;
@JSName('createSVGPathSegCurvetoQuadraticSmoothRel')
@DomName('SVGPathElement.createSVGPathSegCurvetoQuadraticSmoothRel')
@DocsEditable
PathSegCurvetoQuadraticSmoothRel createSvgPathSegCurvetoQuadraticSmoothRel(num x, num y) native;
@JSName('createSVGPathSegLinetoAbs')
@DomName('SVGPathElement.createSVGPathSegLinetoAbs')
@DocsEditable
PathSegLinetoAbs createSvgPathSegLinetoAbs(num x, num y) native;
@JSName('createSVGPathSegLinetoHorizontalAbs')
@DomName('SVGPathElement.createSVGPathSegLinetoHorizontalAbs')
@DocsEditable
PathSegLinetoHorizontalAbs createSvgPathSegLinetoHorizontalAbs(num x) native;
@JSName('createSVGPathSegLinetoHorizontalRel')
@DomName('SVGPathElement.createSVGPathSegLinetoHorizontalRel')
@DocsEditable
PathSegLinetoHorizontalRel createSvgPathSegLinetoHorizontalRel(num x) native;
@JSName('createSVGPathSegLinetoRel')
@DomName('SVGPathElement.createSVGPathSegLinetoRel')
@DocsEditable
PathSegLinetoRel createSvgPathSegLinetoRel(num x, num y) native;
@JSName('createSVGPathSegLinetoVerticalAbs')
@DomName('SVGPathElement.createSVGPathSegLinetoVerticalAbs')
@DocsEditable
PathSegLinetoVerticalAbs createSvgPathSegLinetoVerticalAbs(num y) native;
@JSName('createSVGPathSegLinetoVerticalRel')
@DomName('SVGPathElement.createSVGPathSegLinetoVerticalRel')
@DocsEditable
PathSegLinetoVerticalRel createSvgPathSegLinetoVerticalRel(num y) native;
@JSName('createSVGPathSegMovetoAbs')
@DomName('SVGPathElement.createSVGPathSegMovetoAbs')
@DocsEditable
PathSegMovetoAbs createSvgPathSegMovetoAbs(num x, num y) native;
@JSName('createSVGPathSegMovetoRel')
@DomName('SVGPathElement.createSVGPathSegMovetoRel')
@DocsEditable
PathSegMovetoRel createSvgPathSegMovetoRel(num x, num y) native;
@DomName('SVGPathElement.getPathSegAtLength')
@DocsEditable
int getPathSegAtLength(num distance) native;
@DomName('SVGPathElement.getPointAtLength')
@DocsEditable
Point getPointAtLength(num distance) native;
@DomName('SVGPathElement.getTotalLength')
@DocsEditable
num getTotalLength() native;
// From SVGExternalResourcesRequired
@DomName('SVGPathElement.externalResourcesRequired')
@DocsEditable
final AnimatedBoolean externalResourcesRequired;
// From SVGLangSpace
@DomName('SVGPathElement.xmllang')
@DocsEditable
String xmllang;
@DomName('SVGPathElement.xmlspace')
@DocsEditable
String xmlspace;
// From SVGLocatable
@DomName('SVGPathElement.farthestViewportElement')
@DocsEditable
final SvgElement farthestViewportElement;
@DomName('SVGPathElement.nearestViewportElement')
@DocsEditable
final SvgElement nearestViewportElement;
@DomName('SVGPathElement.getBBox')
@DocsEditable
Rect getBBox() native;
@JSName('getCTM')
@DomName('SVGPathElement.getCTM')
@DocsEditable
Matrix getCtm() native;
@JSName('getScreenCTM')
@DomName('SVGPathElement.getScreenCTM')
@DocsEditable
Matrix getScreenCtm() native;
@DomName('SVGPathElement.getTransformToElement')
@DocsEditable
Matrix getTransformToElement(SvgElement element) native;
// From SVGTests
@DomName('SVGPathElement.requiredExtensions')
@DocsEditable
final StringList requiredExtensions;
@DomName('SVGPathElement.requiredFeatures')
@DocsEditable
final StringList requiredFeatures;
@DomName('SVGPathElement.systemLanguage')
@DocsEditable
final StringList systemLanguage;
@DomName('SVGPathElement.hasExtension')
@DocsEditable
bool hasExtension(String extension) native;
// From SVGTransformable
@DomName('SVGPathElement.transform')
@DocsEditable
final AnimatedTransformList transform;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGPathSeg')
class PathSeg native "*SVGPathSeg" {
static const int PATHSEG_ARC_ABS = 10;
static const int PATHSEG_ARC_REL = 11;
static const int PATHSEG_CLOSEPATH = 1;
static const int PATHSEG_CURVETO_CUBIC_ABS = 6;
static const int PATHSEG_CURVETO_CUBIC_REL = 7;
static const int PATHSEG_CURVETO_CUBIC_SMOOTH_ABS = 16;
static const int PATHSEG_CURVETO_CUBIC_SMOOTH_REL = 17;
static const int PATHSEG_CURVETO_QUADRATIC_ABS = 8;
static const int PATHSEG_CURVETO_QUADRATIC_REL = 9;
static const int PATHSEG_CURVETO_QUADRATIC_SMOOTH_ABS = 18;
static const int PATHSEG_CURVETO_QUADRATIC_SMOOTH_REL = 19;
static const int PATHSEG_LINETO_ABS = 4;
static const int PATHSEG_LINETO_HORIZONTAL_ABS = 12;
static const int PATHSEG_LINETO_HORIZONTAL_REL = 13;
static const int PATHSEG_LINETO_REL = 5;
static const int PATHSEG_LINETO_VERTICAL_ABS = 14;
static const int PATHSEG_LINETO_VERTICAL_REL = 15;
static const int PATHSEG_MOVETO_ABS = 2;
static const int PATHSEG_MOVETO_REL = 3;
static const int PATHSEG_UNKNOWN = 0;
@DomName('SVGPathSeg.pathSegType')
@DocsEditable
final int pathSegType;
@DomName('SVGPathSeg.pathSegTypeAsLetter')
@DocsEditable
final String pathSegTypeAsLetter;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGPathSegArcAbs')
class PathSegArcAbs extends PathSeg native "*SVGPathSegArcAbs" {
@DomName('SVGPathSegArcAbs.angle')
@DocsEditable
num angle;
@DomName('SVGPathSegArcAbs.largeArcFlag')
@DocsEditable
bool largeArcFlag;
@DomName('SVGPathSegArcAbs.r1')
@DocsEditable
num r1;
@DomName('SVGPathSegArcAbs.r2')
@DocsEditable
num r2;
@DomName('SVGPathSegArcAbs.sweepFlag')
@DocsEditable
bool sweepFlag;
@DomName('SVGPathSegArcAbs.x')
@DocsEditable
num x;
@DomName('SVGPathSegArcAbs.y')
@DocsEditable
num y;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGPathSegArcRel')
class PathSegArcRel extends PathSeg native "*SVGPathSegArcRel" {
@DomName('SVGPathSegArcRel.angle')
@DocsEditable
num angle;
@DomName('SVGPathSegArcRel.largeArcFlag')
@DocsEditable
bool largeArcFlag;
@DomName('SVGPathSegArcRel.r1')
@DocsEditable
num r1;
@DomName('SVGPathSegArcRel.r2')
@DocsEditable
num r2;
@DomName('SVGPathSegArcRel.sweepFlag')
@DocsEditable
bool sweepFlag;
@DomName('SVGPathSegArcRel.x')
@DocsEditable
num x;
@DomName('SVGPathSegArcRel.y')
@DocsEditable
num y;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGPathSegClosePath')
class PathSegClosePath extends PathSeg native "*SVGPathSegClosePath" {
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGPathSegCurvetoCubicAbs')
class PathSegCurvetoCubicAbs extends PathSeg native "*SVGPathSegCurvetoCubicAbs" {
@DomName('SVGPathSegCurvetoCubicAbs.x')
@DocsEditable
num x;
@DomName('SVGPathSegCurvetoCubicAbs.x1')
@DocsEditable
num x1;
@DomName('SVGPathSegCurvetoCubicAbs.x2')
@DocsEditable
num x2;
@DomName('SVGPathSegCurvetoCubicAbs.y')
@DocsEditable
num y;
@DomName('SVGPathSegCurvetoCubicAbs.y1')
@DocsEditable
num y1;
@DomName('SVGPathSegCurvetoCubicAbs.y2')
@DocsEditable
num y2;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGPathSegCurvetoCubicRel')
class PathSegCurvetoCubicRel extends PathSeg native "*SVGPathSegCurvetoCubicRel" {
@DomName('SVGPathSegCurvetoCubicRel.x')
@DocsEditable
num x;
@DomName('SVGPathSegCurvetoCubicRel.x1')
@DocsEditable
num x1;
@DomName('SVGPathSegCurvetoCubicRel.x2')
@DocsEditable
num x2;
@DomName('SVGPathSegCurvetoCubicRel.y')
@DocsEditable
num y;
@DomName('SVGPathSegCurvetoCubicRel.y1')
@DocsEditable
num y1;
@DomName('SVGPathSegCurvetoCubicRel.y2')
@DocsEditable
num y2;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGPathSegCurvetoCubicSmoothAbs')
class PathSegCurvetoCubicSmoothAbs extends PathSeg native "*SVGPathSegCurvetoCubicSmoothAbs" {
@DomName('SVGPathSegCurvetoCubicSmoothAbs.x')
@DocsEditable
num x;
@DomName('SVGPathSegCurvetoCubicSmoothAbs.x2')
@DocsEditable
num x2;
@DomName('SVGPathSegCurvetoCubicSmoothAbs.y')
@DocsEditable
num y;
@DomName('SVGPathSegCurvetoCubicSmoothAbs.y2')
@DocsEditable
num y2;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGPathSegCurvetoCubicSmoothRel')
class PathSegCurvetoCubicSmoothRel extends PathSeg native "*SVGPathSegCurvetoCubicSmoothRel" {
@DomName('SVGPathSegCurvetoCubicSmoothRel.x')
@DocsEditable
num x;
@DomName('SVGPathSegCurvetoCubicSmoothRel.x2')
@DocsEditable
num x2;
@DomName('SVGPathSegCurvetoCubicSmoothRel.y')
@DocsEditable
num y;
@DomName('SVGPathSegCurvetoCubicSmoothRel.y2')
@DocsEditable
num y2;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGPathSegCurvetoQuadraticAbs')
class PathSegCurvetoQuadraticAbs extends PathSeg native "*SVGPathSegCurvetoQuadraticAbs" {
@DomName('SVGPathSegCurvetoQuadraticAbs.x')
@DocsEditable
num x;
@DomName('SVGPathSegCurvetoQuadraticAbs.x1')
@DocsEditable
num x1;
@DomName('SVGPathSegCurvetoQuadraticAbs.y')
@DocsEditable
num y;
@DomName('SVGPathSegCurvetoQuadraticAbs.y1')
@DocsEditable
num y1;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGPathSegCurvetoQuadraticRel')
class PathSegCurvetoQuadraticRel extends PathSeg native "*SVGPathSegCurvetoQuadraticRel" {
@DomName('SVGPathSegCurvetoQuadraticRel.x')
@DocsEditable
num x;
@DomName('SVGPathSegCurvetoQuadraticRel.x1')
@DocsEditable
num x1;
@DomName('SVGPathSegCurvetoQuadraticRel.y')
@DocsEditable
num y;
@DomName('SVGPathSegCurvetoQuadraticRel.y1')
@DocsEditable
num y1;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGPathSegCurvetoQuadraticSmoothAbs')
class PathSegCurvetoQuadraticSmoothAbs extends PathSeg native "*SVGPathSegCurvetoQuadraticSmoothAbs" {
@DomName('SVGPathSegCurvetoQuadraticSmoothAbs.x')
@DocsEditable
num x;
@DomName('SVGPathSegCurvetoQuadraticSmoothAbs.y')
@DocsEditable
num y;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGPathSegCurvetoQuadraticSmoothRel')
class PathSegCurvetoQuadraticSmoothRel extends PathSeg native "*SVGPathSegCurvetoQuadraticSmoothRel" {
@DomName('SVGPathSegCurvetoQuadraticSmoothRel.x')
@DocsEditable
num x;
@DomName('SVGPathSegCurvetoQuadraticSmoothRel.y')
@DocsEditable
num y;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGPathSegLinetoAbs')
class PathSegLinetoAbs extends PathSeg native "*SVGPathSegLinetoAbs" {
@DomName('SVGPathSegLinetoAbs.x')
@DocsEditable
num x;
@DomName('SVGPathSegLinetoAbs.y')
@DocsEditable
num y;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGPathSegLinetoHorizontalAbs')
class PathSegLinetoHorizontalAbs extends PathSeg native "*SVGPathSegLinetoHorizontalAbs" {
@DomName('SVGPathSegLinetoHorizontalAbs.x')
@DocsEditable
num x;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGPathSegLinetoHorizontalRel')
class PathSegLinetoHorizontalRel extends PathSeg native "*SVGPathSegLinetoHorizontalRel" {
@DomName('SVGPathSegLinetoHorizontalRel.x')
@DocsEditable
num x;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGPathSegLinetoRel')
class PathSegLinetoRel extends PathSeg native "*SVGPathSegLinetoRel" {
@DomName('SVGPathSegLinetoRel.x')
@DocsEditable
num x;
@DomName('SVGPathSegLinetoRel.y')
@DocsEditable
num y;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGPathSegLinetoVerticalAbs')
class PathSegLinetoVerticalAbs extends PathSeg native "*SVGPathSegLinetoVerticalAbs" {
@DomName('SVGPathSegLinetoVerticalAbs.y')
@DocsEditable
num y;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGPathSegLinetoVerticalRel')
class PathSegLinetoVerticalRel extends PathSeg native "*SVGPathSegLinetoVerticalRel" {
@DomName('SVGPathSegLinetoVerticalRel.y')
@DocsEditable
num y;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGPathSegList')
class PathSegList implements JavaScriptIndexingBehavior, List<PathSeg> native "*SVGPathSegList" {
@DomName('SVGPathSegList.numberOfItems')
@DocsEditable
final int numberOfItems;
PathSeg operator[](int index) => JS("PathSeg", "#[#]", this, index);
void operator[]=(int index, PathSeg value) {
throw new UnsupportedError("Cannot assign element of immutable List.");
}
// -- start List<PathSeg> mixins.
// PathSeg is the element type.
// From Iterable<PathSeg>:
Iterator<PathSeg> get iterator {
// Note: NodeLists are not fixed size. And most probably length shouldn't
// be cached in both iterator _and_ forEach method. For now caching it
// for consistency.
return new FixedSizeListIterator<PathSeg>(this);
}
// SVG Collections expose numberOfItems rather than length.
int get length => numberOfItems;
dynamic reduce(dynamic initialValue, dynamic combine(dynamic, PathSeg)) {
return IterableMixinWorkaround.reduce(this, initialValue, combine);
}
bool contains(PathSeg element) => IterableMixinWorkaround.contains(this, element);
void forEach(void f(PathSeg element)) => IterableMixinWorkaround.forEach(this, f);
String join([String separator]) =>
IterableMixinWorkaround.joinList(this, separator);
Iterable map(f(PathSeg element)) =>
IterableMixinWorkaround.mapList(this, f);
Iterable<PathSeg> where(bool f(PathSeg element)) =>
IterableMixinWorkaround.where(this, f);
Iterable expand(Iterable f(PathSeg element)) =>
IterableMixinWorkaround.expand(this, f);
bool every(bool f(PathSeg element)) => IterableMixinWorkaround.every(this, f);
bool any(bool f(PathSeg element)) => IterableMixinWorkaround.any(this, f);
List<PathSeg> toList() => new List<PathSeg>.from(this);
Set<PathSeg> toSet() => new Set<PathSeg>.from(this);
bool get isEmpty => this.length == 0;
Iterable<PathSeg> take(int n) => IterableMixinWorkaround.takeList(this, n);
Iterable<PathSeg> takeWhile(bool test(PathSeg value)) {
return IterableMixinWorkaround.takeWhile(this, test);
}
Iterable<PathSeg> skip(int n) => IterableMixinWorkaround.skipList(this, n);
Iterable<PathSeg> skipWhile(bool test(PathSeg value)) {
return IterableMixinWorkaround.skipWhile(this, test);
}
PathSeg firstMatching(bool test(PathSeg value), { PathSeg orElse() }) {
return IterableMixinWorkaround.firstMatching(this, test, orElse);
}
PathSeg lastMatching(bool test(PathSeg value), {PathSeg orElse()}) {
return IterableMixinWorkaround.lastMatchingInList(this, test, orElse);
}
PathSeg singleMatching(bool test(PathSeg value)) {
return IterableMixinWorkaround.singleMatching(this, test);
}
PathSeg elementAt(int index) {
return this[index];
}
// From Collection<PathSeg>:
void add(PathSeg value) {
throw new UnsupportedError("Cannot add to immutable List.");
}
void addLast(PathSeg value) {
throw new UnsupportedError("Cannot add to immutable List.");
}
void addAll(Iterable<PathSeg> iterable) {
throw new UnsupportedError("Cannot add to immutable List.");
}
// From List<PathSeg>:
void set length(int value) {
throw new UnsupportedError("Cannot resize immutable List.");
}
// clear() defined by IDL.
Iterable<PathSeg> get reversed {
return IterableMixinWorkaround.reversedList(this);
}
void sort([int compare(PathSeg a, PathSeg b)]) {
throw new UnsupportedError("Cannot sort immutable List.");
}
int indexOf(PathSeg element, [int start = 0]) =>
Lists.indexOf(this, element, start, this.length);
int lastIndexOf(PathSeg element, [int start]) {
if (start == null) start = length - 1;
return Lists.lastIndexOf(this, element, start);
}
PathSeg get first {
if (this.length > 0) return this[0];
throw new StateError("No elements");
}
PathSeg get last {
if (this.length > 0) return this[this.length - 1];
throw new StateError("No elements");
}
PathSeg get single {
if (length == 1) return this[0];
if (length == 0) throw new StateError("No elements");
throw new StateError("More than one element");
}
PathSeg min([int compare(PathSeg a, PathSeg b)]) =>
IterableMixinWorkaround.min(this, compare);
PathSeg max([int compare(PathSeg a, PathSeg b)]) =>
IterableMixinWorkaround.max(this, compare);
PathSeg removeAt(int pos) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
PathSeg removeLast() {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void remove(Object object) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void removeAll(Iterable elements) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void retainAll(Iterable elements) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void removeMatching(bool test(PathSeg element)) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void retainMatching(bool test(PathSeg element)) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void setRange(int start, int rangeLength, List<PathSeg> from, [int startFrom]) {
throw new UnsupportedError("Cannot setRange on immutable List.");
}
void removeRange(int start, int rangeLength) {
throw new UnsupportedError("Cannot removeRange on immutable List.");
}
void insertRange(int start, int rangeLength, [PathSeg initialValue]) {
throw new UnsupportedError("Cannot insertRange on immutable List.");
}
List<PathSeg> getRange(int start, int rangeLength) =>
Lists.getRange(this, start, rangeLength, <PathSeg>[]);
// -- end List<PathSeg> mixins.
@DomName('SVGPathSegList.appendItem')
@DocsEditable
PathSeg appendItem(PathSeg newItem) native;
@DomName('SVGPathSegList.clear')
@DocsEditable
void clear() native;
@DomName('SVGPathSegList.getItem')
@DocsEditable
PathSeg getItem(int index) native;
@DomName('SVGPathSegList.initialize')
@DocsEditable
PathSeg initialize(PathSeg newItem) native;
@DomName('SVGPathSegList.insertItemBefore')
@DocsEditable
PathSeg insertItemBefore(PathSeg newItem, int index) native;
@DomName('SVGPathSegList.removeItem')
@DocsEditable
PathSeg removeItem(int index) native;
@DomName('SVGPathSegList.replaceItem')
@DocsEditable
PathSeg replaceItem(PathSeg newItem, int index) native;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGPathSegMovetoAbs')
class PathSegMovetoAbs extends PathSeg native "*SVGPathSegMovetoAbs" {
@DomName('SVGPathSegMovetoAbs.x')
@DocsEditable
num x;
@DomName('SVGPathSegMovetoAbs.y')
@DocsEditable
num y;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGPathSegMovetoRel')
class PathSegMovetoRel extends PathSeg native "*SVGPathSegMovetoRel" {
@DomName('SVGPathSegMovetoRel.x')
@DocsEditable
num x;
@DomName('SVGPathSegMovetoRel.y')
@DocsEditable
num y;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGPatternElement')
class PatternElement extends StyledElement implements FitToViewBox, UriReference, Tests, ExternalResourcesRequired, LangSpace native "*SVGPatternElement" {
@DomName('SVGPatternElement.SVGPatternElement')
@DocsEditable
factory PatternElement() => _SvgElementFactoryProvider.createSvgElement_tag("pattern");
@DomName('SVGPatternElement.height')
@DocsEditable
final AnimatedLength height;
@DomName('SVGPatternElement.patternContentUnits')
@DocsEditable
final AnimatedEnumeration patternContentUnits;
@DomName('SVGPatternElement.patternTransform')
@DocsEditable
final AnimatedTransformList patternTransform;
@DomName('SVGPatternElement.patternUnits')
@DocsEditable
final AnimatedEnumeration patternUnits;
@DomName('SVGPatternElement.width')
@DocsEditable
final AnimatedLength width;
@DomName('SVGPatternElement.x')
@DocsEditable
final AnimatedLength x;
@DomName('SVGPatternElement.y')
@DocsEditable
final AnimatedLength y;
// From SVGExternalResourcesRequired
@DomName('SVGPatternElement.externalResourcesRequired')
@DocsEditable
final AnimatedBoolean externalResourcesRequired;
// From SVGFitToViewBox
@DomName('SVGPatternElement.preserveAspectRatio')
@DocsEditable
final AnimatedPreserveAspectRatio preserveAspectRatio;
@DomName('SVGPatternElement.viewBox')
@DocsEditable
final AnimatedRect viewBox;
// From SVGLangSpace
@DomName('SVGPatternElement.xmllang')
@DocsEditable
String xmllang;
@DomName('SVGPatternElement.xmlspace')
@DocsEditable
String xmlspace;
// From SVGTests
@DomName('SVGPatternElement.requiredExtensions')
@DocsEditable
final StringList requiredExtensions;
@DomName('SVGPatternElement.requiredFeatures')
@DocsEditable
final StringList requiredFeatures;
@DomName('SVGPatternElement.systemLanguage')
@DocsEditable
final StringList systemLanguage;
@DomName('SVGPatternElement.hasExtension')
@DocsEditable
bool hasExtension(String extension) native;
// From SVGURIReference
@DomName('SVGPatternElement.href')
@DocsEditable
final AnimatedString href;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGPoint')
class Point native "*SVGPoint" {
@DomName('SVGPoint.x')
@DocsEditable
num x;
@DomName('SVGPoint.y')
@DocsEditable
num y;
@DomName('SVGPoint.matrixTransform')
@DocsEditable
Point matrixTransform(Matrix matrix) native;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGPointList')
class PointList native "*SVGPointList" {
@DomName('SVGPointList.numberOfItems')
@DocsEditable
final int numberOfItems;
@DomName('SVGPointList.appendItem')
@DocsEditable
Point appendItem(Point item) native;
@DomName('SVGPointList.clear')
@DocsEditable
void clear() native;
@DomName('SVGPointList.getItem')
@DocsEditable
Point getItem(int index) native;
@DomName('SVGPointList.initialize')
@DocsEditable
Point initialize(Point item) native;
@DomName('SVGPointList.insertItemBefore')
@DocsEditable
Point insertItemBefore(Point item, int index) native;
@DomName('SVGPointList.removeItem')
@DocsEditable
Point removeItem(int index) native;
@DomName('SVGPointList.replaceItem')
@DocsEditable
Point replaceItem(Point item, int index) native;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGPolygonElement')
class PolygonElement extends StyledElement implements Transformable, Tests, ExternalResourcesRequired, LangSpace native "*SVGPolygonElement" {
@DomName('SVGPolygonElement.SVGPolygonElement')
@DocsEditable
factory PolygonElement() => _SvgElementFactoryProvider.createSvgElement_tag("polygon");
@DomName('SVGPolygonElement.animatedPoints')
@DocsEditable
final PointList animatedPoints;
@DomName('SVGPolygonElement.points')
@DocsEditable
final PointList points;
// From SVGExternalResourcesRequired
@DomName('SVGPolygonElement.externalResourcesRequired')
@DocsEditable
final AnimatedBoolean externalResourcesRequired;
// From SVGLangSpace
@DomName('SVGPolygonElement.xmllang')
@DocsEditable
String xmllang;
@DomName('SVGPolygonElement.xmlspace')
@DocsEditable
String xmlspace;
// From SVGLocatable
@DomName('SVGPolygonElement.farthestViewportElement')
@DocsEditable
final SvgElement farthestViewportElement;
@DomName('SVGPolygonElement.nearestViewportElement')
@DocsEditable
final SvgElement nearestViewportElement;
@DomName('SVGPolygonElement.getBBox')
@DocsEditable
Rect getBBox() native;
@JSName('getCTM')
@DomName('SVGPolygonElement.getCTM')
@DocsEditable
Matrix getCtm() native;
@JSName('getScreenCTM')
@DomName('SVGPolygonElement.getScreenCTM')
@DocsEditable
Matrix getScreenCtm() native;
@DomName('SVGPolygonElement.getTransformToElement')
@DocsEditable
Matrix getTransformToElement(SvgElement element) native;
// From SVGTests
@DomName('SVGPolygonElement.requiredExtensions')
@DocsEditable
final StringList requiredExtensions;
@DomName('SVGPolygonElement.requiredFeatures')
@DocsEditable
final StringList requiredFeatures;
@DomName('SVGPolygonElement.systemLanguage')
@DocsEditable
final StringList systemLanguage;
@DomName('SVGPolygonElement.hasExtension')
@DocsEditable
bool hasExtension(String extension) native;
// From SVGTransformable
@DomName('SVGPolygonElement.transform')
@DocsEditable
final AnimatedTransformList transform;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGPolylineElement')
class PolylineElement extends StyledElement implements Transformable, Tests, ExternalResourcesRequired, LangSpace native "*SVGPolylineElement" {
@DomName('SVGPolylineElement.SVGPolylineElement')
@DocsEditable
factory PolylineElement() => _SvgElementFactoryProvider.createSvgElement_tag("polyline");
@DomName('SVGPolylineElement.animatedPoints')
@DocsEditable
final PointList animatedPoints;
@DomName('SVGPolylineElement.points')
@DocsEditable
final PointList points;
// From SVGExternalResourcesRequired
@DomName('SVGPolylineElement.externalResourcesRequired')
@DocsEditable
final AnimatedBoolean externalResourcesRequired;
// From SVGLangSpace
@DomName('SVGPolylineElement.xmllang')
@DocsEditable
String xmllang;
@DomName('SVGPolylineElement.xmlspace')
@DocsEditable
String xmlspace;
// From SVGLocatable
@DomName('SVGPolylineElement.farthestViewportElement')
@DocsEditable
final SvgElement farthestViewportElement;
@DomName('SVGPolylineElement.nearestViewportElement')
@DocsEditable
final SvgElement nearestViewportElement;
@DomName('SVGPolylineElement.getBBox')
@DocsEditable
Rect getBBox() native;
@JSName('getCTM')
@DomName('SVGPolylineElement.getCTM')
@DocsEditable
Matrix getCtm() native;
@JSName('getScreenCTM')
@DomName('SVGPolylineElement.getScreenCTM')
@DocsEditable
Matrix getScreenCtm() native;
@DomName('SVGPolylineElement.getTransformToElement')
@DocsEditable
Matrix getTransformToElement(SvgElement element) native;
// From SVGTests
@DomName('SVGPolylineElement.requiredExtensions')
@DocsEditable
final StringList requiredExtensions;
@DomName('SVGPolylineElement.requiredFeatures')
@DocsEditable
final StringList requiredFeatures;
@DomName('SVGPolylineElement.systemLanguage')
@DocsEditable
final StringList systemLanguage;
@DomName('SVGPolylineElement.hasExtension')
@DocsEditable
bool hasExtension(String extension) native;
// From SVGTransformable
@DomName('SVGPolylineElement.transform')
@DocsEditable
final AnimatedTransformList transform;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGPreserveAspectRatio')
class PreserveAspectRatio native "*SVGPreserveAspectRatio" {
static const int SVG_MEETORSLICE_MEET = 1;
static const int SVG_MEETORSLICE_SLICE = 2;
static const int SVG_MEETORSLICE_UNKNOWN = 0;
static const int SVG_PRESERVEASPECTRATIO_NONE = 1;
static const int SVG_PRESERVEASPECTRATIO_UNKNOWN = 0;
static const int SVG_PRESERVEASPECTRATIO_XMAXYMAX = 10;
static const int SVG_PRESERVEASPECTRATIO_XMAXYMID = 7;
static const int SVG_PRESERVEASPECTRATIO_XMAXYMIN = 4;
static const int SVG_PRESERVEASPECTRATIO_XMIDYMAX = 9;
static const int SVG_PRESERVEASPECTRATIO_XMIDYMID = 6;
static const int SVG_PRESERVEASPECTRATIO_XMIDYMIN = 3;
static const int SVG_PRESERVEASPECTRATIO_XMINYMAX = 8;
static const int SVG_PRESERVEASPECTRATIO_XMINYMID = 5;
static const int SVG_PRESERVEASPECTRATIO_XMINYMIN = 2;
@DomName('SVGPreserveAspectRatio.align')
@DocsEditable
int align;
@DomName('SVGPreserveAspectRatio.meetOrSlice')
@DocsEditable
int meetOrSlice;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGRadialGradientElement')
class RadialGradientElement extends _SVGGradientElement native "*SVGRadialGradientElement" {
@DomName('SVGRadialGradientElement.SVGRadialGradientElement')
@DocsEditable
factory RadialGradientElement() => _SvgElementFactoryProvider.createSvgElement_tag("radialGradient");
@DomName('SVGRadialGradientElement.cx')
@DocsEditable
final AnimatedLength cx;
@DomName('SVGRadialGradientElement.cy')
@DocsEditable
final AnimatedLength cy;
@DomName('SVGRadialGradientElement.fr')
@DocsEditable
final AnimatedLength fr;
@DomName('SVGRadialGradientElement.fx')
@DocsEditable
final AnimatedLength fx;
@DomName('SVGRadialGradientElement.fy')
@DocsEditable
final AnimatedLength fy;
@DomName('SVGRadialGradientElement.r')
@DocsEditable
final AnimatedLength r;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGRect')
class Rect native "*SVGRect" {
@DomName('SVGRect.height')
@DocsEditable
num height;
@DomName('SVGRect.width')
@DocsEditable
num width;
@DomName('SVGRect.x')
@DocsEditable
num x;
@DomName('SVGRect.y')
@DocsEditable
num y;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGRectElement')
class RectElement extends StyledElement implements Transformable, Tests, ExternalResourcesRequired, LangSpace native "*SVGRectElement" {
@DomName('SVGRectElement.SVGRectElement')
@DocsEditable
factory RectElement() => _SvgElementFactoryProvider.createSvgElement_tag("rect");
@DomName('SVGRectElement.height')
@DocsEditable
final AnimatedLength height;
@DomName('SVGRectElement.rx')
@DocsEditable
final AnimatedLength rx;
@DomName('SVGRectElement.ry')
@DocsEditable
final AnimatedLength ry;
@DomName('SVGRectElement.width')
@DocsEditable
final AnimatedLength width;
@DomName('SVGRectElement.x')
@DocsEditable
final AnimatedLength x;
@DomName('SVGRectElement.y')
@DocsEditable
final AnimatedLength y;
// From SVGExternalResourcesRequired
@DomName('SVGRectElement.externalResourcesRequired')
@DocsEditable
final AnimatedBoolean externalResourcesRequired;
// From SVGLangSpace
@DomName('SVGRectElement.xmllang')
@DocsEditable
String xmllang;
@DomName('SVGRectElement.xmlspace')
@DocsEditable
String xmlspace;
// From SVGLocatable
@DomName('SVGRectElement.farthestViewportElement')
@DocsEditable
final SvgElement farthestViewportElement;
@DomName('SVGRectElement.nearestViewportElement')
@DocsEditable
final SvgElement nearestViewportElement;
@DomName('SVGRectElement.getBBox')
@DocsEditable
Rect getBBox() native;
@JSName('getCTM')
@DomName('SVGRectElement.getCTM')
@DocsEditable
Matrix getCtm() native;
@JSName('getScreenCTM')
@DomName('SVGRectElement.getScreenCTM')
@DocsEditable
Matrix getScreenCtm() native;
@DomName('SVGRectElement.getTransformToElement')
@DocsEditable
Matrix getTransformToElement(SvgElement element) native;
// From SVGTests
@DomName('SVGRectElement.requiredExtensions')
@DocsEditable
final StringList requiredExtensions;
@DomName('SVGRectElement.requiredFeatures')
@DocsEditable
final StringList requiredFeatures;
@DomName('SVGRectElement.systemLanguage')
@DocsEditable
final StringList systemLanguage;
@DomName('SVGRectElement.hasExtension')
@DocsEditable
bool hasExtension(String extension) native;
// From SVGTransformable
@DomName('SVGRectElement.transform')
@DocsEditable
final AnimatedTransformList transform;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGRenderingIntent')
class RenderingIntent native "*SVGRenderingIntent" {
static const int RENDERING_INTENT_ABSOLUTE_COLORIMETRIC = 5;
static const int RENDERING_INTENT_AUTO = 1;
static const int RENDERING_INTENT_PERCEPTUAL = 2;
static const int RENDERING_INTENT_RELATIVE_COLORIMETRIC = 3;
static const int RENDERING_INTENT_SATURATION = 4;
static const int RENDERING_INTENT_UNKNOWN = 0;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGScriptElement')
class ScriptElement extends SvgElement implements UriReference, ExternalResourcesRequired native "*SVGScriptElement" {
@DomName('SVGScriptElement.SVGScriptElement')
@DocsEditable
factory ScriptElement() => _SvgElementFactoryProvider.createSvgElement_tag("script");
@DomName('SVGScriptElement.type')
@DocsEditable
String type;
// From SVGExternalResourcesRequired
@DomName('SVGScriptElement.externalResourcesRequired')
@DocsEditable
final AnimatedBoolean externalResourcesRequired;
// From SVGURIReference
@DomName('SVGScriptElement.href')
@DocsEditable
final AnimatedString href;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGSetElement')
@SupportedBrowser(SupportedBrowser.CHROME)
@SupportedBrowser(SupportedBrowser.FIREFOX)
@SupportedBrowser(SupportedBrowser.SAFARI)
class SetElement extends AnimationElement native "*SVGSetElement" {
@DomName('SVGSetElement.SVGSetElement')
@DocsEditable
factory SetElement() => _SvgElementFactoryProvider.createSvgElement_tag("set");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('set') && (new SvgElement.tag('set') is SetElement);
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGStopElement')
class StopElement extends StyledElement native "*SVGStopElement" {
@DomName('SVGStopElement.SVGStopElement')
@DocsEditable
factory StopElement() => _SvgElementFactoryProvider.createSvgElement_tag("stop");
@DomName('SVGStopElement.offset')
@DocsEditable
final AnimatedNumber offset;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGStringList')
class StringList implements JavaScriptIndexingBehavior, List<String> native "*SVGStringList" {
@DomName('SVGStringList.numberOfItems')
@DocsEditable
final int numberOfItems;
String operator[](int index) => JS("String", "#[#]", this, index);
void operator[]=(int index, String value) {
throw new UnsupportedError("Cannot assign element of immutable List.");
}
// -- start List<String> mixins.
// String is the element type.
// From Iterable<String>:
Iterator<String> get iterator {
// Note: NodeLists are not fixed size. And most probably length shouldn't
// be cached in both iterator _and_ forEach method. For now caching it
// for consistency.
return new FixedSizeListIterator<String>(this);
}
// SVG Collections expose numberOfItems rather than length.
int get length => numberOfItems;
dynamic reduce(dynamic initialValue, dynamic combine(dynamic, String)) {
return IterableMixinWorkaround.reduce(this, initialValue, combine);
}
bool contains(String element) => IterableMixinWorkaround.contains(this, element);
void forEach(void f(String element)) => IterableMixinWorkaround.forEach(this, f);
String join([String separator]) =>
IterableMixinWorkaround.joinList(this, separator);
Iterable map(f(String element)) =>
IterableMixinWorkaround.mapList(this, f);
Iterable<String> where(bool f(String element)) =>
IterableMixinWorkaround.where(this, f);
Iterable expand(Iterable f(String element)) =>
IterableMixinWorkaround.expand(this, f);
bool every(bool f(String element)) => IterableMixinWorkaround.every(this, f);
bool any(bool f(String element)) => IterableMixinWorkaround.any(this, f);
List<String> toList() => new List<String>.from(this);
Set<String> toSet() => new Set<String>.from(this);
bool get isEmpty => this.length == 0;
Iterable<String> take(int n) => IterableMixinWorkaround.takeList(this, n);
Iterable<String> takeWhile(bool test(String value)) {
return IterableMixinWorkaround.takeWhile(this, test);
}
Iterable<String> skip(int n) => IterableMixinWorkaround.skipList(this, n);
Iterable<String> skipWhile(bool test(String value)) {
return IterableMixinWorkaround.skipWhile(this, test);
}
String firstMatching(bool test(String value), { String orElse() }) {
return IterableMixinWorkaround.firstMatching(this, test, orElse);
}
String lastMatching(bool test(String value), {String orElse()}) {
return IterableMixinWorkaround.lastMatchingInList(this, test, orElse);
}
String singleMatching(bool test(String value)) {
return IterableMixinWorkaround.singleMatching(this, test);
}
String elementAt(int index) {
return this[index];
}
// From Collection<String>:
void add(String value) {
throw new UnsupportedError("Cannot add to immutable List.");
}
void addLast(String value) {
throw new UnsupportedError("Cannot add to immutable List.");
}
void addAll(Iterable<String> iterable) {
throw new UnsupportedError("Cannot add to immutable List.");
}
// From List<String>:
void set length(int value) {
throw new UnsupportedError("Cannot resize immutable List.");
}
// clear() defined by IDL.
Iterable<String> get reversed {
return IterableMixinWorkaround.reversedList(this);
}
void sort([int compare(String a, String b)]) {
throw new UnsupportedError("Cannot sort immutable List.");
}
int indexOf(String element, [int start = 0]) =>
Lists.indexOf(this, element, start, this.length);
int lastIndexOf(String element, [int start]) {
if (start == null) start = length - 1;
return Lists.lastIndexOf(this, element, start);
}
String get first {
if (this.length > 0) return this[0];
throw new StateError("No elements");
}
String get last {
if (this.length > 0) return this[this.length - 1];
throw new StateError("No elements");
}
String get single {
if (length == 1) return this[0];
if (length == 0) throw new StateError("No elements");
throw new StateError("More than one element");
}
String min([int compare(String a, String b)]) =>
IterableMixinWorkaround.min(this, compare);
String max([int compare(String a, String b)]) =>
IterableMixinWorkaround.max(this, compare);
String removeAt(int pos) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
String removeLast() {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void remove(Object object) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void removeAll(Iterable elements) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void retainAll(Iterable elements) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void removeMatching(bool test(String element)) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void retainMatching(bool test(String element)) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void setRange(int start, int rangeLength, List<String> from, [int startFrom]) {
throw new UnsupportedError("Cannot setRange on immutable List.");
}
void removeRange(int start, int rangeLength) {
throw new UnsupportedError("Cannot removeRange on immutable List.");
}
void insertRange(int start, int rangeLength, [String initialValue]) {
throw new UnsupportedError("Cannot insertRange on immutable List.");
}
List<String> getRange(int start, int rangeLength) =>
Lists.getRange(this, start, rangeLength, <String>[]);
// -- end List<String> mixins.
@DomName('SVGStringList.appendItem')
@DocsEditable
String appendItem(String item) native;
@DomName('SVGStringList.clear')
@DocsEditable
void clear() native;
@DomName('SVGStringList.getItem')
@DocsEditable
String getItem(int index) native;
@DomName('SVGStringList.initialize')
@DocsEditable
String initialize(String item) native;
@DomName('SVGStringList.insertItemBefore')
@DocsEditable
String insertItemBefore(String item, int index) native;
@DomName('SVGStringList.removeItem')
@DocsEditable
String removeItem(int index) native;
@DomName('SVGStringList.replaceItem')
@DocsEditable
String replaceItem(String item, int index) native;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGStyleElement')
class StyleElement extends SvgElement implements LangSpace native "*SVGStyleElement" {
@DomName('SVGStyleElement.SVGStyleElement')
@DocsEditable
factory StyleElement() => _SvgElementFactoryProvider.createSvgElement_tag("style");
@DomName('SVGStyleElement.disabled')
@DocsEditable
bool disabled;
@DomName('SVGStyleElement.media')
@DocsEditable
String media;
// Shadowing definition.
String get title => JS("String", "#.title", this);
void set title(String value) {
JS("void", "#.title = #", this, value);
}
@DomName('SVGStyleElement.type')
@DocsEditable
String type;
// From SVGLangSpace
@DomName('SVGStyleElement.xmllang')
@DocsEditable
String xmllang;
@DomName('SVGStyleElement.xmlspace')
@DocsEditable
String xmlspace;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGStyledElement')
class StyledElement extends SvgElement native "*SVGStyledElement" {
// Shadowing definition.
AnimatedString get $dom_svgClassName => JS("AnimatedString", "#.className", this);
// Use implementation from Element.
// final CssStyleDeclaration style;
@DomName('SVGStyledElement.getPresentationAttribute')
@DocsEditable
CssValue getPresentationAttribute(String name) native;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGDocument')
class SvgDocument extends Document native "*SVGDocument" {
@DomName('SVGDocument.rootElement')
@DocsEditable
final SvgSvgElement rootElement;
@JSName('createEvent')
@DomName('SVGDocument.createEvent')
@DocsEditable
Event $dom_createEvent(String eventType) native;
}
// Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
class _AttributeClassSet extends CssClassSet {
final Element _element;
_AttributeClassSet(this._element);
Set<String> readClasses() {
var classname = _element.attributes['class'];
Set<String> s = new Set<String>();
if (classname == null) {
return s;
}
for (String name in classname.split(' ')) {
String trimmed = name.trim();
if (!trimmed.isEmpty) {
s.add(trimmed);
}
}
return s;
}
void writeClasses(Set s) {
List list = new List.from(s);
_element.attributes['class'] = Strings.join(list, ' ');
}
}
@DomName('SVGElement')
class SvgElement extends Element native "*SVGElement" {
factory SvgElement.tag(String tag) =>
_SvgElementFactoryProvider.createSvgElement_tag(tag);
factory SvgElement.svg(String svg) =>
_SvgElementFactoryProvider.createSvgElement_svg(svg);
_AttributeClassSet _cssClassSet;
CssClassSet get classes {
if (_cssClassSet == null) {
_cssClassSet = new _AttributeClassSet(this);
}
return _cssClassSet;
}
List<Element> get children => new FilteredElementList(this);
void set children(List<Element> value) {
final children = this.children;
children.clear();
children.addAll(value);
}
String get outerHtml {
final container = new Element.tag("div");
final SvgElement cloned = this.clone(true);
container.children.add(cloned);
return container.innerHtml;
}
String get innerHtml {
final container = new Element.tag("div");
final SvgElement cloned = this.clone(true);
container.children.addAll(cloned.children);
return container.innerHtml;
}
void set innerHtml(String svg) {
final container = new Element.tag("div");
// Wrap the SVG string in <svg> so that SvgElements are created, rather than
// HTMLElements.
container.innerHtml = '<svg version="1.1">$svg</svg>';
this.children = container.children[0].children;
}
// Unsupported methods inherited from Element.
@DomName('Element.insertAdjacentText')
void insertAdjacentText(String where, String text) {
throw new UnsupportedError("Cannot invoke insertAdjacentText on SVG.");
}
@DomName('Element.insertAdjacentHTML')
void insertAdjacentHtml(String where, String text) {
throw new UnsupportedError("Cannot invoke insertAdjacentHtml on SVG.");
}
@DomName('Element.insertAdjacentHTML')
Element insertAdjacentElement(String where, Element element) {
throw new UnsupportedError("Cannot invoke insertAdjacentElement on SVG.");
}
HtmlCollection get $dom_children {
throw new UnsupportedError("Cannot get dom_children on SVG.");
}
bool get isContentEditable => false;
void click() {
throw new UnsupportedError("Cannot invoke click SVG.");
}
/**
* Checks to see if the SVG element type is supported by the current platform.
*
* The tag should be a valid SVG element tag name.
*/
static bool isTagSupported(String tag) {
var e = new SvgElement.tag(tag);
return e is SvgElement && !(e is UnknownElement);
}
// Shadowing definition.
String get id => JS("String", "#.id", this);
void set id(String value) {
JS("void", "#.id = #", this, value);
}
@JSName('ownerSVGElement')
@DomName('SVGElement.ownerSVGElement')
@DocsEditable
final SvgSvgElement ownerSvgElement;
@DomName('SVGElement.viewportElement')
@DocsEditable
final SvgElement viewportElement;
@DomName('SVGElement.xmlbase')
@DocsEditable
String xmlbase;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGException')
class SvgException native "*SVGException" {
static const int SVG_INVALID_VALUE_ERR = 1;
static const int SVG_MATRIX_NOT_INVERTABLE = 2;
static const int SVG_WRONG_TYPE_ERR = 0;
@DomName('SVGException.code')
@DocsEditable
final int code;
@DomName('SVGException.message')
@DocsEditable
final String message;
@DomName('SVGException.name')
@DocsEditable
final String name;
@DomName('SVGException.toString')
@DocsEditable
String toString() native;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DomName('SVGSVGElement')
class SvgSvgElement extends StyledElement implements FitToViewBox, Transformable, Tests, ExternalResourcesRequired, ZoomAndPan, LangSpace native "*SVGSVGElement" {
factory SvgSvgElement() => _SvgSvgElementFactoryProvider.createSvgSvgElement();
@DomName('SVGSVGElement.contentScriptType')
@DocsEditable
String contentScriptType;
@DomName('SVGSVGElement.contentStyleType')
@DocsEditable
String contentStyleType;
@DomName('SVGSVGElement.currentScale')
@DocsEditable
num currentScale;
@DomName('SVGSVGElement.currentTranslate')
@DocsEditable
final Point currentTranslate;
@DomName('SVGSVGElement.currentView')
@DocsEditable
final ViewSpec currentView;
@DomName('SVGSVGElement.height')
@DocsEditable
final AnimatedLength height;
@DomName('SVGSVGElement.pixelUnitToMillimeterX')
@DocsEditable
final num pixelUnitToMillimeterX;
@DomName('SVGSVGElement.pixelUnitToMillimeterY')
@DocsEditable
final num pixelUnitToMillimeterY;
@DomName('SVGSVGElement.screenPixelToMillimeterX')
@DocsEditable
final num screenPixelToMillimeterX;
@DomName('SVGSVGElement.screenPixelToMillimeterY')
@DocsEditable
final num screenPixelToMillimeterY;
@DomName('SVGSVGElement.useCurrentView')
@DocsEditable
final bool useCurrentView;
@DomName('SVGSVGElement.viewport')
@DocsEditable
final Rect viewport;
@DomName('SVGSVGElement.width')
@DocsEditable
final AnimatedLength width;
@DomName('SVGSVGElement.x')
@DocsEditable
final AnimatedLength x;
@DomName('SVGSVGElement.y')
@DocsEditable
final AnimatedLength y;
@DomName('SVGSVGElement.animationsPaused')
@DocsEditable
bool animationsPaused() native;
@DomName('SVGSVGElement.checkEnclosure')
@DocsEditable
bool checkEnclosure(SvgElement element, Rect rect) native;
@DomName('SVGSVGElement.checkIntersection')
@DocsEditable
bool checkIntersection(SvgElement element, Rect rect) native;
@JSName('createSVGAngle')
@DomName('SVGSVGElement.createSVGAngle')
@DocsEditable
Angle createSvgAngle() native;
@JSName('createSVGLength')
@DomName('SVGSVGElement.createSVGLength')
@DocsEditable
Length createSvgLength() native;
@JSName('createSVGMatrix')
@DomName('SVGSVGElement.createSVGMatrix')
@DocsEditable
Matrix createSvgMatrix() native;
@JSName('createSVGNumber')
@DomName('SVGSVGElement.createSVGNumber')
@DocsEditable
Number createSvgNumber() native;
@JSName('createSVGPoint')
@DomName('SVGSVGElement.createSVGPoint')
@DocsEditable
Point createSvgPoint() native;
@JSName('createSVGRect')
@DomName('SVGSVGElement.createSVGRect')
@DocsEditable
Rect createSvgRect() native;
@JSName('createSVGTransform')
@DomName('SVGSVGElement.createSVGTransform')
@DocsEditable
Transform createSvgTransform() native;
@JSName('createSVGTransformFromMatrix')
@DomName('SVGSVGElement.createSVGTransformFromMatrix')
@DocsEditable
Transform createSvgTransformFromMatrix(Matrix matrix) native;
@DomName('SVGSVGElement.deselectAll')
@DocsEditable
void deselectAll() native;
@DomName('SVGSVGElement.forceRedraw')
@DocsEditable
void forceRedraw() native;
@DomName('SVGSVGElement.getCurrentTime')
@DocsEditable
num getCurrentTime() native;
@DomName('SVGSVGElement.getElementById')
@DocsEditable
Element getElementById(String elementId) native;
@DomName('SVGSVGElement.getEnclosureList')
@DocsEditable
@Returns('NodeList')
@Creates('NodeList')
List<Node> getEnclosureList(Rect rect, SvgElement referenceElement) native;
@DomName('SVGSVGElement.getIntersectionList')
@DocsEditable
@Returns('NodeList')
@Creates('NodeList')
List<Node> getIntersectionList(Rect rect, SvgElement referenceElement) native;
@DomName('SVGSVGElement.pauseAnimations')
@DocsEditable
void pauseAnimations() native;
@DomName('SVGSVGElement.setCurrentTime')
@DocsEditable
void setCurrentTime(num seconds) native;
@DomName('SVGSVGElement.suspendRedraw')
@DocsEditable
int suspendRedraw(int maxWaitMilliseconds) native;
@DomName('SVGSVGElement.unpauseAnimations')
@DocsEditable
void unpauseAnimations() native;
@DomName('SVGSVGElement.unsuspendRedraw')
@DocsEditable
void unsuspendRedraw(int suspendHandleId) native;
@DomName('SVGSVGElement.unsuspendRedrawAll')
@DocsEditable
void unsuspendRedrawAll() native;
// From SVGExternalResourcesRequired
@DomName('SVGSVGElement.externalResourcesRequired')
@DocsEditable
final AnimatedBoolean externalResourcesRequired;
// From SVGFitToViewBox
@DomName('SVGSVGElement.preserveAspectRatio')
@DocsEditable
final AnimatedPreserveAspectRatio preserveAspectRatio;
@DomName('SVGSVGElement.viewBox')
@DocsEditable
final AnimatedRect viewBox;
// From SVGLangSpace
@DomName('SVGSVGElement.xmllang')
@DocsEditable
String xmllang;
@DomName('SVGSVGElement.xmlspace')
@DocsEditable
String xmlspace;
// From SVGLocatable
@DomName('SVGSVGElement.farthestViewportElement')
@DocsEditable
final SvgElement farthestViewportElement;
@DomName('SVGSVGElement.nearestViewportElement')
@DocsEditable
final SvgElement nearestViewportElement;
@DomName('SVGSVGElement.getBBox')
@DocsEditable
Rect getBBox() native;
@JSName('getCTM')
@DomName('SVGSVGElement.getCTM')
@DocsEditable
Matrix getCtm() native;
@JSName('getScreenCTM')
@DomName('SVGSVGElement.getScreenCTM')
@DocsEditable
Matrix getScreenCtm() native;
@DomName('SVGSVGElement.getTransformToElement')
@DocsEditable
Matrix getTransformToElement(SvgElement element) native;
// From SVGTests
@DomName('SVGSVGElement.requiredExtensions')
@DocsEditable
final StringList requiredExtensions;
@DomName('SVGSVGElement.requiredFeatures')
@DocsEditable
final StringList requiredFeatures;
@DomName('SVGSVGElement.systemLanguage')
@DocsEditable
final StringList systemLanguage;
@DomName('SVGSVGElement.hasExtension')
@DocsEditable
bool hasExtension(String extension) native;
// From SVGTransformable
@DomName('SVGSVGElement.transform')
@DocsEditable
final AnimatedTransformList transform;
// From SVGZoomAndPan
@DomName('SVGSVGElement.zoomAndPan')
@DocsEditable
int zoomAndPan;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGSwitchElement')
class SwitchElement extends StyledElement implements Transformable, Tests, ExternalResourcesRequired, LangSpace native "*SVGSwitchElement" {
@DomName('SVGSwitchElement.SVGSwitchElement')
@DocsEditable
factory SwitchElement() => _SvgElementFactoryProvider.createSvgElement_tag("switch");
// From SVGExternalResourcesRequired
@DomName('SVGSwitchElement.externalResourcesRequired')
@DocsEditable
final AnimatedBoolean externalResourcesRequired;
// From SVGLangSpace
@DomName('SVGSwitchElement.xmllang')
@DocsEditable
String xmllang;
@DomName('SVGSwitchElement.xmlspace')
@DocsEditable
String xmlspace;
// From SVGLocatable
@DomName('SVGSwitchElement.farthestViewportElement')
@DocsEditable
final SvgElement farthestViewportElement;
@DomName('SVGSwitchElement.nearestViewportElement')
@DocsEditable
final SvgElement nearestViewportElement;
@DomName('SVGSwitchElement.getBBox')
@DocsEditable
Rect getBBox() native;
@JSName('getCTM')
@DomName('SVGSwitchElement.getCTM')
@DocsEditable
Matrix getCtm() native;
@JSName('getScreenCTM')
@DomName('SVGSwitchElement.getScreenCTM')
@DocsEditable
Matrix getScreenCtm() native;
@DomName('SVGSwitchElement.getTransformToElement')
@DocsEditable
Matrix getTransformToElement(SvgElement element) native;
// From SVGTests
@DomName('SVGSwitchElement.requiredExtensions')
@DocsEditable
final StringList requiredExtensions;
@DomName('SVGSwitchElement.requiredFeatures')
@DocsEditable
final StringList requiredFeatures;
@DomName('SVGSwitchElement.systemLanguage')
@DocsEditable
final StringList systemLanguage;
@DomName('SVGSwitchElement.hasExtension')
@DocsEditable
bool hasExtension(String extension) native;
// From SVGTransformable
@DomName('SVGSwitchElement.transform')
@DocsEditable
final AnimatedTransformList transform;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGSymbolElement')
class SymbolElement extends StyledElement implements FitToViewBox, ExternalResourcesRequired, LangSpace native "*SVGSymbolElement" {
@DomName('SVGSymbolElement.SVGSymbolElement')
@DocsEditable
factory SymbolElement() => _SvgElementFactoryProvider.createSvgElement_tag("symbol");
// From SVGExternalResourcesRequired
@DomName('SVGSymbolElement.externalResourcesRequired')
@DocsEditable
final AnimatedBoolean externalResourcesRequired;
// From SVGFitToViewBox
@DomName('SVGSymbolElement.preserveAspectRatio')
@DocsEditable
final AnimatedPreserveAspectRatio preserveAspectRatio;
@DomName('SVGSymbolElement.viewBox')
@DocsEditable
final AnimatedRect viewBox;
// From SVGLangSpace
@DomName('SVGSymbolElement.xmllang')
@DocsEditable
String xmllang;
@DomName('SVGSymbolElement.xmlspace')
@DocsEditable
String xmlspace;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGTSpanElement')
class TSpanElement extends TextPositioningElement native "*SVGTSpanElement" {
@DomName('SVGTSpanElement.SVGTSpanElement')
@DocsEditable
factory TSpanElement() => _SvgElementFactoryProvider.createSvgElement_tag("tspan");
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DomName('SVGTests')
abstract class Tests {
StringList requiredExtensions;
StringList requiredFeatures;
StringList systemLanguage;
bool hasExtension(String extension);
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGTextContentElement')
class TextContentElement extends StyledElement implements Tests, ExternalResourcesRequired, LangSpace native "*SVGTextContentElement" {
static const int LENGTHADJUST_SPACING = 1;
static const int LENGTHADJUST_SPACINGANDGLYPHS = 2;
static const int LENGTHADJUST_UNKNOWN = 0;
@DomName('SVGTextContentElement.lengthAdjust')
@DocsEditable
final AnimatedEnumeration lengthAdjust;
@DomName('SVGTextContentElement.textLength')
@DocsEditable
final AnimatedLength textLength;
@DomName('SVGTextContentElement.getCharNumAtPosition')
@DocsEditable
int getCharNumAtPosition(Point point) native;
@DomName('SVGTextContentElement.getComputedTextLength')
@DocsEditable
num getComputedTextLength() native;
@DomName('SVGTextContentElement.getEndPositionOfChar')
@DocsEditable
Point getEndPositionOfChar(int offset) native;
@DomName('SVGTextContentElement.getExtentOfChar')
@DocsEditable
Rect getExtentOfChar(int offset) native;
@DomName('SVGTextContentElement.getNumberOfChars')
@DocsEditable
int getNumberOfChars() native;
@DomName('SVGTextContentElement.getRotationOfChar')
@DocsEditable
num getRotationOfChar(int offset) native;
@DomName('SVGTextContentElement.getStartPositionOfChar')
@DocsEditable
Point getStartPositionOfChar(int offset) native;
@DomName('SVGTextContentElement.getSubStringLength')
@DocsEditable
num getSubStringLength(int offset, int length) native;
@DomName('SVGTextContentElement.selectSubString')
@DocsEditable
void selectSubString(int offset, int length) native;
// From SVGExternalResourcesRequired
@DomName('SVGTextContentElement.externalResourcesRequired')
@DocsEditable
final AnimatedBoolean externalResourcesRequired;
// From SVGLangSpace
@DomName('SVGTextContentElement.xmllang')
@DocsEditable
String xmllang;
@DomName('SVGTextContentElement.xmlspace')
@DocsEditable
String xmlspace;
// From SVGTests
@DomName('SVGTextContentElement.requiredExtensions')
@DocsEditable
final StringList requiredExtensions;
@DomName('SVGTextContentElement.requiredFeatures')
@DocsEditable
final StringList requiredFeatures;
@DomName('SVGTextContentElement.systemLanguage')
@DocsEditable
final StringList systemLanguage;
@DomName('SVGTextContentElement.hasExtension')
@DocsEditable
bool hasExtension(String extension) native;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGTextElement')
class TextElement extends TextPositioningElement implements Transformable native "*SVGTextElement" {
@DomName('SVGTextElement.SVGTextElement')
@DocsEditable
factory TextElement() => _SvgElementFactoryProvider.createSvgElement_tag("text");
// From SVGLocatable
@DomName('SVGTextElement.farthestViewportElement')
@DocsEditable
final SvgElement farthestViewportElement;
@DomName('SVGTextElement.nearestViewportElement')
@DocsEditable
final SvgElement nearestViewportElement;
@DomName('SVGTextElement.getBBox')
@DocsEditable
Rect getBBox() native;
@JSName('getCTM')
@DomName('SVGTextElement.getCTM')
@DocsEditable
Matrix getCtm() native;
@JSName('getScreenCTM')
@DomName('SVGTextElement.getScreenCTM')
@DocsEditable
Matrix getScreenCtm() native;
@DomName('SVGTextElement.getTransformToElement')
@DocsEditable
Matrix getTransformToElement(SvgElement element) native;
// From SVGTransformable
@DomName('SVGTextElement.transform')
@DocsEditable
final AnimatedTransformList transform;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGTextPathElement')
class TextPathElement extends TextContentElement implements UriReference native "*SVGTextPathElement" {
static const int TEXTPATH_METHODTYPE_ALIGN = 1;
static const int TEXTPATH_METHODTYPE_STRETCH = 2;
static const int TEXTPATH_METHODTYPE_UNKNOWN = 0;
static const int TEXTPATH_SPACINGTYPE_AUTO = 1;
static const int TEXTPATH_SPACINGTYPE_EXACT = 2;
static const int TEXTPATH_SPACINGTYPE_UNKNOWN = 0;
@DomName('SVGTextPathElement.method')
@DocsEditable
final AnimatedEnumeration method;
@DomName('SVGTextPathElement.spacing')
@DocsEditable
final AnimatedEnumeration spacing;
@DomName('SVGTextPathElement.startOffset')
@DocsEditable
final AnimatedLength startOffset;
// From SVGURIReference
@DomName('SVGTextPathElement.href')
@DocsEditable
final AnimatedString href;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGTextPositioningElement')
class TextPositioningElement extends TextContentElement native "*SVGTextPositioningElement" {
@DomName('SVGTextPositioningElement.dx')
@DocsEditable
final AnimatedLengthList dx;
@DomName('SVGTextPositioningElement.dy')
@DocsEditable
final AnimatedLengthList dy;
@DomName('SVGTextPositioningElement.rotate')
@DocsEditable
final AnimatedNumberList rotate;
@DomName('SVGTextPositioningElement.x')
@DocsEditable
final AnimatedLengthList x;
@DomName('SVGTextPositioningElement.y')
@DocsEditable
final AnimatedLengthList y;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGTitleElement')
class TitleElement extends StyledElement implements LangSpace native "*SVGTitleElement" {
@DomName('SVGTitleElement.SVGTitleElement')
@DocsEditable
factory TitleElement() => _SvgElementFactoryProvider.createSvgElement_tag("title");
// From SVGLangSpace
@DomName('SVGTitleElement.xmllang')
@DocsEditable
String xmllang;
@DomName('SVGTitleElement.xmlspace')
@DocsEditable
String xmlspace;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGTransform')
class Transform native "*SVGTransform" {
static const int SVG_TRANSFORM_MATRIX = 1;
static const int SVG_TRANSFORM_ROTATE = 4;
static const int SVG_TRANSFORM_SCALE = 3;
static const int SVG_TRANSFORM_SKEWX = 5;
static const int SVG_TRANSFORM_SKEWY = 6;
static const int SVG_TRANSFORM_TRANSLATE = 2;
static const int SVG_TRANSFORM_UNKNOWN = 0;
@DomName('SVGTransform.angle')
@DocsEditable
final num angle;
@DomName('SVGTransform.matrix')
@DocsEditable
final Matrix matrix;
@DomName('SVGTransform.type')
@DocsEditable
final int type;
@DomName('SVGTransform.setMatrix')
@DocsEditable
void setMatrix(Matrix matrix) native;
@DomName('SVGTransform.setRotate')
@DocsEditable
void setRotate(num angle, num cx, num cy) native;
@DomName('SVGTransform.setScale')
@DocsEditable
void setScale(num sx, num sy) native;
@DomName('SVGTransform.setSkewX')
@DocsEditable
void setSkewX(num angle) native;
@DomName('SVGTransform.setSkewY')
@DocsEditable
void setSkewY(num angle) native;
@DomName('SVGTransform.setTranslate')
@DocsEditable
void setTranslate(num tx, num ty) native;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGTransformList')
class TransformList implements List<Transform>, JavaScriptIndexingBehavior native "*SVGTransformList" {
@DomName('SVGTransformList.numberOfItems')
@DocsEditable
final int numberOfItems;
Transform operator[](int index) => JS("Transform", "#[#]", this, index);
void operator[]=(int index, Transform value) {
throw new UnsupportedError("Cannot assign element of immutable List.");
}
// -- start List<Transform> mixins.
// Transform is the element type.
// From Iterable<Transform>:
Iterator<Transform> get iterator {
// Note: NodeLists are not fixed size. And most probably length shouldn't
// be cached in both iterator _and_ forEach method. For now caching it
// for consistency.
return new FixedSizeListIterator<Transform>(this);
}
// SVG Collections expose numberOfItems rather than length.
int get length => numberOfItems;
dynamic reduce(dynamic initialValue, dynamic combine(dynamic, Transform)) {
return IterableMixinWorkaround.reduce(this, initialValue, combine);
}
bool contains(Transform element) => IterableMixinWorkaround.contains(this, element);
void forEach(void f(Transform element)) => IterableMixinWorkaround.forEach(this, f);
String join([String separator]) =>
IterableMixinWorkaround.joinList(this, separator);
Iterable map(f(Transform element)) =>
IterableMixinWorkaround.mapList(this, f);
Iterable<Transform> where(bool f(Transform element)) =>
IterableMixinWorkaround.where(this, f);
Iterable expand(Iterable f(Transform element)) =>
IterableMixinWorkaround.expand(this, f);
bool every(bool f(Transform element)) => IterableMixinWorkaround.every(this, f);
bool any(bool f(Transform element)) => IterableMixinWorkaround.any(this, f);
List<Transform> toList() => new List<Transform>.from(this);
Set<Transform> toSet() => new Set<Transform>.from(this);
bool get isEmpty => this.length == 0;
Iterable<Transform> take(int n) => IterableMixinWorkaround.takeList(this, n);
Iterable<Transform> takeWhile(bool test(Transform value)) {
return IterableMixinWorkaround.takeWhile(this, test);
}
Iterable<Transform> skip(int n) => IterableMixinWorkaround.skipList(this, n);
Iterable<Transform> skipWhile(bool test(Transform value)) {
return IterableMixinWorkaround.skipWhile(this, test);
}
Transform firstMatching(bool test(Transform value), { Transform orElse() }) {
return IterableMixinWorkaround.firstMatching(this, test, orElse);
}
Transform lastMatching(bool test(Transform value), {Transform orElse()}) {
return IterableMixinWorkaround.lastMatchingInList(this, test, orElse);
}
Transform singleMatching(bool test(Transform value)) {
return IterableMixinWorkaround.singleMatching(this, test);
}
Transform elementAt(int index) {
return this[index];
}
// From Collection<Transform>:
void add(Transform value) {
throw new UnsupportedError("Cannot add to immutable List.");
}
void addLast(Transform value) {
throw new UnsupportedError("Cannot add to immutable List.");
}
void addAll(Iterable<Transform> iterable) {
throw new UnsupportedError("Cannot add to immutable List.");
}
// From List<Transform>:
void set length(int value) {
throw new UnsupportedError("Cannot resize immutable List.");
}
// clear() defined by IDL.
Iterable<Transform> get reversed {
return IterableMixinWorkaround.reversedList(this);
}
void sort([int compare(Transform a, Transform b)]) {
throw new UnsupportedError("Cannot sort immutable List.");
}
int indexOf(Transform element, [int start = 0]) =>
Lists.indexOf(this, element, start, this.length);
int lastIndexOf(Transform element, [int start]) {
if (start == null) start = length - 1;
return Lists.lastIndexOf(this, element, start);
}
Transform get first {
if (this.length > 0) return this[0];
throw new StateError("No elements");
}
Transform get last {
if (this.length > 0) return this[this.length - 1];
throw new StateError("No elements");
}
Transform get single {
if (length == 1) return this[0];
if (length == 0) throw new StateError("No elements");
throw new StateError("More than one element");
}
Transform min([int compare(Transform a, Transform b)]) =>
IterableMixinWorkaround.min(this, compare);
Transform max([int compare(Transform a, Transform b)]) =>
IterableMixinWorkaround.max(this, compare);
Transform removeAt(int pos) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
Transform removeLast() {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void remove(Object object) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void removeAll(Iterable elements) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void retainAll(Iterable elements) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void removeMatching(bool test(Transform element)) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void retainMatching(bool test(Transform element)) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void setRange(int start, int rangeLength, List<Transform> from, [int startFrom]) {
throw new UnsupportedError("Cannot setRange on immutable List.");
}
void removeRange(int start, int rangeLength) {
throw new UnsupportedError("Cannot removeRange on immutable List.");
}
void insertRange(int start, int rangeLength, [Transform initialValue]) {
throw new UnsupportedError("Cannot insertRange on immutable List.");
}
List<Transform> getRange(int start, int rangeLength) =>
Lists.getRange(this, start, rangeLength, <Transform>[]);
// -- end List<Transform> mixins.
@DomName('SVGTransformList.appendItem')
@DocsEditable
Transform appendItem(Transform item) native;
@DomName('SVGTransformList.clear')
@DocsEditable
void clear() native;
@DomName('SVGTransformList.consolidate')
@DocsEditable
Transform consolidate() native;
@JSName('createSVGTransformFromMatrix')
@DomName('SVGTransformList.createSVGTransformFromMatrix')
@DocsEditable
Transform createSvgTransformFromMatrix(Matrix matrix) native;
@DomName('SVGTransformList.getItem')
@DocsEditable
Transform getItem(int index) native;
@DomName('SVGTransformList.initialize')
@DocsEditable
Transform initialize(Transform item) native;
@DomName('SVGTransformList.insertItemBefore')
@DocsEditable
Transform insertItemBefore(Transform item, int index) native;
@DomName('SVGTransformList.removeItem')
@DocsEditable
Transform removeItem(int index) native;
@DomName('SVGTransformList.replaceItem')
@DocsEditable
Transform replaceItem(Transform item, int index) native;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DomName('SVGTransformable')
abstract class Transformable implements Locatable {
AnimatedTransformList transform;
// From SVGLocatable
SvgElement farthestViewportElement;
SvgElement nearestViewportElement;
Rect getBBox();
Matrix getCTM();
Matrix getScreenCTM();
Matrix getTransformToElement(SvgElement element);
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGUnitTypes')
class UnitTypes native "*SVGUnitTypes" {
static const int SVG_UNIT_TYPE_OBJECTBOUNDINGBOX = 2;
static const int SVG_UNIT_TYPE_UNKNOWN = 0;
static const int SVG_UNIT_TYPE_USERSPACEONUSE = 1;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DomName('SVGURIReference')
abstract class UriReference {
AnimatedString href;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGUseElement')
class UseElement extends StyledElement implements UriReference, Tests, Transformable, ExternalResourcesRequired, LangSpace native "*SVGUseElement" {
@DomName('SVGUseElement.SVGUseElement')
@DocsEditable
factory UseElement() => _SvgElementFactoryProvider.createSvgElement_tag("use");
@DomName('SVGUseElement.animatedInstanceRoot')
@DocsEditable
final ElementInstance animatedInstanceRoot;
@DomName('SVGUseElement.height')
@DocsEditable
final AnimatedLength height;
@DomName('SVGUseElement.instanceRoot')
@DocsEditable
final ElementInstance instanceRoot;
@DomName('SVGUseElement.width')
@DocsEditable
final AnimatedLength width;
@DomName('SVGUseElement.x')
@DocsEditable
final AnimatedLength x;
@DomName('SVGUseElement.y')
@DocsEditable
final AnimatedLength y;
// From SVGExternalResourcesRequired
@DomName('SVGUseElement.externalResourcesRequired')
@DocsEditable
final AnimatedBoolean externalResourcesRequired;
// From SVGLangSpace
@DomName('SVGUseElement.xmllang')
@DocsEditable
String xmllang;
@DomName('SVGUseElement.xmlspace')
@DocsEditable
String xmlspace;
// From SVGLocatable
@DomName('SVGUseElement.farthestViewportElement')
@DocsEditable
final SvgElement farthestViewportElement;
@DomName('SVGUseElement.nearestViewportElement')
@DocsEditable
final SvgElement nearestViewportElement;
@DomName('SVGUseElement.getBBox')
@DocsEditable
Rect getBBox() native;
@JSName('getCTM')
@DomName('SVGUseElement.getCTM')
@DocsEditable
Matrix getCtm() native;
@JSName('getScreenCTM')
@DomName('SVGUseElement.getScreenCTM')
@DocsEditable
Matrix getScreenCtm() native;
@DomName('SVGUseElement.getTransformToElement')
@DocsEditable
Matrix getTransformToElement(SvgElement element) native;
// From SVGTests
@DomName('SVGUseElement.requiredExtensions')
@DocsEditable
final StringList requiredExtensions;
@DomName('SVGUseElement.requiredFeatures')
@DocsEditable
final StringList requiredFeatures;
@DomName('SVGUseElement.systemLanguage')
@DocsEditable
final StringList systemLanguage;
@DomName('SVGUseElement.hasExtension')
@DocsEditable
bool hasExtension(String extension) native;
// From SVGTransformable
@DomName('SVGUseElement.transform')
@DocsEditable
final AnimatedTransformList transform;
// From SVGURIReference
@DomName('SVGUseElement.href')
@DocsEditable
final AnimatedString href;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGViewElement')
class ViewElement extends SvgElement implements FitToViewBox, ExternalResourcesRequired, ZoomAndPan native "*SVGViewElement" {
@DomName('SVGViewElement.SVGViewElement')
@DocsEditable
factory ViewElement() => _SvgElementFactoryProvider.createSvgElement_tag("view");
@DomName('SVGViewElement.viewTarget')
@DocsEditable
final StringList viewTarget;
// From SVGExternalResourcesRequired
@DomName('SVGViewElement.externalResourcesRequired')
@DocsEditable
final AnimatedBoolean externalResourcesRequired;
// From SVGFitToViewBox
@DomName('SVGViewElement.preserveAspectRatio')
@DocsEditable
final AnimatedPreserveAspectRatio preserveAspectRatio;
@DomName('SVGViewElement.viewBox')
@DocsEditable
final AnimatedRect viewBox;
// From SVGZoomAndPan
@DomName('SVGViewElement.zoomAndPan')
@DocsEditable
int zoomAndPan;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGViewSpec')
class ViewSpec native "*SVGViewSpec" {
@DomName('SVGViewSpec.preserveAspectRatio')
@DocsEditable
final AnimatedPreserveAspectRatio preserveAspectRatio;
@DomName('SVGViewSpec.preserveAspectRatioString')
@DocsEditable
final String preserveAspectRatioString;
@DomName('SVGViewSpec.transform')
@DocsEditable
final TransformList transform;
@DomName('SVGViewSpec.transformString')
@DocsEditable
final String transformString;
@DomName('SVGViewSpec.viewBox')
@DocsEditable
final AnimatedRect viewBox;
@DomName('SVGViewSpec.viewBoxString')
@DocsEditable
final String viewBoxString;
@DomName('SVGViewSpec.viewTarget')
@DocsEditable
final SvgElement viewTarget;
@DomName('SVGViewSpec.viewTargetString')
@DocsEditable
final String viewTargetString;
@DomName('SVGViewSpec.zoomAndPan')
@DocsEditable
int zoomAndPan;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DomName('SVGZoomAndPan')
abstract class ZoomAndPan {
static const int SVG_ZOOMANDPAN_DISABLE = 1;
static const int SVG_ZOOMANDPAN_MAGNIFY = 2;
static const int SVG_ZOOMANDPAN_UNKNOWN = 0;
int zoomAndPan;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGZoomEvent')
class ZoomEvent extends UIEvent native "*SVGZoomEvent" {
@DomName('SVGZoomEvent.newScale')
@DocsEditable
final num newScale;
@DomName('SVGZoomEvent.newTranslate')
@DocsEditable
final Point newTranslate;
@DomName('SVGZoomEvent.previousScale')
@DocsEditable
final num previousScale;
@DomName('SVGZoomEvent.previousTranslate')
@DocsEditable
final Point previousTranslate;
@DomName('SVGZoomEvent.zoomRectScreen')
@DocsEditable
final Rect zoomRectScreen;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGElementInstanceList')
class _ElementInstanceList implements JavaScriptIndexingBehavior, List<ElementInstance> native "*SVGElementInstanceList" {
@DomName('SVGElementInstanceList.length')
@DocsEditable
int get length => JS("int", "#.length", this);
ElementInstance operator[](int index) => JS("ElementInstance", "#[#]", this, index);
void operator[]=(int index, ElementInstance value) {
throw new UnsupportedError("Cannot assign element of immutable List.");
}
// -- start List<ElementInstance> mixins.
// ElementInstance is the element type.
// From Iterable<ElementInstance>:
Iterator<ElementInstance> get iterator {
// Note: NodeLists are not fixed size. And most probably length shouldn't
// be cached in both iterator _and_ forEach method. For now caching it
// for consistency.
return new FixedSizeListIterator<ElementInstance>(this);
}
dynamic reduce(dynamic initialValue, dynamic combine(dynamic, ElementInstance)) {
return IterableMixinWorkaround.reduce(this, initialValue, combine);
}
bool contains(ElementInstance element) => IterableMixinWorkaround.contains(this, element);
void forEach(void f(ElementInstance element)) => IterableMixinWorkaround.forEach(this, f);
String join([String separator]) =>
IterableMixinWorkaround.joinList(this, separator);
Iterable map(f(ElementInstance element)) =>
IterableMixinWorkaround.mapList(this, f);
Iterable<ElementInstance> where(bool f(ElementInstance element)) =>
IterableMixinWorkaround.where(this, f);
Iterable expand(Iterable f(ElementInstance element)) =>
IterableMixinWorkaround.expand(this, f);
bool every(bool f(ElementInstance element)) => IterableMixinWorkaround.every(this, f);
bool any(bool f(ElementInstance element)) => IterableMixinWorkaround.any(this, f);
List<ElementInstance> toList() => new List<ElementInstance>.from(this);
Set<ElementInstance> toSet() => new Set<ElementInstance>.from(this);
bool get isEmpty => this.length == 0;
Iterable<ElementInstance> take(int n) => IterableMixinWorkaround.takeList(this, n);
Iterable<ElementInstance> takeWhile(bool test(ElementInstance value)) {
return IterableMixinWorkaround.takeWhile(this, test);
}
Iterable<ElementInstance> skip(int n) => IterableMixinWorkaround.skipList(this, n);
Iterable<ElementInstance> skipWhile(bool test(ElementInstance value)) {
return IterableMixinWorkaround.skipWhile(this, test);
}
ElementInstance firstMatching(bool test(ElementInstance value), { ElementInstance orElse() }) {
return IterableMixinWorkaround.firstMatching(this, test, orElse);
}
ElementInstance lastMatching(bool test(ElementInstance value), {ElementInstance orElse()}) {
return IterableMixinWorkaround.lastMatchingInList(this, test, orElse);
}
ElementInstance singleMatching(bool test(ElementInstance value)) {
return IterableMixinWorkaround.singleMatching(this, test);
}
ElementInstance elementAt(int index) {
return this[index];
}
// From Collection<ElementInstance>:
void add(ElementInstance value) {
throw new UnsupportedError("Cannot add to immutable List.");
}
void addLast(ElementInstance value) {
throw new UnsupportedError("Cannot add to immutable List.");
}
void addAll(Iterable<ElementInstance> iterable) {
throw new UnsupportedError("Cannot add to immutable List.");
}
// From List<ElementInstance>:
void set length(int value) {
throw new UnsupportedError("Cannot resize immutable List.");
}
void clear() {
throw new UnsupportedError("Cannot clear immutable List.");
}
Iterable<ElementInstance> get reversed {
return IterableMixinWorkaround.reversedList(this);
}
void sort([int compare(ElementInstance a, ElementInstance b)]) {
throw new UnsupportedError("Cannot sort immutable List.");
}
int indexOf(ElementInstance element, [int start = 0]) =>
Lists.indexOf(this, element, start, this.length);
int lastIndexOf(ElementInstance element, [int start]) {
if (start == null) start = length - 1;
return Lists.lastIndexOf(this, element, start);
}
ElementInstance get first {
if (this.length > 0) return this[0];
throw new StateError("No elements");
}
ElementInstance get last {
if (this.length > 0) return this[this.length - 1];
throw new StateError("No elements");
}
ElementInstance get single {
if (length == 1) return this[0];
if (length == 0) throw new StateError("No elements");
throw new StateError("More than one element");
}
ElementInstance min([int compare(ElementInstance a, ElementInstance b)]) =>
IterableMixinWorkaround.min(this, compare);
ElementInstance max([int compare(ElementInstance a, ElementInstance b)]) =>
IterableMixinWorkaround.max(this, compare);
ElementInstance removeAt(int pos) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
ElementInstance removeLast() {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void remove(Object object) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void removeAll(Iterable elements) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void retainAll(Iterable elements) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void removeMatching(bool test(ElementInstance element)) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void retainMatching(bool test(ElementInstance element)) {
throw new UnsupportedError("Cannot remove from immutable List.");
}
void setRange(int start, int rangeLength, List<ElementInstance> from, [int startFrom]) {
throw new UnsupportedError("Cannot setRange on immutable List.");
}
void removeRange(int start, int rangeLength) {
throw new UnsupportedError("Cannot removeRange on immutable List.");
}
void insertRange(int start, int rangeLength, [ElementInstance initialValue]) {
throw new UnsupportedError("Cannot insertRange on immutable List.");
}
List<ElementInstance> getRange(int start, int rangeLength) =>
Lists.getRange(this, start, rangeLength, <ElementInstance>[]);
// -- end List<ElementInstance> mixins.
@DomName('SVGElementInstanceList.item')
@DocsEditable
ElementInstance item(int index) native;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGAltGlyphDefElement')
class _SVGAltGlyphDefElement extends SvgElement native "*SVGAltGlyphDefElement" {
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGAltGlyphItemElement')
class _SVGAltGlyphItemElement extends SvgElement native "*SVGAltGlyphItemElement" {
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGAnimateColorElement')
class _SVGAnimateColorElement extends AnimationElement native "*SVGAnimateColorElement" {
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGComponentTransferFunctionElement')
class _SVGComponentTransferFunctionElement extends SvgElement native "*SVGComponentTransferFunctionElement" {
static const int SVG_FECOMPONENTTRANSFER_TYPE_DISCRETE = 3;
static const int SVG_FECOMPONENTTRANSFER_TYPE_GAMMA = 5;
static const int SVG_FECOMPONENTTRANSFER_TYPE_IDENTITY = 1;
static const int SVG_FECOMPONENTTRANSFER_TYPE_LINEAR = 4;
static const int SVG_FECOMPONENTTRANSFER_TYPE_TABLE = 2;
static const int SVG_FECOMPONENTTRANSFER_TYPE_UNKNOWN = 0;
@DomName('SVGComponentTransferFunctionElement.amplitude')
@DocsEditable
final AnimatedNumber amplitude;
@DomName('SVGComponentTransferFunctionElement.exponent')
@DocsEditable
final AnimatedNumber exponent;
@DomName('SVGComponentTransferFunctionElement.intercept')
@DocsEditable
final AnimatedNumber intercept;
@DomName('SVGComponentTransferFunctionElement.offset')
@DocsEditable
final AnimatedNumber offset;
@DomName('SVGComponentTransferFunctionElement.slope')
@DocsEditable
final AnimatedNumber slope;
@DomName('SVGComponentTransferFunctionElement.tableValues')
@DocsEditable
final AnimatedNumberList tableValues;
@DomName('SVGComponentTransferFunctionElement.type')
@DocsEditable
final AnimatedEnumeration type;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGCursorElement')
class _SVGCursorElement extends SvgElement implements UriReference, Tests, ExternalResourcesRequired native "*SVGCursorElement" {
@DomName('SVGCursorElement.SVGCursorElement')
@DocsEditable
factory _SVGCursorElement() => _SvgElementFactoryProvider.createSvgElement_tag("cursor");
/// Checks if this type is supported on the current platform.
static bool get supported => SvgElement.isTagSupported('cursor') && (new SvgElement.tag('cursor') is _SVGCursorElement);
@DomName('SVGCursorElement.x')
@DocsEditable
final AnimatedLength x;
@DomName('SVGCursorElement.y')
@DocsEditable
final AnimatedLength y;
// From SVGExternalResourcesRequired
@DomName('SVGCursorElement.externalResourcesRequired')
@DocsEditable
final AnimatedBoolean externalResourcesRequired;
// From SVGTests
@DomName('SVGCursorElement.requiredExtensions')
@DocsEditable
final StringList requiredExtensions;
@DomName('SVGCursorElement.requiredFeatures')
@DocsEditable
final StringList requiredFeatures;
@DomName('SVGCursorElement.systemLanguage')
@DocsEditable
final StringList systemLanguage;
@DomName('SVGCursorElement.hasExtension')
@DocsEditable
bool hasExtension(String extension) native;
// From SVGURIReference
@DomName('SVGCursorElement.href')
@DocsEditable
final AnimatedString href;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFEDropShadowElement')
class _SVGFEDropShadowElement extends StyledElement implements FilterPrimitiveStandardAttributes native "*SVGFEDropShadowElement" {
@DomName('SVGFEDropShadowElement.dx')
@DocsEditable
final AnimatedNumber dx;
@DomName('SVGFEDropShadowElement.dy')
@DocsEditable
final AnimatedNumber dy;
@DomName('SVGFEDropShadowElement.in1')
@DocsEditable
final AnimatedString in1;
@DomName('SVGFEDropShadowElement.stdDeviationX')
@DocsEditable
final AnimatedNumber stdDeviationX;
@DomName('SVGFEDropShadowElement.stdDeviationY')
@DocsEditable
final AnimatedNumber stdDeviationY;
@DomName('SVGFEDropShadowElement.setStdDeviation')
@DocsEditable
void setStdDeviation(num stdDeviationX, num stdDeviationY) native;
// From SVGFilterPrimitiveStandardAttributes
@DomName('SVGFEDropShadowElement.height')
@DocsEditable
final AnimatedLength height;
@DomName('SVGFEDropShadowElement.result')
@DocsEditable
final AnimatedString result;
@DomName('SVGFEDropShadowElement.width')
@DocsEditable
final AnimatedLength width;
@DomName('SVGFEDropShadowElement.x')
@DocsEditable
final AnimatedLength x;
@DomName('SVGFEDropShadowElement.y')
@DocsEditable
final AnimatedLength y;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFontElement')
class _SVGFontElement extends SvgElement native "*SVGFontElement" {
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFontFaceElement')
class _SVGFontFaceElement extends SvgElement native "*SVGFontFaceElement" {
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFontFaceFormatElement')
class _SVGFontFaceFormatElement extends SvgElement native "*SVGFontFaceFormatElement" {
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFontFaceNameElement')
class _SVGFontFaceNameElement extends SvgElement native "*SVGFontFaceNameElement" {
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFontFaceSrcElement')
class _SVGFontFaceSrcElement extends SvgElement native "*SVGFontFaceSrcElement" {
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGFontFaceUriElement')
class _SVGFontFaceUriElement extends SvgElement native "*SVGFontFaceUriElement" {
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGGlyphElement')
class _SVGGlyphElement extends SvgElement native "*SVGGlyphElement" {
@DomName('SVGGlyphElement.SVGGlyphElement')
@DocsEditable
factory _SVGGlyphElement() => _SvgElementFactoryProvider.createSvgElement_tag("glyph");
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGGlyphRefElement')
class _SVGGlyphRefElement extends StyledElement implements UriReference native "*SVGGlyphRefElement" {
@DomName('SVGGlyphRefElement.dx')
@DocsEditable
num dx;
@DomName('SVGGlyphRefElement.dy')
@DocsEditable
num dy;
@DomName('SVGGlyphRefElement.format')
@DocsEditable
String format;
@DomName('SVGGlyphRefElement.glyphRef')
@DocsEditable
String glyphRef;
@DomName('SVGGlyphRefElement.x')
@DocsEditable
num x;
@DomName('SVGGlyphRefElement.y')
@DocsEditable
num y;
// From SVGURIReference
@DomName('SVGGlyphRefElement.href')
@DocsEditable
final AnimatedString href;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGGradientElement')
class _SVGGradientElement extends StyledElement implements UriReference, ExternalResourcesRequired native "*SVGGradientElement" {
static const int SVG_SPREADMETHOD_PAD = 1;
static const int SVG_SPREADMETHOD_REFLECT = 2;
static const int SVG_SPREADMETHOD_REPEAT = 3;
static const int SVG_SPREADMETHOD_UNKNOWN = 0;
@DomName('SVGGradientElement.gradientTransform')
@DocsEditable
final AnimatedTransformList gradientTransform;
@DomName('SVGGradientElement.gradientUnits')
@DocsEditable
final AnimatedEnumeration gradientUnits;
@DomName('SVGGradientElement.spreadMethod')
@DocsEditable
final AnimatedEnumeration spreadMethod;
// From SVGExternalResourcesRequired
@DomName('SVGGradientElement.externalResourcesRequired')
@DocsEditable
final AnimatedBoolean externalResourcesRequired;
// From SVGURIReference
@DomName('SVGGradientElement.href')
@DocsEditable
final AnimatedString href;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGHKernElement')
class _SVGHKernElement extends SvgElement native "*SVGHKernElement" {
@DomName('SVGHKernElement.SVGHKernElement')
@DocsEditable
factory _SVGHKernElement() => _SvgElementFactoryProvider.createSvgElement_tag("hkern");
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGMPathElement')
class _SVGMPathElement extends SvgElement implements UriReference, ExternalResourcesRequired native "*SVGMPathElement" {
@DomName('SVGMPathElement.SVGMPathElement')
@DocsEditable
factory _SVGMPathElement() => _SvgElementFactoryProvider.createSvgElement_tag("mpath");
// From SVGExternalResourcesRequired
@DomName('SVGMPathElement.externalResourcesRequired')
@DocsEditable
final AnimatedBoolean externalResourcesRequired;
// From SVGURIReference
@DomName('SVGMPathElement.href')
@DocsEditable
final AnimatedString href;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGMissingGlyphElement')
class _SVGMissingGlyphElement extends StyledElement native "*SVGMissingGlyphElement" {
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGTRefElement')
class _SVGTRefElement extends TextPositioningElement implements UriReference native "*SVGTRefElement" {
@DomName('SVGTRefElement.SVGTRefElement')
@DocsEditable
factory _SVGTRefElement() => _SvgElementFactoryProvider.createSvgElement_tag("tref");
// From SVGURIReference
@DomName('SVGTRefElement.href')
@DocsEditable
final AnimatedString href;
}
// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
@DocsEditable
@DomName('SVGVKernElement')
class _SVGVKernElement extends SvgElement native "*SVGVKernElement" {
@DomName('SVGVKernElement.SVGVKernElement')
@DocsEditable
factory _SVGVKernElement() => _SvgElementFactoryProvider.createSvgElement_tag("vkern");
}