[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
parent 5b82204613
commit 5e60b1fc6f
13 changed files with 624 additions and 37 deletions

View File

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

View File

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

View File

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

View File

@ -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;
};

View File

@ -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;
};

View File

@ -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;
};

View File

@ -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);
};

View File

@ -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
};

View File

@ -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);
};

View File

@ -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
{
};

View File

@ -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);
};

View File

@ -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
*/
{
};

View File

@ -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;
};