[SVG only] Add DOM interfaces needed for SVG text support.

This commit is contained in:
alex.fritze%crocodile-clips.com 2002-01-07 13:52:14 +00:00
Родитель 5b82204613
Коммит 5e60b1fc6f
13 изменённых файлов: 624 добавлений и 37 удалений

Просмотреть файл

@ -1,4 +1,7 @@
nsIDOMSVGAnimatedEnumeration.idl
nsIDOMSVGAnimatedLength.idl
nsIDOMSVGAnimatedLengthList.idl
nsIDOMSVGAnimatedNumberList.idl
nsIDOMSVGAnimatedPathData.idl
nsIDOMSVGAnimatedPoints.idl
nsIDOMSVGAnimPresAspRatio.idl
@ -12,9 +15,12 @@ nsIDOMSVGFitToViewBox.idl
nsIDOMSVGForeignObjectElem.idl
nsIDOMSVGGElement.idl
nsIDOMSVGLength.idl
nsIDOMSVGLengthList.idl
nsIDOMSVGLineElement.idl
nsIDOMSVGLocatable.idl
nsIDOMSVGMatrix.idl
nsIDOMSVGNumber.idl
nsIDOMSVGNumberList.idl
nsIDOMSVGPathElement.idl
nsIDOMSVGPathSeg.idl
nsIDOMSVGPathSegList.idl
@ -27,6 +33,10 @@ nsIDOMSVGRect.idl
nsIDOMSVGRectElement.idl
nsIDOMSVGSVGElement.idl
nsIDOMSVGStylable.idl
nsIDOMSVGTextContentElement.idl
nsIDOMSVGTextElement.idl
nsIDOMSVGTextPositioningElem.idl
nsIDOMSVGTransform.idl
nsIDOMSVGTransformList.idl
nsIDOMSVGTransformable.idl
nsIDOMSVGTSpanElement.idl

Просмотреть файл

@ -30,7 +30,10 @@ XPIDL_MODULE = dom_svg
XPIDLSRCS = \
nsIDOMSVGAnimatedEnumeration.idl \
nsIDOMSVGAnimatedLength.idl \
nsIDOMSVGAnimatedLengthList.idl \
nsIDOMSVGAnimatedNumberList.idl \
nsIDOMSVGAnimatedPathData.idl \
nsIDOMSVGAnimatedPoints.idl \
nsIDOMSVGAnimPresAspRatio.idl \
@ -44,9 +47,12 @@ XPIDLSRCS = \
nsIDOMSVGForeignObjectElem.idl \
nsIDOMSVGGElement.idl \
nsIDOMSVGLength.idl \
nsIDOMSVGLengthList.idl \
nsIDOMSVGLineElement.idl \
nsIDOMSVGLocatable.idl \
nsIDOMSVGMatrix.idl \
nsIDOMSVGNumber.idl \
nsIDOMSVGNumberList.idl \
nsIDOMSVGPathElement.idl \
nsIDOMSVGPathSeg.idl \
nsIDOMSVGPathSegList.idl \
@ -56,12 +62,16 @@ XPIDLSRCS = \
nsIDOMSVGPolylineElement.idl \
nsIDOMSVGPresAspectRatio.idl \
nsIDOMSVGRect.idl \
nsIDOMSVGRectElement.idl \
nsIDOMSVGRectElement.idl \
nsIDOMSVGSVGElement.idl \
nsIDOMSVGStylable.idl \
nsIDOMSVGStylable.idl \
nsIDOMSVGTextContentElement.idl \
nsIDOMSVGTextElement.idl \
nsIDOMSVGTextPositioningElem.idl \
nsIDOMSVGTransform.idl \
nsIDOMSVGTransformList.idl \
nsIDOMSVGTransformable.idl \
nsIDOMSVGTransformable.idl \
nsIDOMSVGTSpanElement.idl \
$(NULL)
include $(topsrcdir)/config/rules.mk

Просмотреть файл

