2006-07-30 Eric Seidel <eric@eseidel.com>
authoreseidel <eseidel@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 30 Jul 2006 04:31:53 +0000 (04:31 +0000)
committereseidel <eseidel@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 30 Jul 2006 04:31:53 +0000 (04:31 +0000)
        Reviewed by gramps!

        Remove some unused SVG code.

        * ksvg2/ecma/Ecma.cpp: Removed.
        * ksvg2/ecma/Ecma.h: Removed.
        * ksvg2/ecma/GlobalObject.cpp: remove a couple dead functions.
        * ksvg2/ecma/GlobalObject.h: add a comment about this dead code.
        * ksvg2/ecma/SVGLookup.h: Removed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@15699 268f45cc-cd09-0410-ab3c-d52691b4dbfc

WebCore/ChangeLog
WebCore/ksvg2/ecma/Ecma.cpp [deleted file]
WebCore/ksvg2/ecma/Ecma.h [deleted file]
WebCore/ksvg2/ecma/GlobalObject.cpp
WebCore/ksvg2/ecma/GlobalObject.h
WebCore/ksvg2/ecma/SVGLookup.h [deleted file]

index 1e968fe..70a605c 100644 (file)
@@ -1,3 +1,15 @@
+2006-07-30  Eric Seidel  <eric@eseidel.com>
+
+        Reviewed by gramps!
+
+        Remove some unused SVG code.
+
+        * ksvg2/ecma/Ecma.cpp: Removed.
+        * ksvg2/ecma/Ecma.h: Removed.
+        * ksvg2/ecma/GlobalObject.cpp: remove a couple dead functions.
+        * ksvg2/ecma/GlobalObject.h: add a comment about this dead code.
+        * ksvg2/ecma/SVGLookup.h: Removed.
+
 2006-07-29  Darin Adler  <darin@apple.com>
 
         - Removed tabs from these source files that still had them.
