summaryrefslogtreecommitdiffstats
path: root/src/main/java/com/kitfox/salamander/renderer/SRTreeNode.java
diff options
context:
space:
mode:
authorkitfox2007-04-12 22:35:16 +0200
committerkitfox2007-04-12 22:35:16 +0200
commit23ebe96d580929d66b7c8efc1b61226db0c7dcf9 (patch)
treef218607e111344462350292ac2a64ec05a464504 /src/main/java/com/kitfox/salamander/renderer/SRTreeNode.java
parentPseudocode for main rendering logic. Roughing in SVG structure. (diff)
downloadsvg-salamander-core-23ebe96d580929d66b7c8efc1b61226db0c7dcf9.tar.gz
svg-salamander-core-23ebe96d580929d66b7c8efc1b61226db0c7dcf9.tar.xz
svg-salamander-core-23ebe96d580929d66b7c8efc1b61226db0c7dcf9.zip
Pseudocode for main rendering logic. Roughing in SVG structure.
git-svn-id: https://svn.java.net/svn/svgsalamander~svn/trunk/svg-core@11 7dc7fa77-23fb-e6ad-8e2e-c86bd48ed22b
Diffstat (limited to 'src/main/java/com/kitfox/salamander/renderer/SRTreeNode.java')
-rwxr-xr-xsrc/main/java/com/kitfox/salamander/renderer/SRTreeNode.java83
1 files changed, 83 insertions, 0 deletions
diff --git a/src/main/java/com/kitfox/salamander/renderer/SRTreeNode.java b/src/main/java/com/kitfox/salamander/renderer/SRTreeNode.java
new file mode 100755
index 0000000..6f88129
--- /dev/null
+++ b/src/main/java/com/kitfox/salamander/renderer/SRTreeNode.java
@@ -0,0 +1,83 @@
+/*
+ * SRTreeNode.java
+ *
+ * Created on April 12, 2007, 8:07 AM
+ *
+ * To change this template, choose Tools | Template Manager
+ * and open the template in the editor.
+ */
+
+package com.kitfox.salamander.renderer;
+
+import com.kitfox.salamander.renderer.SurfaceManager.SurfaceInfo;
+import java.util.ArrayList;
+
+/**
+ *
+ * @author kitfox
+ */
+abstract public class SRTreeNode
+{
+ public static class RenderingSurface
+ {
+ }
+
+ ArrayList<SRTreeNode> children = new ArrayList<SRTreeNode>();
+
+ /** Creates a new instance of SRTreeNode */
+ public SRTreeNode()
+ {
+ }
+
+ public void addChild(SRTreeNode child)
+ {
+ children.add(child);
+ }
+
+ public boolean removeChild(SRTreeNode child)
+ {
+ return children.remove(child);
+ }
+
+ protected void render(RenderingSurface surface)
+ {
+ /*
+ if (isFiltered() || isComplexClipArea())
+ {
+ RenderingSurface oldSurf = surface;
+ //New surface initialized to transparent black
+ SurfaceInfo backing = SurfaceManager.getDefault().getSurface(width, height, surface.getGraphicsConfiguration());
+ surface = new RenderingSurface(backing);
+
+ renderLocal(surface);
+
+ for (SRTreeNode child: children)
+ {
+ child.render(surface);
+ }
+
+ applyFilters(surface);
+ applyClipArea();
+ oldSurf.overlay(surface);
+ }
+ else
+ {
+ applyClipArea();
+ renderLocal(surface);
+
+ for (SRTreeNode child: children)
+ {
+ child.render(surface);
+ }
+ }
+ */
+ }
+
+ /**
+ * Draw content specific to this element (not including child elements)
+ */
+ protected void renderLocal(RenderingSurface surface)
+ {
+ //No rendering by default
+ }
+}