@ -27,39 +27,49 @@ DEPTH=..\..\..\..
MODULE=dom
XPIDL_MODULE=dom_svg
XPIDLSRCS = \
.\nsIDOMSVGAnimatedLength.idl \
.\nsIDOMSVGAnimatedPathData.idl \
.\nsIDOMSVGAnimatedPoints.idl \
.\nsIDOMSVGAnimPresAspRatio.idl \
.\nsIDOMSVGAnimatedRect.idl \
.\nsIDOMSVGAnimTransformList.idl \
.\nsIDOMSVGCircleElement.idl \
.\nsIDOMSVGDocument.idl \
.\nsIDOMSVGElement.idl \
.\nsIDOMSVGEllipseElement.idl \
.\nsIDOMSVGFitToViewBox.idl \
.\nsIDOMSVGForeignObjectElem.idl \
.\nsIDOMSVGGElement.idl \
.\nsIDOMSVGLength.idl \
.\nsIDOMSVGLineElement.idl \
.\nsIDOMSVGLocatable.idl \
.\nsIDOMSVGMatrix.idl \
.\nsIDOMSVGPathElement.idl \
.\nsIDOMSVGPathSeg.idl \
.\nsIDOMSVGPathSegList.idl \
.\nsIDOMSVGPoint.idl \
.\nsIDOMSVGPointList.idl \
.\nsIDOMSVGPolygonElement.idl \
.\nsIDOMSVGPolylineElement.idl \
.\nsIDOMSVGPresAspectRatio.idl \
.\nsIDOMSVGRect.idl \
.\nsIDOMSVGRectElement.idl \
.\nsIDOMSVGSVGElement.idl \
.\nsIDOMSVGStylable.idl \
.\nsIDOMSVGTransform.idl \
.\nsIDOMSVGTransformList.idl \
.\nsIDOMSVGTransformable.idl \
$(NULL)
XPIDLSRCS = \
.\nsIDOMSVGAnimatedEnumeration.idl \
.\nsIDOMSVGAnimatedLength.idl \
.\nsIDOMSVGAnimatedLengthList.idl \
.\nsIDOMSVGAnimatedNumberList.idl \
.\nsIDOMSVGAnimatedPathData.idl \
.\nsIDOMSVGAnimatedPoints.idl \
.\nsIDOMSVGAnimPresAspRatio.idl \
.\nsIDOMSVGAnimatedRect.idl \
.\nsIDOMSVGAnimTransformList.idl \
.\nsIDOMSVGCircleElement.idl \
.\nsIDOMSVGDocument.idl \
.\nsIDOMSVGElement.idl \
.\nsIDOMSVGEllipseElement.idl \
.\nsIDOMSVGFitToViewBox.idl \
.\nsIDOMSVGForeignObjectElem.idl \
.\nsIDOMSVGGElement.idl \
.\nsIDOMSVGLength.idl \
.\nsIDOMSVGLengthList.idl \
.\nsIDOMSVGLineElement.idl \
.\nsIDOMSVGLocatable.idl \
.\nsIDOMSVGMatrix.idl \
.\nsIDOMSVGNumber.idl \
.\nsIDOMSVGNumberList.idl \
.\nsIDOMSVGPathElement.idl \
.\nsIDOMSVGPathSeg.idl \
.\nsIDOMSVGPathSegList.idl \
.\nsIDOMSVGPoint.idl \
.\nsIDOMSVGPointList.idl \
.\nsIDOMSVGPolygonElement.idl \
.\nsIDOMSVGPolylineElement.idl \
.\nsIDOMSVGPresAspectRatio.idl \
.\nsIDOMSVGRect.idl \
.\nsIDOMSVGRectElement.idl \
.\nsIDOMSVGSVGElement.idl \
.\nsIDOMSVGStylable.idl \
.\nsIDOMSVGTextContentElement.idl \
.\nsIDOMSVGTextElement.idl \
.\nsIDOMSVGTextPositioningElem.idl \
.\nsIDOMSVGTransform.idl \
.\nsIDOMSVGTransformList.idl \
.\nsIDOMSVGTransformable.idl \
.\nsIDOMSVGTSpanElement.idl \
$(NULL)
include <$(DEPTH)\config\rules.mak>