diff --git a/WebCore/ksvg2/ecma/Ecma.cpp b/WebCore/ksvg2/ecma/Ecma.cpp
deleted file mode 100644 (file)
index 2cdf673..0000000
+++ /dev/null
@@ -1,530 +0,0 @@
-/*
-    Copyright (C) 2004, 2005 Nikolas Zimmermann <wildfox@kde.org>
-                  2004, 2005 Rob Buis <buis@kde.org>
-
-    This file is part of the KDE project
-
-    This library is free software; you can redistribute it and/or
-    modify it under the terms of the GNU Library General Public
-    License as published by the Free Software Foundation; either
-    version 2 of the License, or (at your option) any later version.
-
-    This library is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-    Library General Public License for more details.
-
-    You should have received a copy of the GNU Library General Public License
-    along with this library; see the file COPYING.LIB.  If not, write to
-    the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-    Boston, MA 02111-1307, USA.
-*/
-
-#include "config.h"
-#if SVG_SUPPORT
-#include <kdom/Namespace.h>
-#include <kdom/events/Event.h>
-#include <kdom/core/Node.h>
-#include <kdom/events/Event.h>
-
-#include "ksvg.h"
-#include "Ecma.h"
-#include "SVGPaint.h"
-#include "SVGEvent.h"
-#include "SVGColor.h"
-#include "SVGPathSeg.h"
-#include "SVGAElement.h"
-#include "SVGDocument.h"
-#include "SVGGElement.h"
-#include "SVGPaint.h"
-#include "GlobalObject.h"
-#include "SVGColor.h"
-#include "SVGZoomEvent.h"
-#include "SVGUseElement.h"
-#include "SVGSVGElement.h"
-#include "SVGPathSegArc.h"
-#include "SVGSetElement.h"
-#include "EcmaInterface.h"
-#include "SVGDescElement.h"
-#include "SVGRectElement.h"
-#include "SVGDefsElement.h"
-#include "SVGStopElement.h"
-#include "SVGPathElement.h"
-#include "SVGLineElement.h"
-#ifdef TEXTSUPPORT
-#include "SVGTextElement.h"
-#include "SVGTSpanElement.h"
-#endif
-#include "SVGViewElement.h"
-#include "SVGImageElement.h"
-#include "SVGTitleElement.h"
-#include "SVGFilterElement.h"
-#include "SVGFEBlendElement.h"
-#include "SVGFEFloodElement.h"
-#include "SVGFEOffsetElement.h"
-#include "SVGFEImageElement.h"
-#include "SVGFEMergeElement.h"
-#include "SVGFEMergeNodeElement.h"
-#include "SVGStyleElement.h"
-#include "SVGPathSegMoveto.h"
-#include "SVGPathSegLineto.h"
-#include "SVGSwitchElement.h"
-#include "SVGScriptElement.h"
-#include "SVGCircleElement.h"
-#include "SVGSymbolElement.h"
-#include "SVGZoomEvent.h"
-#include "SVGMarkerElement.h"
-#include "SVGEllipseElement.h"
-#include "SVGAnimateElement.h"
-#include "SVGPolygonElement.h"
-#include "SVGPatternElement.h"
-#include "SVGMaskElement.h"
-#include "SVGPolylineElement.h"
-#include "SVGClipPathElement.h"
-#include "SVGPathSegClosePath.h"
-#include "SVGStyledElement.h"
-#include "SVGFECompositeElement.h"
-#include "SVGFEColorMatrixElement.h"
-#include "SVGFEGaussianBlurElement.h"
-#include "SVGAnimateColorElement.h"
-#include "SVGPathSegCurvetoCubic.h"
-#include "SVGLinearGradientElement.h"
-#include "SVGRadialGradientElement.h"
-#include "SVGPathSegLinetoVertical.h"
-#include "SVGPathSegLinetoHorizontal.h"
-#include "SVGPathSegCurvetoQuadratic.h"
-#include "SVGAnimateTransformElement.h"
-#include "SVGPathSegCurvetoCubicSmooth.h"
-#include "SVGPathSegCurvetoQuadraticSmooth.h"
-
-using namespace WebCore;
-
-Ecma::Ecma(Document *doc) : Ecma(doc)
-{
-}
-
-Ecma::~Ecma()
-{
-}
-
-void Ecma::setupDocument(Document *document)
-{
-    ASSERT(String(document->namespaceURI()) == NS_SVG)
-    SVGDocument *svgDocument = static_cast<SVGDocument *>(document);
-    
-    // Create base bridge for document
-    SVGDocument docObj(svgDocument);
-
-    KJS::JSObject *kjsObj = docObj.bridge(interpreter()->globalExec());
-
-    interpreter()->putDOMObject(svgDocument, kjsObj);
-    svgDocument->deref();
-}
-
-KJS::JSObject *Ecma::inheritedGetDOMNode(KJS::ExecState *exec, Node n)
-{
-    // Use svg element ids to distinguish between svg elements.
-    KJS::JSObject *ret = 0;
-
-    Node *nodeImpl = static_cast<Node *>(n.handle());
-    if(!nodeImpl)
-        return ret;
-
-    if(nodeImpl->namespaceURI() != NS_SVG)
-        return ret;
-
-    // Special case for our document
-    if(n.nodeType() == DOCUMENT_NODE)
-        return SVGDocument(n).bridge(exec);
-
-    switch(nodeImpl->getIDAttribute())
-    {
-        // TODO: Add all remaining nodes here...
-        case ID_SVG:
-        {
-            ret = SVGSVGElement(n).bridge(exec);
-            break;
-        }
-        case ID_STYLE:
-        {
-            ret = SVGStyleElement(n).bridge(exec);
-            break;
-        }
-        case ID_SCRIPT:
-        {
-            ret = SVGScriptElement(n).bridge(exec);
-            break;
-        }
-        case ID_RECT:
-        {
-            ret = SVGRectElement(n).bridge(exec);
-            break;
-        }
-        case ID_CIRCLE:
-        {
-            ret = SVGCircleElement(n).bridge(exec);
-            break;
-        }
-        case ID_ELLIPSE:
-        {
-            ret = SVGEllipseElement(n).bridge(exec);
-            break;
-        }
-        case ID_POLYLINE:
-        {
-            ret = SVGPolylineElement(n).bridge(exec);
-            break;
-        }
-        case ID_POLYGON:
-        {
-            ret = SVGPolygonElement(n).bridge(exec);
-            break;
-        }
-        case ID_G:
-        {
-            ret = SVGGElement(n).bridge(exec);
-            break;
-        }
-        case ID_SWITCH:
-        {
-            ret = SVGSwitchElement(n).bridge(exec);
-            break;
-        }
-        case ID_DEFS:
-        {
-            ret = SVGDefsElement(n).bridge(exec);
-            break;
-        }
-        case ID_STOP:
-        {
-            ret = SVGStopElement(n).bridge(exec);
-            break;
-        }
-        case ID_PATH:
-        {
-            ret = SVGPathElement(n).bridge(exec);
-            break;
-        }
-        case ID_IMAGE:
-        {
-            ret = SVGImageElement(n).bridge(exec);
-            break;
-        }
-        case ID_CLIPPATH:
-        {
-            ret = SVGClipPathElement(n).bridge(exec);
-            break;
-        }
-        case ID_A:
-        {
-            ret = SVGAElement(n).bridge(exec);
-            break;
-        }
-        case ID_LINE:
-        {
-            ret = SVGLineElement(n).bridge(exec);
-            break;
-        }
-        case ID_LINEARGRADIENT:
-        {
-            ret = SVGLinearGradientElement(n).bridge(exec);
-            break;
-        }
-        case ID_RADIALGRADIENT:
-        {
-            ret = SVGRadialGradientElement(n).bridge(exec);
-            break;
-        }
-        case ID_TITLE:
-        {
-            ret = SVGTitleElement(n).bridge(exec);
-            break;
-        }
-        case ID_DESC:
-        {
-            ret = SVGDescElement(n).bridge(exec);
-            break;
-        }
-        case ID_SYMBOL:
-        {
-            ret = SVGSymbolElement(n).bridge(exec);
-            break;
-        }
-        case ID_USE:
-        {
-            ret = SVGUseElement(n).bridge(exec);
-            break;
-        }
-        case ID_PATTERN:
-        {
-            ret = SVGPatternElement(n).bridge(exec);
-            break;
-        }
-        case ID_MASK:
-        {
-            ret = SVGMaskElement(n).bridge(exec);
-            break;
-        }
-        case ID_ANIMATECOLOR:
-        {
-            ret = SVGAnimateColorElement(n).bridge(exec);
-            break;
-        }
-        case ID_ANIMATETRANSFORM:
-        {
-            ret = SVGAnimateTransformElement(n).bridge(exec);
-            break;
-        }
-        case ID_SET:
-        {
-            ret = SVGSetElement(n).bridge(exec);
-            break;
-        }
-        case ID_ANIMATE:
-        {
-            ret = SVGAnimateElement(n).bridge(exec);
-            break;
-        }
-        case ID_MARKER:
-        {
-            ret = SVGMarkerElement(n).bridge(exec);
-            break;
-        }
-        case ID_VIEW:
-        {
-            ret = SVGViewElement(n).bridge(exec);
-            break;
-        }
-        case ID_FILTER:
-        {
-            ret = SVGFilterElement(n).bridge(exec);
-            break;
-        }
-        case ID_FEGAUSSIANBLUR:
-        {
-            ret = SVGFEGaussianBlurElement(n).bridge(exec);
-            break;
-        }
-        case ID_FEFLOOD:
-        {
-            ret = SVGFEFloodElement(n).bridge(exec);
-            break;
-        }
-        case ID_FEBLEND:
-        {
-            ret = SVGFEBlendElement(n).bridge(exec);
-            break;
-        }
-        case ID_FEOFFSET:
-        {
-            ret = SVGFEOffsetElement(n).bridge(exec);
-            break;
-        }
-        case ID_FECOMPOSITE:
-        {
-            ret = SVGFECompositeElement(n).bridge(exec);
-            break;
-        }
-        case ID_FECOLORMATRIX:
-        {
-            ret = SVGFEColorMatrixElement(n).bridge(exec);
-            break;
-        }
-        case ID_FEIMAGE:
-        {
-            ret = SVGFEImageElement(n).bridge(exec);
-            break;
-        }
-        case ID_FEMERGE:
-        {
-            ret = SVGFEMergeElement(n).bridge(exec);
-            break;
-        }
-        case ID_FEMERGENODE:
-        {
-            ret = SVGFEMergeNodeElement(n).bridge(exec);
-            break;
-        }
-#ifdef TEXTSUPPORT
-        case ID_TEXT:
-        {
-            ret = SVGTextElement(n).bridge(exec);
-            break;
-        }
-        case ID_TSPAN:
-        {
-            ret = SVGTSpanElement(n).bridge(exec);
-            break;
-        }
-#endif
-        default: // Maybe it's an SVG?Element, w/o ecma bindings so far...
-            ret = SVGElement(n).bridge(exec);
-    }
-
-    return ret;
-}
-
-KJS::JSObject *Ecma::inheritedGetDOMEvent(KJS::ExecState *exec, Event e)
-{
-    Event *event = e.handle();
-    if(!event)
-        return 0;
-
-    EventImplType identifier = event->identifier();
-    if(identifier != TypeLastEvent)
-        return 0;
-
-    SVGEvent *test1 = dynamic_cast<SVGEvent *>(event);
-    if(test1)
-        return SVGEvent(test1).bridge(exec);
-
-    SVGZoomEvent *test2 = dynamic_cast<SVGZoomEvent *>(event);
-    if(test2)
-        return SVGZoomEvent(test2).bridge(exec);
-
-    return 0;
-}
-
-KJS::JSObject *Ecma::inheritedGetDOMCSSValue(KJS::ExecState *exec, CSSValue c)
-{
-    CSSValue *impl = c.handle();
-
-    // Keep the order, as SVGPaint inherits from SVGColor...
-    SVGPaint *test1 = dynamic_cast<SVGPaint *>(impl);
-    if(test1)
-        return SVGPaint(test1).bridge(exec);
-
-    SVGColor *test2 = dynamic_cast<SVGColor *>(impl);
-    if(test2)
-        return SVGColor(test2).bridge(exec);
-
-    return 0;
-}
-
-KJS::JSValue *WebCore::getSVGPathSeg(KJS::ExecState *exec, SVGPathSeg s)
-{
-    if(s == SVGPathSeg::null)
-        return KJS::jsNull();
-
-    ScriptInterpreter *interpreter = static_cast<ScriptInterpreter *>(exec->interpreter());
-    if(!interpreter)
-        return KJS::jsNull();
-    
-    // Reuse existing bridge, if possible
-    KJS::JSObject *request = interpreter->getDOMObject(s.handle());
-    if(request)
-        return request;
-    
-    KJS::JSObject *ret = 0;
-    unsigned short type = s.pathSegType();
-
-    switch(type)
-    {
-        case PATHSEG_CLOSEPATH:
-        {
-            ret = SVGPathSegClosePath(s).bridge(exec);
-            break;
-        }
-        case PATHSEG_MOVETO_ABS:
-        {
-            ret = SVGPathSegMovetoAbs(s).bridge(exec);
-            break;
-        }
-        case PATHSEG_MOVETO_REL:
-        {
-            ret = SVGPathSegMovetoRel(s).bridge(exec);
-            break;
-        }
-        case PATHSEG_LINETO_ABS:
-        {
-            ret = SVGPathSegLinetoAbs(s).bridge(exec);
-            break;
-        }
-        case PATHSEG_LINETO_REL:
-        {
-            ret = SVGPathSegLinetoRel(s).bridge(exec);
-            break;
-        }
-        case PATHSEG_CURVETO_CUBIC_ABS:
-        {
-            ret = SVGPathSegCurvetoCubicAbs(s).bridge(exec);
-            break;
-        }
-        case PATHSEG_CURVETO_CUBIC_REL:
-        {
-            ret = SVGPathSegCurvetoCubicRel(s).bridge(exec);
-            break;
-        }
-        case PATHSEG_CURVETO_QUADRATIC_ABS:
-        {
-            ret = SVGPathSegCurvetoQuadraticAbs(s).bridge(exec);
-            break;
-        }
-        case PATHSEG_CURVETO_QUADRATIC_REL:
-        {
-            ret = SVGPathSegCurvetoQuadraticRel(s).bridge(exec);
-            break;
-        }
-        case PATHSEG_ARC_ABS:
-        {
-            ret = SVGPathSegArcAbs().bridge(exec);
-            break;
-        }
-        case PATHSEG_ARC_REL:
-        {
-            ret = SVGPathSegArcRel(s).bridge(exec);
-            break;
-        }
-        case PATHSEG_LINETO_HORIZONTAL_ABS:
-        {
-            ret = SVGPathSegLinetoHorizontalAbs(s).bridge(exec);
-            break;
-        }
-        case PATHSEG_LINETO_HORIZONTAL_REL:
-        {
-            ret = SVGPathSegLinetoHorizontalRel(s).bridge(exec);
-            break;
-        }
-        case PATHSEG_LINETO_VERTICAL_ABS:
-        {
-            ret = SVGPathSegLinetoVerticalAbs(s).bridge(exec);
-            break;
-        }
-        case PATHSEG_LINETO_VERTICAL_REL:
-        {
-            ret = SVGPathSegLinetoVerticalRel(s).bridge(exec);
-            break;
-        }
-        case PATHSEG_CURVETO_CUBIC_SMOOTH_ABS:
-        {
-            ret = SVGPathSegCurvetoCubicSmoothAbs(s).bridge(exec);
-            break;
-        }
-        case PATHSEG_CURVETO_CUBIC_SMOOTH_REL:
-        {
-            ret = SVGPathSegCurvetoCubicSmoothRel(s).bridge(exec);
-            break;
-        }
-        case PATHSEG_CURVETO_QUADRATIC_SMOOTH_ABS:
-        {
-            ret = SVGPathSegCurvetoQuadraticSmoothAbs(s).bridge(exec);
-            break;
-        }
-        case PATHSEG_CURVETO_QUADRATIC_SMOOTH_REL:
-        {
-            ret = SVGPathSegCurvetoQuadraticSmoothRel(s).bridge(exec);
-            break;
-        }
-        default:
-            ret = s.bridge(exec);
-    }
-
-    interpreter->putDOMObject(s.handle(), ret);
-    return ret;
-}
-
-
-
-// vim:ts=4:noet
-#endif // SVG_SUPPORT
-
diff --git a/WebCore/ksvg2/ecma/Ecma.h b/WebCore/ksvg2/ecma/Ecma.h
deleted file mode 100644 (file)
index 8d00575..0000000
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
-    Copyright (C) 2004, 2005 Nikolas Zimmermann <wildfox@kde.org>
-                  2004, 2005 Rob Buis <buis@kde.org>
-
-    This file is part of the KDE project
-
-    This library is free software; you can redistribute it and/or
-    modify it under the terms of the GNU Library General Public
-    License as published by the Free Software Foundation; either
-    version 2 of the License, or (at your option) any later version.
-
-    This library is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-    Library General Public License for more details.
-
-    You should have received a copy of the GNU Library General Public License
-    along with this library; see the file COPYING.LIB.  If not, write to
-    the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-    Boston, MA 02111-1307, USA.
-*/
-
-#ifndef KSVG_Ecma_H
-#define KSVG_Ecma_H
-#if SVG_SUPPORT
-
-#include <kdom/ecma/Ecma.h>
-
-namespace WebCore
-{
-    class Node;
-    class Document;
-};
-
-namespace WebCore
-{
-    class Ecma : public Ecma
-    {
-    public:
-        Ecma(Document *doc);
-        virtual ~Ecma();
-
-        // We are a KDOM user, so implement the hook to convert svg elements to kjs objects
-        virtual KJS::JSObject *inheritedGetDOMNode(KJS::ExecState *exec, Node n);
-        virtual KJS::JSObject *inheritedGetDOMEvent(KJS::ExecState *exec, Event e);
-        virtual KJS::JSObject *inheritedGetDOMCSSValue(KJS::ExecState *exec, CSSValue c);
-
-    protected:
-        virtual void setupDocument(Document *document);
-    };
-
-    // Helpers
-    class SVGPathSeg;
-    KJS::JSValue *getSVGPathSeg(KJS::ExecState *exec, SVGPathSeg s);
-};
-
-#endif // SVG_SUPPORT
-#endif
-
-// vim:ts=4:noet
index f7dad4e..dc67557 100644 (file)
@@ -56,12 +56,6 @@ GlobalObject::~GlobalObject()
 {
 }
 
