You are viewing a plain text version of this content. The canonical link for it is here.
Posted to batik-commits@xmlgraphics.apache.org by ca...@apache.org on 2007/11/27 07:53:39 UTC

svn commit: r598530 - in /xmlgraphics/batik/trunk/sources/org/apache/batik: bridge/UserAgentAdapter.java swing/svg/AbstractJSVGComponent.java util/SVGFeatureStrings.java

Author: cam
Date: Mon Nov 26 22:53:38 2007
New Revision: 598530

URL: http://svn.apache.org/viewvc?rev=598530&view=rev
Log:
Factor out SVG feature strings that Batik supports, and make
UserAgentAdapter compile again.

Added:
    xmlgraphics/batik/trunk/sources/org/apache/batik/util/SVGFeatureStrings.java
Modified:
    xmlgraphics/batik/trunk/sources/org/apache/batik/bridge/UserAgentAdapter.java
    xmlgraphics/batik/trunk/sources/org/apache/batik/swing/svg/AbstractJSVGComponent.java

Modified: xmlgraphics/batik/trunk/sources/org/apache/batik/bridge/UserAgentAdapter.java
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/trunk/sources/org/apache/batik/bridge/UserAgentAdapter.java?rev=598530&r1=598529&r2=598530&view=diff
==============================================================================
--- xmlgraphics/batik/trunk/sources/org/apache/batik/bridge/UserAgentAdapter.java (original)
+++ xmlgraphics/batik/trunk/sources/org/apache/batik/bridge/UserAgentAdapter.java Mon Nov 26 22:53:38 2007
@@ -31,7 +31,9 @@
 import org.apache.batik.gvt.text.Mark;
 import org.apache.batik.util.ParsedURL;
 import org.apache.batik.util.SVGConstants;
+import org.apache.batik.util.SVGFeatureStrings;
 import org.apache.batik.util.XMLResourceDescriptor;
+
 import org.w3c.dom.Element;
 import org.w3c.dom.svg.SVGAElement;
 import org.w3c.dom.svg.SVGDocument;