Просмотреть файл

@ -0,0 +1,47 @@
/* -*- 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(73b101bd-797b-470f-9308-c24c64278bcd)]
interface nsIDOMSVGAnimatedEnumeration : nsISupports
{
attribute unsigned short baseVal;
// raises DOMException on setting
readonly attribute unsigned short animVal;
};

Просмотреть файл

@ -0,0 +1,48 @@
/* -*- 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"
interface nsIDOMSVGLengthList;
[scriptable, uuid(bfa6e42b-bc9d-404d-8688-729fdbfff801)]
interface nsIDOMSVGAnimatedLengthList : nsISupports
{
readonly attribute nsIDOMSVGLengthList baseVal;
readonly attribute nsIDOMSVGLengthList animVal;
};

Просмотреть файл

@ -0,0 +1,48 @@
/* -*- 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"
interface nsIDOMSVGNumberList;
[scriptable, uuid(93ebb030-f82d-4f8e-b133-d1b5abb73cf3)]
interface nsIDOMSVGAnimatedNumberList : nsISupports
{
readonly attribute nsIDOMSVGNumberList baseVal;
readonly attribute nsIDOMSVGNumberList animVal;
};

Просмотреть файл

@ -0,0 +1,63 @@
/* -*- 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"
interface nsIDOMSVGLength;
[scriptable, uuid(a8760fcd-3de5-446a-a009-5cf877e7a4df)]
interface nsIDOMSVGLengthList : nsISupports
{
readonly attribute unsigned long numberOfItems;
void clear();
// raises(nsIDOMDOMException);
nsIDOMSVGLength initialize(in nsIDOMSVGLength newItem );
// raises(nsIDOMDOMException, nsIDOMSVGException);
nsIDOMSVGLength getItem(in unsigned long index);
// raises(nsIDOMDOMException);
nsIDOMSVGLength insertItemBefore(in nsIDOMSVGLength newItem, in unsigned long index);
// raises(nsIDOMDOMException, nsIDOMSVGException);
nsIDOMSVGLength replaceItem(in nsIDOMSVGLength newItem, in unsigned long index);
// raises(nsIDOMDOMException, nsIDOMSVGException);
nsIDOMSVGLength removeItem(in unsigned long index);
// raises(nsIDOMDOMException);
nsIDOMSVGLength appendItem(in nsIDOMSVGLength newItem);
// raises(nsIDOMDOMException, nsIDOMSVGException);
};

Просмотреть файл

@ -0,0 +1,50 @@
/* -*- 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(98575762-a936-4ecf-a226-b74c3a2981b4)]
interface nsIDOMSVGNumber : nsISupports
{
attribute float value;
// raises DOMException on setting
};

Просмотреть файл

@ -0,0 +1,63 @@
/* -*- 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"
interface nsIDOMSVGNumber;
[scriptable, uuid(59364ec4-faf1-460f-bf58-e6a6a2769a3a)]
interface nsIDOMSVGNumberList : nsISupports
{
readonly attribute unsigned long numberOfItems;
void clear();
// raises(nsIDOMDOMException);
nsIDOMSVGNumber initialize(in nsIDOMSVGNumber newItem );
// raises(nsIDOMDOMException, nsIDOMSVGException);
nsIDOMSVGNumber getItem(in unsigned long index);
// raises(nsIDOMDOMException);
nsIDOMSVGNumber insertItemBefore(in nsIDOMSVGNumber newItem, in unsigned long index);
// raises(nsIDOMDOMException, nsIDOMSVGException);
nsIDOMSVGNumber replaceItem(in nsIDOMSVGNumber newItem, in unsigned long index);
// raises(nsIDOMDOMException, nsIDOMSVGException);
nsIDOMSVGNumber removeItem(in unsigned long index);
// raises(nsIDOMDOMException);
nsIDOMSVGNumber appendItem(in nsIDOMSVGNumber newItem);
// raises(nsIDOMDOMException, nsIDOMSVGException);
};

Просмотреть файл

@ -0,0 +1,44 @@
/* -*- 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 "nsIDOMSVGTextPositioningElem.idl"
[scriptable, uuid(4a23cb1f-cf1e-437e-9524-8756f7928b2e)]
interface nsIDOMSVGTSpanElement : nsIDOMSVGTextPositioningElement
{
};

Просмотреть файл

@ -0,0 +1,88 @@
/* -*- 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 "nsIDOMSVGElement.idl"
interface nsIDOMSVGAnimatedLength;
interface nsIDOMSVGAnimatedEnumeration;
interface nsIDOMSVGPoint;
interface nsIDOMSVGRect;
[scriptable, uuid(87ad94bc-07c9-412b-b2d8-de245a2e84a5)]
interface nsIDOMSVGTextContentElement
: nsIDOMSVGElement
/*
The SVG DOM makes use of multiple interface inheritance.
Since XPCOM only supports single interface inheritance,
the best thing that we can do is to promise that whenever
an object implements _this_ interface it will also
implement the following interfaces. (We then have to QI to
hop between them.)
nsIDOMSVGTests,
nsIDOMSVGLangSpace,
nsIDOMSVGExternalResourcesRequired,
nsIDOMSVGStylable,
events::nsIDOMEventTarget
*/
{
// lengthAdjust Types
const unsigned short LENGTHADJUST_UNKNOWN = 0;
const unsigned short LENGTHADJUST_SPACING = 1;
const unsigned short LENGTHADJUST_SPACINGANDGLYPHS = 2;
readonly attribute nsIDOMSVGAnimatedLength textLength;
readonly attribute nsIDOMSVGAnimatedEnumeration lengthAdjust;
long getNumberOfChars();
float getComputedTextLength();
float getSubStringLength(in unsigned long charnum, in unsigned long nchars);
// raises(DOMException);
nsIDOMSVGPoint getStartPositionOfChar(in unsigned long charnum);
// raises(DOMException);
nsIDOMSVGPoint getEndPositionOfChar(in unsigned long charnum);
// raises(DOMException);
nsIDOMSVGRect getExtentOfChar(in unsigned long charnum);
// raises(DOMException);
float getRotationOfChar(in unsigned long charnum);
// raises(DOMException);
long getCharNumAtPosition(in nsIDOMSVGPoint point);
void selectSubString(in unsigned long charnum, in unsigned long nchars);
// raises(DOMException);
};