-void GlobalObject::afterTimeout() const
-{
-    if(doc())
-        doc()->updateRendering();
-}
-
 KJS::JSValue *GlobalObject::get(KJS::ExecState *exec, const KJS::Identifier &p) const
 {
     kdDebug(26004) << "WebCore::GlobalObject (" << this << ")::get " << p.deprecatedString() << endl;
index bb5745a..c3e8bd6 100644 (file)
@@ -19,8 +19,8 @@
     Boston, MA 02111-1307, USA.
 */
 
-#ifndef KSVG_GlobalObject_H
-#define KSVG_GlobalObject_H
+#ifndef GlobalObject_H
+#define GlobalObject_H
 #if SVG_SUPPORT
 
 #include <kdom/ecma/GlobalObject.h>
 namespace WebCore
 {
     class Document;
-}
-
-namespace WebCore
-{
+    
+    // FIXME: This is all dead code.  This will need to be
+    // rolled into the Window object at some point (using the new idl binding method)
+    // This is left here only as example code for when the move occurs
+    
     class GlobalObject : public GlobalObject
     {
     public:
         GlobalObject(Document *doc);
         virtual ~GlobalObject();
 
-        virtual void afterTimeout() const;
         virtual KJS::JSValue *get(KJS::ExecState *exec, const KJS::Identifier &propertyName) const;
 
         // EcmaScript specific stuff - only needed for GlobalObject
diff --git a/WebCore/ksvg2/ecma/SVGLookup.h b/WebCore/ksvg2/ecma/SVGLookup.h
deleted file mode 100644 (file)
index cebda48..0000000
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
-    Copyright (C) 2004, 2005 Nikolas Zimmermann <wildfox@kde.org>
-                  2004, 2005 Rob Buis <buis@kde.org>
-
-    This file is part of the KDE project
-
-    This library is free software; you can redistribute it and/or
-    modify it under the terms of the GNU Library General Public
-    License as published by the Free Software Foundation; either
-    version 2 of the License, or (at your option) any later version.
-
-    This library is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-    Library General Public License for more details.
-
-    You should have received a copy of the GNU Library General Public License
-    along with this library; see the file COPYING.LIB.  If not, write to
-    the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-    Boston, MA 02111-1307, USA.
-*/
-
-#ifndef KSVG_SVGLookup_H
-#define KSVG_SVGLookup_H
-#if SVG_SUPPORT
-
-#include <kdom/ecma/DOMLookup.h>
-
-#define KSVG_INTERNAL(ClassName) KDOM_INTERNAL(ClassName)
-#define KSVG_INTERNAL_BASE(ClassName) \
-KSVG_INTERNAL(ClassName) \
-ClassName##Impl *handle() const { return impl; }
-
-// KSVG Internal helpers - convenience functions
-#define KSVG_DEFINE_CONSTRUCTOR(ClassName) ECMA_DEFINE_CONSTRUCTOR(KSVG, ClassName)
-#define KSVG_IMPLEMENT_CONSTRUCTOR(ClassName, Class) ECMA_IMPLEMENT_CONSTRUCTOR(KSVG, ClassName, Class)
-
-#define KSVG_DEFINE_PROTOTYPE(ClassName) ECMA_DEFINE_PROTOTYPE(KSVG, ClassName)
-#define KSVG_IMPLEMENT_PROTOFUNC(ClassFunc, Class) ECMA_IMPLEMENT_PROTOFUNC(KSVG, ClassFunc, Class)
-
-#define KSVG_IMPLEMENT_PROTOTYPE(ClassName,ClassProto,ClassFunc) ECMA_IMPLEMENT_PROTOTYPE(KSVG, ClassName, ClassProto, ClassFunc)
-
-#endif // SVG_SUPPORT
-#endif
-
-// vim:ts=4:noet