| /* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ |
| /* ***** BEGIN LICENSE BLOCK ***** |
| * Version: MPL 1.1/GPL 2.0/LGPL 2.1 |
| * |
| * The contents of this file are subject to the Mozilla Public License Version |
| * 1.1 (the "License"); you may not use this file except in compliance with |
| * the License. You may obtain a copy of the License at |
| * http://www.mozilla.org/MPL/ |
| * |
| * Software distributed under the License is distributed on an "AS IS" basis, |
| * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License |
| * for the specific language governing rights and limitations under the |
| * License. |
| * |
| * The Original Code is the Mozilla SVG project. |
| * |
| * The Initial Developer of the Original Code is |
| * Crocodile Clips Ltd.. |
| * Portions created by the Initial Developer are Copyright (C) 2001 |
| * the Initial Developer. All Rights Reserved. |
| * |
| * Contributor(s): |
| * Alex Fritze <alex.fritze@crocodile-clips.com> (original author) |
| * |
| * Alternatively, the contents of this file may be used under the terms of |
| * either of the GNU General Public License Version 2 or later (the "GPL"), |
| * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), |
| * in which case the provisions of the GPL or the LGPL are applicable instead |
| * of those above. If you wish to allow use of your version of this file only |
| * under the terms of either the GPL or the LGPL, and not to allow others to |
| * use your version of this file under the terms of the MPL, indicate your |
| * decision by deleting the provisions above and replace them with the notice |
| * and other provisions required by the GPL or the LGPL. If you do not delete |
| * the provisions above, a recipient may use your version of this file under |
| * the terms of any one of the MPL, the GPL or the LGPL. |
| * |
| * ***** END LICENSE BLOCK ***** */ |
| |
| #include "domstubs.idl" |
| |
| [scriptable, uuid(b9022da7-e26d-4df3-8c94-b45c4aedda7c)] |
| interface nsIDOMSVGPathSeg : nsISupports |
| { |
| // Path Segment Types |
| const unsigned short PATHSEG_UNKNOWN = 0; |
| const unsigned short PATHSEG_CLOSEPATH = 1; |
| const unsigned short PATHSEG_MOVETO_ABS = 2; |
| const unsigned short PATHSEG_MOVETO_REL = 3; |
| const unsigned short PATHSEG_LINETO_ABS = 4; |
| const unsigned short PATHSEG_LINETO_REL = 5; |
| const unsigned short PATHSEG_CURVETO_CUBIC_ABS = 6; |
| const unsigned short PATHSEG_CURVETO_CUBIC_REL = 7; |
| const unsigned short PATHSEG_CURVETO_QUADRATIC_ABS = 8; |
| const unsigned short PATHSEG_CURVETO_QUADRATIC_REL = 9; |
| const unsigned short PATHSEG_ARC_ABS = 10; |
| const unsigned short PATHSEG_ARC_REL = 11; |
| const unsigned short PATHSEG_LINETO_HORIZONTAL_ABS = 12; |
| const unsigned short PATHSEG_LINETO_HORIZONTAL_REL = 13; |
| const unsigned short PATHSEG_LINETO_VERTICAL_ABS = 14; |
| const unsigned short PATHSEG_LINETO_VERTICAL_REL = 15; |
| const unsigned short PATHSEG_CURVETO_CUBIC_SMOOTH_ABS = 16; |
| const unsigned short PATHSEG_CURVETO_CUBIC_SMOOTH_REL = 17; |
| const unsigned short PATHSEG_CURVETO_QUADRATIC_SMOOTH_ABS = 18; |
| const unsigned short PATHSEG_CURVETO_QUADRATIC_SMOOTH_REL = 19; |
| |
| readonly attribute unsigned short pathSegType; |
| readonly attribute DOMString pathSegTypeAsLetter; |
| }; |
| |
| |
| [scriptable, uuid(4970505f-2cc0-4afa-92e6-0cf4bdbf5a53)] |
| interface nsIDOMSVGPathSegClosePath : nsISupports |
| { |
| }; |
| |
| |
| [scriptable, uuid(30cf7749-bf1f-4f9c-9558-8ee24da3a22c)] |
| interface nsIDOMSVGPathSegMovetoAbs : nsISupports |
| { |
| attribute float x; |
| // raises nsIDOMDOMException on setting |
| attribute float y; |
| // raises nsIDOMDOMException on setting |
| }; |
| |
| [scriptable, uuid(58ca7e86-661a-473a-96de-89682e7e24d6)] |
| interface nsIDOMSVGPathSegMovetoRel : nsISupports |
| { |
| attribute float x; |
| // raises nsIDOMDOMException on setting |
| attribute float y; |
| // raises nsIDOMDOMException on setting |
| }; |
| |
| [scriptable, uuid(5c7ba7b0-c7c5-4a7b-bc1c-2d784153be77)] |
| interface nsIDOMSVGPathSegLinetoAbs : nsISupports |
| { |
| attribute float x; |
| // raises nsIDOMDOMException on setting |
| attribute float y; |
| // raises nsIDOMDOMException on setting |
| }; |
| |
| [scriptable, uuid(7933a81a-72c5-4489-ba64-5635f4c23063)] |
| interface nsIDOMSVGPathSegLinetoRel : nsISupports |
| { |
| attribute float x; |
| // raises nsIDOMDOMException on setting |
| attribute float y; |
| // raises nsIDOMDOMException on setting |
| }; |
| |
| [scriptable, uuid(380afecd-f884-4da7-a0d7-5ffc4531b70b)] |
| interface nsIDOMSVGPathSegCurvetoCubicAbs : nsISupports |
| { |
| attribute float x; |
| // raises nsIDOMDOMException on setting |
| attribute float y; |
| // raises nsIDOMDOMException on setting |
| attribute float x1; |
| // raises nsIDOMDOMException on setting |
| attribute float y1; |
| // raises nsIDOMDOMException on setting |
| attribute float x2; |
| // raises nsIDOMDOMException on setting |
| attribute float y2; |
| // raises nsIDOMDOMException on setting |
| }; |
| |
| [scriptable, uuid(0e661233-0c4f-4e0d-94d3-fbc460ad1f88)] |
| interface nsIDOMSVGPathSegCurvetoCubicRel : nsISupports |
| { |
| attribute float x; |
| // raises nsIDOMDOMException on setting |
| attribute float y; |
| // raises nsIDOMDOMException on setting |
| attribute float x1; |
| // raises nsIDOMDOMException on setting |
| attribute float y1; |
| // raises nsIDOMDOMException on setting |
| attribute float x2; |
| // raises nsIDOMDOMException on setting |
| attribute float y2; |
| // raises nsIDOMDOMException on setting |
| }; |
| |
| [scriptable, uuid(b7aef0f0-2830-4145-b04f-fe05789ccf8a)] |
| interface nsIDOMSVGPathSegCurvetoQuadraticAbs : nsISupports |
| { |
| attribute float x; |
| // raises nsIDOMDOMException on setting |
| attribute float y; |
| // raises nsIDOMDOMException on setting |
| attribute float x1; |
| // raises nsIDOMDOMException on setting |
| attribute float y1; |
| // raises nsIDOMDOMException on setting |
| }; |
| |
| [scriptable, uuid(c46eb661-9c05-4d46-9b2a-c2ae5b166060)] |
| interface nsIDOMSVGPathSegCurvetoQuadraticRel : nsISupports |
| { |
| attribute float x; |
| // raises nsIDOMDOMException on setting |
| attribute float y; |
| // raises nsIDOMDOMException on setting |
| attribute float x1; |
| // raises nsIDOMDOMException on setting |
| attribute float y1; |
| // raises nsIDOMDOMException on setting |
| }; |
| |
| [scriptable, uuid(c9e222e5-31fd-4083-ae1f-fcf013681340)] |
| interface nsIDOMSVGPathSegArcAbs : nsISupports |
| { |
| attribute float x; |
| // raises nsIDOMDOMException on setting |
| attribute float y; |
| // raises nsIDOMDOMException on setting |
| attribute float r1; |
| // raises nsIDOMDOMException on setting |
| attribute float r2; |
| // raises nsIDOMDOMException on setting |
| attribute float angle; |
| // raises nsIDOMDOMException on setting |
| attribute boolean largeArcFlag; |
| // raises nsIDOMDOMException on setting |
| attribute boolean sweepFlag; |
| // raises nsIDOMDOMException on setting |
| }; |
| |
| [scriptable, uuid(49d0360d-bb66-4ab9-b9b0-f49b93398595)] |
| interface nsIDOMSVGPathSegArcRel : nsISupports |
| { |
| attribute float x; |
| // raises nsIDOMDOMException on setting |
| attribute float y; |
| // raises nsIDOMDOMException on setting |
| attribute float r1; |
| // raises nsIDOMDOMException on setting |
| attribute float r2; |
| // raises nsIDOMDOMException on setting |
| attribute float angle; |
| // raises nsIDOMDOMException on setting |
| attribute boolean largeArcFlag; |
| // raises nsIDOMDOMException on setting |
| attribute boolean sweepFlag; |
| // raises nsIDOMDOMException on setting |
| }; |
| |
| [scriptable, uuid(4a54a4d2-edef-4e19-9600-2330311000f4)] |
| interface nsIDOMSVGPathSegLinetoHorizontalAbs : nsISupports |
| { |
| attribute float x; |
| // raises nsIDOMDOMException on setting |
| }; |
| |
| [scriptable, uuid(8693268c-5180-43fd-acc3-5b9c09f43386)] |
| interface nsIDOMSVGPathSegLinetoHorizontalRel : nsISupports |
| { |
| attribute float x; |
| // raises nsIDOMDOMException on setting |
| }; |
| |
| [scriptable, uuid(fd5ffb7b-7279-4c09-abfd-b733dc872e80)] |
| interface nsIDOMSVGPathSegLinetoVerticalAbs : nsISupports |
| { |
| attribute float y; |
| // raises nsIDOMDOMException on setting |
| }; |
| |
| [scriptable, uuid(d3ef2128-8de3-4aac-a6b4-13c7563119a6)] |
| interface nsIDOMSVGPathSegLinetoVerticalRel : nsISupports |
| { |
| attribute float y; |
| // raises nsIDOMDOMException on setting |
| }; |
| |
| [scriptable, uuid(5fa8fea8-bdd1-4315-ac44-a39b3ff347b5)] |
| interface nsIDOMSVGPathSegCurvetoCubicSmoothAbs : nsISupports |
| { |
| attribute float x; |
| // raises nsIDOMDOMException on setting |
| attribute float y; |
| // raises nsIDOMDOMException on setting |
| attribute float x2; |
| // raises nsIDOMDOMException on setting |
| attribute float y2; |
| // raises nsIDOMDOMException on setting |
| }; |
| |
| [scriptable, uuid(dd5b4b00-edaa-493a-b477-bbc2576b4a98)] |
| interface nsIDOMSVGPathSegCurvetoCubicSmoothRel : nsISupports |
| { |
| attribute float x; |
| // raises nsIDOMDOMException on setting |
| attribute float y; |
| // raises nsIDOMDOMException on setting |
| attribute float x2; |
| // raises nsIDOMDOMException on setting |
| attribute float y2; |
| // raises nsIDOMDOMException on setting |
| }; |
| |
| [scriptable, uuid(ff5bbb58-b49a-450f-b91b-e50585c34b3d)] |
| interface nsIDOMSVGPathSegCurvetoQuadraticSmoothAbs : nsISupports |
| { |
| attribute float x; |
| // raises nsIDOMDOMException on setting |
| attribute float y; |
| // raises nsIDOMDOMException on setting |
| }; |
| |
| [scriptable, uuid(ac0b2007-04e4-4e70-a0e0-294f374b29c4)] |
| interface nsIDOMSVGPathSegCurvetoQuadraticSmoothRel : nsISupports |
| { |
| attribute float x; |
| // raises nsIDOMDOMException on setting |
| attribute float y; |
| // raises nsIDOMDOMException on setting |
| }; |