@@ -64,9 +66,7 @@
      * by this user agent.
      */
     public void addStdFeatures() {
-        FEATURES.add(SVGConstants.SVG_ORG_W3C_SVG_FEATURE);
-        FEATURES.add(SVGConstants.SVG_ORG_W3C_SVG_LANG_FEATURE);
-        FEATURES.add(SVGConstants.SVG_ORG_W3C_SVG_STATIC_FEATURE);
+        SVGFeatureStrings.addSupportedFeatureStrings(FEATURES);
     }
 
     /**

Modified: xmlgraphics/batik/trunk/sources/org/apache/batik/swing/svg/AbstractJSVGComponent.java
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/trunk/sources/org/apache/batik/swing/svg/AbstractJSVGComponent.java?rev=598530&r1=598529&r2=598530&view=diff
==============================================================================
--- xmlgraphics/batik/trunk/sources/org/apache/batik/swing/svg/AbstractJSVGComponent.java (original)
+++ xmlgraphics/batik/trunk/sources/org/apache/batik/swing/svg/AbstractJSVGComponent.java Mon Nov 26 22:53:38 2007
@@ -75,7 +75,9 @@
 import org.apache.batik.util.ParsedURL;
 import org.apache.batik.util.RunnableQueue;
 import org.apache.batik.util.SVGConstants;
+import org.apache.batik.util.SVGFeatureStrings;
 import org.apache.batik.util.XMLResourceDescriptor;
+
 import org.w3c.dom.Document;
 import org.w3c.dom.DOMImplementation;
 import org.w3c.dom.Element;
@@ -3652,68 +3654,6 @@
 
     protected static final Set FEATURES = new HashSet();
     static {
-        // SVG 1.0 feature strings
-        FEATURES.add(SVGConstants.SVG_ORG_W3C_SVG_FEATURE);
-        FEATURES.add(SVGConstants.SVG_ORG_W3C_SVG_STATIC_FEATURE);
-        FEATURES.add(SVGConstants.SVG_ORG_W3C_SVG_ANIMATION_FEATURE);
-        FEATURES.add(SVGConstants.SVG_ORG_W3C_SVG_DYNAMIC_FEATURE);
-        FEATURES.add(SVGConstants.SVG_ORG_W3C_SVG_ALL_FEATURE);
-        FEATURES.add(SVGConstants.SVG_ORG_W3C_DOM_SVG_FEATURE);
-        FEATURES.add(SVGConstants.SVG_ORG_W3C_DOM_SVG_STATIC_FEATURE);
-        FEATURES.add(SVGConstants.SVG_ORG_W3C_DOM_SVG_ANIMATION_FEATURE);
-        FEATURES.add(SVGConstants.SVG_ORG_W3C_DOM_SVG_DYNAMIC_FEATURE);
-        FEATURES.add(SVGConstants.SVG_ORG_W3C_DOM_SVG_ALL_FEATURE);
-
-        // SVG 1.1 feature strings
-        // Due to SVG_SVG11_VIEWPORT_ATTRIBUTE_FEATURE not being supported
-        // FEATURES.add(SVGConstants.SVG_SVG11_SVG_FEATURE);
-        // FEATURES.add(SVGConstants.SVG_SVG11_SVG_STATIC_FEATURE);
-        // FEATURES.add(SVGConstants.SVG_SVG11_SVG_ANIMATION_FEATURE);
-        // FEATURES.add(SVGConstants.SVG_SVG11_SVG_DYNAMIC_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_SVG_DOM_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_SVG_DOM_STATIC_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_SVG_DOM_ANIMATION_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_SVG_DOM_DYNAMIC_FEATURE);
-
-        FEATURES.add(SVGConstants.SVG_SVG11_CORE_ATTRIBUTE_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_STRUCTURE_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_BASIC_STRUCTURE_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_CONTAINER_ATTRIBUTE_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_CONDITIONAL_PROCESSING_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_IMAGE_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_STYLE_FEATURE);
-        // 'clip' on various elements not supported
-        // FEATURES.add(SVGConstants.SVG_SVG11_VIEWPORT_ATTRIBUTE_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_SHAPE_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_TEXT_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_BASIC_TEXT_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_PAINT_ATTRIBUTE_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_BASIC_PAINT_ATTRIBUTE_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_OPACITY_ATTRIBUTE_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_GRAPHICS_ATTRIBUTE_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_BASIC_GRAPHICS_ATTRIBUTE_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_MARKER_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_COLOR_PROFILE_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_GRADIENT_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_PATTERN_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_CLIP_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_BASIC_CLIP_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_MASK_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_FILTER_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_BASIC_FILTER_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_DOCUMENT_EVENTS_ATTRIBUTE_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_GRAPHICAL_EVENTS_ATTRIBUTE_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_ANIMATION_EVENTS_ATTRIBUTE_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_CURSOR_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_HYPERLINKING_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_XLINK_FEATURE);
-        // externalResourcesRequired="" not supported
-        // FEATURES.add(SVGConstants.SVG_SVG11_EXTERNAL_RESOURCES_REQUIRED_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_VIEW_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_SCRIPT_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_ANIMATION_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_FONT_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_BASIC_FONT_FEATURE);
-        FEATURES.add(SVGConstants.SVG_SVG11_EXTENSIBILITY_FEATURE);
+        SVGFeatureStrings.addSupportedFeatureStrings(FEATURES);
     }
 }

Added: xmlgraphics/batik/trunk/sources/org/apache/batik/util/SVGFeatureStrings.java
URL: http://svn.apache.org/viewvc/xmlgraphics/batik/trunk/sources/org/apache/batik/util/SVGFeatureStrings.java?rev=598530&view=auto
==============================================================================
--- xmlgraphics/batik/trunk/sources/org/apache/batik/util/SVGFeatureStrings.java (added)
+++ xmlgraphics/batik/trunk/sources/org/apache/batik/util/SVGFeatureStrings.java Mon Nov 26 22:53:38 2007
@@ -0,0 +1,102 @@
+/*
+
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (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.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+
+ */
+package org.apache.batik.util;
+
+import java.util.Set;
+
+/**
+ * Exposes the SVG feature strings that Batik supports.
+ *
+ * @author <a href="mailto:cam%40mcc%2eid%2eau">Cameron McCormack</a>
+ * @version $Id$
+ */
+public class SVGFeatureStrings {
+
+    /**
+     * Adds a <code>String</code> to the specified {@link Set} corresponding
+     * to each SVG feature string that Batik supports.
+     *
+     * @param features The set to add feature strings to.
+     */
+    public static void addSupportedFeatureStrings(Set features) {
+        // SVG 1.0 feature strings
+        features.add(SVGConstants.SVG_ORG_W3C_SVG_FEATURE);
+        features.add(SVGConstants.SVG_ORG_W3C_SVG_STATIC_FEATURE);
+        features.add(SVGConstants.SVG_ORG_W3C_SVG_ANIMATION_FEATURE);
+        features.add(SVGConstants.SVG_ORG_W3C_SVG_DYNAMIC_FEATURE);
+        features.add(SVGConstants.SVG_ORG_W3C_SVG_ALL_FEATURE);
+        features.add(SVGConstants.SVG_ORG_W3C_DOM_SVG_FEATURE);
+        features.add(SVGConstants.SVG_ORG_W3C_DOM_SVG_STATIC_FEATURE);
+        features.add(SVGConstants.SVG_ORG_W3C_DOM_SVG_ANIMATION_FEATURE);
+        features.add(SVGConstants.SVG_ORG_W3C_DOM_SVG_DYNAMIC_FEATURE);
+        features.add(SVGConstants.SVG_ORG_W3C_DOM_SVG_ALL_FEATURE);
+
+        // SVG 1.1 feature strings
+        // Due to SVG_SVG11_VIEWPORT_ATTRIBUTE_FEATURE not being supported
+        // features.add(SVGConstants.SVG_SVG11_SVG_FEATURE);
+        // features.add(SVGConstants.SVG_SVG11_SVG_STATIC_FEATURE);
+        // features.add(SVGConstants.SVG_SVG11_SVG_ANIMATION_FEATURE);
+        // features.add(SVGConstants.SVG_SVG11_SVG_DYNAMIC_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_SVG_DOM_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_SVG_DOM_STATIC_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_SVG_DOM_ANIMATION_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_SVG_DOM_DYNAMIC_FEATURE);
+
+        features.add(SVGConstants.SVG_SVG11_CORE_ATTRIBUTE_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_STRUCTURE_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_BASIC_STRUCTURE_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_CONTAINER_ATTRIBUTE_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_CONDITIONAL_PROCESSING_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_IMAGE_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_STYLE_FEATURE);
+        // 'clip' on various elements not supported
+        // features.add(SVGConstants.SVG_SVG11_VIEWPORT_ATTRIBUTE_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_SHAPE_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_TEXT_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_BASIC_TEXT_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_PAINT_ATTRIBUTE_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_BASIC_PAINT_ATTRIBUTE_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_OPACITY_ATTRIBUTE_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_GRAPHICS_ATTRIBUTE_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_BASIC_GRAPHICS_ATTRIBUTE_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_MARKER_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_COLOR_PROFILE_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_GRADIENT_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_PATTERN_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_CLIP_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_BASIC_CLIP_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_MASK_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_FILTER_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_BASIC_FILTER_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_DOCUMENT_EVENTS_ATTRIBUTE_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_GRAPHICAL_EVENTS_ATTRIBUTE_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_ANIMATION_EVENTS_ATTRIBUTE_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_CURSOR_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_HYPERLINKING_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_XLINK_FEATURE);
+        // externalResourcesRequired="" not supported
+        // features.add(SVGConstants.SVG_SVG11_EXTERNAL_RESOURCES_REQUIRED_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_VIEW_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_SCRIPT_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_ANIMATION_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_FONT_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_BASIC_FONT_FEATURE);
+        features.add(SVGConstants.SVG_SVG11_EXTENSIBILITY_FEATURE);
+    }
+}