1 /* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* This Source Code Form is subject to the terms of the Mozilla Public
3 * License, v. 2.0. If a copy of the MPL was not distributed with this file,
4 * You can obtain one at http://mozilla.org/MPL/2.0/.
6 * The origin of this IDL file is
7 * http://www.w3.org/TR/SVG2/
9 * Copyright © 2012 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C
10 * liability, trademark and document use rules apply.
13 interface SVGPathSeg {
16 const unsigned short PATHSEG_UNKNOWN = 0;
17 const unsigned short PATHSEG_CLOSEPATH = 1;
18 const unsigned short PATHSEG_MOVETO_ABS = 2;
19 const unsigned short PATHSEG_MOVETO_REL = 3;
20 const unsigned short PATHSEG_LINETO_ABS = 4;
21 const unsigned short PATHSEG_LINETO_REL = 5;
22 const unsigned short PATHSEG_CURVETO_CUBIC_ABS = 6;
23 const unsigned short PATHSEG_CURVETO_CUBIC_REL = 7;
24 const unsigned short PATHSEG_CURVETO_QUADRATIC_ABS = 8;
25 const unsigned short PATHSEG_CURVETO_QUADRATIC_REL = 9;
26 const unsigned short PATHSEG_ARC_ABS = 10;
27 const unsigned short PATHSEG_ARC_REL = 11;
28 const unsigned short PATHSEG_LINETO_HORIZONTAL_ABS = 12;
29 const unsigned short PATHSEG_LINETO_HORIZONTAL_REL = 13;
30 const unsigned short PATHSEG_LINETO_VERTICAL_ABS = 14;
31 const unsigned short PATHSEG_LINETO_VERTICAL_REL = 15;
32 const unsigned short PATHSEG_CURVETO_CUBIC_SMOOTH_ABS = 16;
33 const unsigned short PATHSEG_CURVETO_CUBIC_SMOOTH_REL = 17;
34 const unsigned short PATHSEG_CURVETO_QUADRATIC_SMOOTH_ABS = 18;
35 const unsigned short PATHSEG_CURVETO_QUADRATIC_SMOOTH_REL = 19;
37 readonly attribute unsigned short pathSegType;
38 readonly attribute DOMString pathSegTypeAsLetter;
41 interface SVGPathSegClosePath : SVGPathSeg {
44 interface SVGPathSegMovetoAbs : SVGPathSeg {
51 interface SVGPathSegMovetoRel : SVGPathSeg {
58 interface SVGPathSegLinetoAbs : SVGPathSeg {
65 interface SVGPathSegLinetoRel : SVGPathSeg {
72 interface SVGPathSegCurvetoCubicAbs : SVGPathSeg {
87 interface SVGPathSegCurvetoCubicRel : SVGPathSeg {
102 interface SVGPathSegCurvetoQuadraticAbs : SVGPathSeg {
113 interface SVGPathSegCurvetoQuadraticRel : SVGPathSeg {
124 interface SVGPathSegArcAbs : SVGPathSeg {
134 attribute float angle;
136 attribute boolean largeArcFlag;
138 attribute boolean sweepFlag;
141 interface SVGPathSegArcRel : SVGPathSeg {
151 attribute float angle;
153 attribute boolean largeArcFlag;
155 attribute boolean sweepFlag;
158 interface SVGPathSegLinetoHorizontalAbs : SVGPathSeg {
163 interface SVGPathSegLinetoHorizontalRel : SVGPathSeg {
168 interface SVGPathSegLinetoVerticalAbs : SVGPathSeg {
173 interface SVGPathSegLinetoVerticalRel : SVGPathSeg {
178 interface SVGPathSegCurvetoCubicSmoothAbs : SVGPathSeg {
189 interface SVGPathSegCurvetoCubicSmoothRel : SVGPathSeg {
200 interface SVGPathSegCurvetoQuadraticSmoothAbs : SVGPathSeg {
207 interface SVGPathSegCurvetoQuadraticSmoothRel : SVGPathSeg {