Просмотреть файл

@ -0,0 +1,54 @@
/* -*- 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 "nsIDOMSVGTextPositioningElem.idl"
[scriptable, uuid(6d43b1b4-efb6-426d-9e65-4420c3e24688)]
interface nsIDOMSVGTextElement : nsIDOMSVGTextPositioningElement
/*
The SVG DOM makes use of multiple interface inheritance.
Since XPCOM only supports single interface inheritance,
the best thing that we can do is to promise that whenever
an object implements _this_ interface it will also
implement the following interfaces. (We then have to QI to
hop between them.)
nsIDOMSVGTransformable
*/
{
};

Просмотреть файл

@ -0,0 +1,52 @@
/* -*- 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 "nsIDOMSVGTextContentElement.idl"
interface nsIDOMSVGAnimatedLengthList;
interface nsIDOMSVGAnimatedNumberList;
[scriptable, uuid(5d052835-8cb0-442c-9754-a8e616db1f89)]
interface nsIDOMSVGTextPositioningElement : nsIDOMSVGTextContentElement
{
readonly attribute nsIDOMSVGAnimatedLengthList x;
readonly attribute nsIDOMSVGAnimatedLengthList y;
readonly attribute nsIDOMSVGAnimatedLengthList dx;
readonly attribute nsIDOMSVGAnimatedLengthList dy;
readonly attribute nsIDOMSVGAnimatedNumberList rotate;
};