gzz-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gzz-commits] fenfire/org/fenfire/view CanvasView2D.java


From: Matti Katila
Subject: [Gzz-commits] fenfire/org/fenfire/view CanvasView2D.java
Date: Tue, 24 Jun 2003 09:53:35 -0400

CVSROOT:        /cvsroot/fenfire
Module name:    fenfire
Branch:         
Changes by:     Matti Katila <address@hidden>   03/06/24 09:53:35

Modified files:
        org/fenfire/view: CanvasView2D.java 

Log message:
        use setOrthoBoxParams

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/view/CanvasView2D.java.diff?tr1=1.18&tr2=1.19&r1=text&r2=text

Patches:
Index: fenfire/org/fenfire/view/CanvasView2D.java
diff -u fenfire/org/fenfire/view/CanvasView2D.java:1.18 
fenfire/org/fenfire/view/CanvasView2D.java:1.19
--- fenfire/org/fenfire/view/CanvasView2D.java:1.18     Wed Jun 11 13:00:24 2003
+++ fenfire/org/fenfire/view/CanvasView2D.java  Tue Jun 24 09:53:35 2003
@@ -29,6 +29,7 @@
 import org.fenfire.*;
 import org.fenfire.view.*;
 import org.fenfire.view.buoy.*;
+import org.fenfire.view.lava.FastView;
 import org.fenfire.vocab.*;
 import org.fenfire.swamp.*;
 import org.fenfire.util.*;
@@ -40,12 +41,12 @@
 import org.nongnu.libvob.lava.placeable.Placeable;
 import org.nongnu.alph.*;
 
-import java.util.Iterator;
+import java.util.*;
 
 /** A View2D of a CANVAS2D, with a given node function.
  */
-public class CanvasView2D extends View2D implements NodedView2D{
-public static final String rcsid = "$Id: CanvasView2D.java,v 1.18 2003/06/11 
17:00:24 tjl Exp $";
+public class CanvasView2D extends View2D implements NodedView2D, FastView {
+public static final String rcsid = "$Id: CanvasView2D.java,v 1.19 2003/06/24 
13:53:35 mudyc Exp $";
     public static boolean dbg = false;
     private static void pa(String s) { System.out.println("CanvasView2D::"+s); 
}
     
@@ -68,43 +69,40 @@
        lineconn.glteardown = GLCache.getCallList("PopAttrib");
     }
 
+    private Object container;
+    private int paper2screen = -1;
+    private ArrayList nodes = new ArrayList();
+
     public void render(VobScene vs, Object container,
                       int matchingParent, int box2screen, int box2plane)
     {
-
        if (!RDFUtil.isNodeType(fen.graph, container, CANVAS2D.Canvas))
            throw new Error("plane is NOT a container!");
 
+        this.container = container;
        int paper2box = vs.invertCS(box2plane, "canvasview_INv");
-       int paper2screen = vs.concatCS(box2screen, "canvasview_conc",
-                       paper2box);
-
+       paper2screen = vs.concatCS(box2screen, "canvasview_conc",
+                                   paper2box);
        Iterator iter = fen.constgraph.findN_11X_Iter(container, 
                                                      CANVAS2D.contains);
        if (dbg) pa("Canvas begin");
+        nodes.clear();
        while (iter.hasNext()) {
            Object n = iter.next();
-
-           // get coords
-           int x = RDFUtil.getInt(fen.graph, n, CANVAS2D.x);
-           int y = RDFUtil.getInt(fen.graph, n, CANVAS2D.y);
-
            Placeable p = (Placeable)nodeView.f(fen.constgraph, n);
-           
            Pair matchKey = new Pair(container, n);
-           // int cs = vs.coords.translate(paper2screen, x, y);
-           if(dbg) pa("CANVAS: "+p.getWidth()+" "+p.getHeight());
 
-           int cs = vs.coords.orthoBox(paper2screen, 0, 
-                               x, y, 1, 1,
-                           p.getWidth(), p.getHeight());
+           int cs = vs.coords.orthoBox(paper2screen, 0,1,2,3,4,5,6);
+            nodes.add(""+cs);
+            chgFast(vs);
+            
            vs.matcher.add(matchingParent, cs, matchKey);
            vs.activate(cs);
            if(cull) {
                cs = vs.cullCS(cs, "CULL", box2screen);
            }
            p.place(vs, cs);
-       }
+        }
 
        // show connections
        Iterator iter1 = fen.constgraph.findN_11X_Iter(container, 
@@ -126,9 +124,28 @@
                
                vs.map.put(lineconn, cs1, cs2);
            }
-       }
+        }
+    }
+
+    public void chgFast(VobScene oldVS) {
+        
+       Iterator iter = fen.constgraph.findN_11X_Iter(container, 
+                                                     CANVAS2D.contains);
+        for (int i=0; i<nodes.size(); i++) {
+            Object n = iter.next();
+           int x = RDFUtil.getInt(fen.graph, n, CANVAS2D.x);
+           int y = RDFUtil.getInt(fen.graph, n, CANVAS2D.y);
 
-       if (dbg) pa("Canvas DONE");
+           Placeable p = (Placeable)nodeView.f(fen.constgraph, n);
+           
+           // int cs = vs.coords.translate(paper2screen, x, y);
+           if(dbg) pa("CANVAS: "+p.getWidth()+" "+p.getHeight());
+
+           int cs = Integer.parseInt((String)nodes.get(i));
+            oldVS.coords.setOrthoBoxParams(cs, 0, 
+                                           x, y, 1, 1,
+                                           p.getWidth(), p.getHeight());
+       }
     }
 
     public Object getNode(VobScene oldvs, 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]