mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-08 04:27:37 +00:00
5c8cc975a2
alex.fritze@crocodile-clips.com, james.turner@crocodile-clips.com, and everyone else how helped on the branch. Thanks to peterv for last minute build changes r=cls for build changes r=jst, rs=brendan for #ifdef'd parts touching existing files. NOT ON BY DEFAULT
282 lines
10 KiB
Plaintext
282 lines
10 KiB
Plaintext
/* -*- 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 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 NPL, 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(2b72d033-f115-45aa-9748-8c11ea07b845)]
|
|
interface nsIDOMSVGPathSegClosePath : nsIDOMSVGPathSeg
|
|
{
|
|
};
|
|
|
|
|
|
[scriptable, uuid(b0106d01-9746-440b-b067-68ee043dabc3)]
|
|
interface nsIDOMSVGPathSegMovetoAbs : nsIDOMSVGPathSeg
|
|
{
|
|
attribute float x;
|
|
// raises nsIDOMDOMException on setting
|
|
attribute float y;
|
|
// raises nsIDOMDOMException on setting
|
|
};
|
|
|
|
[scriptable, uuid(c6ee1ddd-8b35-4e1b-b381-c063a28012d9)]
|
|
interface nsIDOMSVGPathSegMovetoRel : nsIDOMSVGPathSeg
|
|
{
|
|
attribute float x;
|
|
// raises nsIDOMDOMException on setting
|
|
attribute float y;
|
|
// raises nsIDOMDOMException on setting
|
|
};
|
|
|
|
[scriptable, uuid(bac3648d-55a3-491b-9863-a18fd7506689)]
|
|
interface nsIDOMSVGPathSegLinetoAbs : nsIDOMSVGPathSeg
|
|
{
|
|
attribute float x;
|
|
// raises nsIDOMDOMException on setting
|
|
attribute float y;
|
|
// raises nsIDOMDOMException on setting
|
|
};
|
|
|
|
[scriptable, uuid(3294d20e-c707-4e59-a625-bde93fc0b25f)]
|
|
interface nsIDOMSVGPathSegLinetoRel : nsIDOMSVGPathSeg
|
|
{
|
|
attribute float x;
|
|
// raises nsIDOMDOMException on setting
|
|
attribute float y;
|
|
// raises nsIDOMDOMException on setting
|
|
};
|
|
|
|
[scriptable, uuid(ad929b96-ef81-4002-b596-c6a8b3a878e9)]
|
|
interface nsIDOMSVGPathSegCurvetoCubicAbs : nsIDOMSVGPathSeg
|
|
{
|
|
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(dc7ba13f-8cb6-48d2-9e22-a4a6817abbb9)]
|
|
interface nsIDOMSVGPathSegCurvetoCubicRel : nsIDOMSVGPathSeg
|
|
{
|
|
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(ec4e8f65-5f4a-495e-a5f2-00e18d5e5f96)]
|
|
interface nsIDOMSVGPathSegCurvetoQuadraticAbs : nsIDOMSVGPathSeg
|
|
{
|
|
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(7007113c-e06b-4256-8530-4884d5d769c6)]
|
|
interface nsIDOMSVGPathSegCurvetoQuadraticRel : nsIDOMSVGPathSeg
|
|
{
|
|
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(c26e1779-604b-4bad-8a29-02d2a2113769)]
|
|
interface nsIDOMSVGPathSegArcAbs : nsIDOMSVGPathSeg
|
|
{
|
|
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(a685997e-fb47-47c0-a34c-5da11cb66537)]
|
|
interface nsIDOMSVGPathSegArcRel : nsIDOMSVGPathSeg
|
|
{
|
|
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(e74b55ef-1c44-4a40-9f51-a2196b11283a)]
|
|
interface nsIDOMSVGPathSegLinetoHorizontalAbs : nsIDOMSVGPathSeg
|
|
{
|
|
attribute float x;
|
|
// raises nsIDOMDOMException on setting
|
|
};
|
|
|
|
[scriptable, uuid(0a797fdc-8b60-4cb3-a0da-4c898832ba30)]
|
|
interface nsIDOMSVGPathSegLinetoHorizontalRel : nsIDOMSVGPathSeg
|
|
{
|
|
attribute float x;
|
|
// raises nsIDOMDOMException on setting
|
|
};
|
|
|
|
[scriptable, uuid(0811d434-3d90-4eec-8fa2-066dde037917)]
|
|
interface nsIDOMSVGPathSegLinetoVerticalAbs : nsIDOMSVGPathSeg
|
|
{
|
|
attribute float y;
|
|
// raises nsIDOMDOMException on setting
|
|
};
|
|
|
|
[scriptable, uuid(93db35b1-6b33-49d5-ad25-1ed1a7611ad2)]
|
|
interface nsIDOMSVGPathSegLinetoVerticalRel : nsIDOMSVGPathSeg
|
|
{
|
|
attribute float y;
|
|
// raises nsIDOMDOMException on setting
|
|
};
|
|
|
|
[scriptable, uuid(eb422132-514e-4a1c-81ec-b84a5df5fb96)]
|
|
interface nsIDOMSVGPathSegCurvetoCubicSmoothAbs : nsIDOMSVGPathSeg
|
|
{
|
|
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(5860bccd-f86b-47f8-86c1-cb1245b6a8e1)]
|
|
interface nsIDOMSVGPathSegCurvetoCubicSmoothRel : nsIDOMSVGPathSeg
|
|
{
|
|
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(3ce86063-0a35-48ec-b372-f198b7d04755)]
|
|
interface nsIDOMSVGPathSegCurvetoQuadraticSmoothAbs : nsIDOMSVGPathSeg
|
|
{
|
|
attribute float x;
|
|
// raises nsIDOMDOMException on setting
|
|
attribute float y;
|
|
// raises nsIDOMDOMException on setting
|
|
};
|
|
|
|
[scriptable, uuid(5c0e4d25-a9f1-4aab-936c-2b61ed6c085f)]
|
|
interface nsIDOMSVGPathSegCurvetoQuadraticSmoothRel : nsIDOMSVGPathSeg
|
|
{
|
|
attribute float x;
|
|
// raises nsIDOMDOMException on setting
|
|
attribute float y;
|
|
// raises nsIDOMDOMException on setting
|
|
};
|