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 Node...


From: Tuomas J. Lukka
Subject: [Gzz-commits] fenfire/org/fenfire/view CanvasView2D.java Node...
Date: Tue, 13 May 2003 07:48:32 -0400

CVSROOT:        /cvsroot/fenfire
Module name:    fenfire
Changes by:     Tuomas J. Lukka <address@hidden>        03/05/13 07:48:32

Modified files:
        org/fenfire/view: CanvasView2D.java NodedView2D.java 
                          papercanvas2d.test 

Log message:
        Test working - mudyc: this is the mouse code you wanted.

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/view/CanvasView2D.java.diff?tr1=1.13&tr2=1.14&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/view/NodedView2D.java.diff?tr1=1.2&tr2=1.3&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/view/papercanvas2d.test.diff?tr1=1.6&tr2=1.7&r1=text&r2=text

Patches:
Index: fenfire/org/fenfire/view/CanvasView2D.java
diff -u fenfire/org/fenfire/view/CanvasView2D.java:1.13 
fenfire/org/fenfire/view/CanvasView2D.java:1.14
--- fenfire/org/fenfire/view/CanvasView2D.java:1.13     Mon May 12 23:14:24 2003
+++ fenfire/org/fenfire/view/CanvasView2D.java  Tue May 13 07:48:32 2003
@@ -17,10 +17,10 @@
 
 import java.util.Iterator;
 
-/** A View2D on a PP-like canvas.
+/** A View2D of a CANVAS2D, with a given node function.
  */
-public class CanvasView2D extends View2D {
-public static final String rcsid = "$Id: CanvasView2D.java,v 1.13 2003/05/13 
03:14:24 tjl Exp $";
+public class CanvasView2D extends View2D implements NodedView2D{
+public static final String rcsid = "$Id: CanvasView2D.java,v 1.14 2003/05/13 
11:48:32 tjl Exp $";
     public static boolean dbg = false;
     private static void pa(String s) { System.out.println("CanvasView2D::"+s); 
}
     
@@ -64,11 +64,23 @@
                                x, y, 1, 1,
                            p.getWidth(), p.getHeight());
            vs.matcher.add(matchingParent, cs, matchKey);
+           vs.activate(cs);
            if(cull) {
                cs = vs.cullCS(cs, "CULL", box2screen);
            }
            p.place(vs, cs);
        }
        if (dbg) pa("Canvas DONE");
+    }
+
+    public Object getNode(VobScene oldvs, 
+                   int x, int y,
+                   Object plane, int matchingParent, 
+                   int box2screen, int box2plane,
+                   float[] xyout) {
+       int cs = oldvs.getCSAt(box2screen, x, y, xyout);
+       if(cs <= 1) return null;
+       Pair p = (Pair)oldvs.matcher.getKey(cs);
+       return p.second;
     }
 }
Index: fenfire/org/fenfire/view/NodedView2D.java
diff -u fenfire/org/fenfire/view/NodedView2D.java:1.2 
fenfire/org/fenfire/view/NodedView2D.java:1.3
--- fenfire/org/fenfire/view/NodedView2D.java:1.2       Thu May  8 09:31:29 2003
+++ fenfire/org/fenfire/view/NodedView2D.java   Tue May 13 07:48:32 2003
@@ -8,7 +8,7 @@
 public interface NodedView2D {
     /** Return the node (or null) pointed to by a mouse click.
      */
-    public Object getNode(VobScene oldvs, 
+    Object getNode(VobScene oldvs, 
                    int x, int y,
                    Object plane, int matchingParent, 
                    int box2screen, int box2plane,
Index: fenfire/org/fenfire/view/papercanvas2d.test
diff -u fenfire/org/fenfire/view/papercanvas2d.test:1.6 
fenfire/org/fenfire/view/papercanvas2d.test:1.7
--- fenfire/org/fenfire/view/papercanvas2d.test:1.6     Mon May 12 23:14:24 2003
+++ fenfire/org/fenfire/view/papercanvas2d.test Tue May 13 07:48:32 2003
@@ -9,8 +9,6 @@
 
 ff.test.gfx.needGL()
 
-ff.view.CanvasView2D.dbg = 1
-ff.view.TextNodeView.dbg = 1
 
 from org.fenfire.test.gfx import *
 
@@ -25,7 +23,7 @@
     that we get a click.
     """
 
-    # Create the fen, set up data
+    ################ Create the fen, set up data
 
     fen = ff.test.fen.newFen()
     con = ff.util.AlphContent(fen)
@@ -47,7 +45,7 @@
     ff.util.RDFUtil.setInt(fen, node2, CANVAS2D.y, 500)
 
 
-    # Create the view structure
+    ################ Create the view structure
     vs = getvs()
 
     textnodeview = ff.view.TextNodeView(
@@ -60,15 +58,16 @@
 
     paperView2D = ff.view.PaperView2D(None, canvasView2D)
     paperView2D.paperMill = DummyMill(
-       vob.gl.SpecialPapers.cgraphPaper(100))
+       vob.gl.SpecialPapers.solidPaper(Color.yellow)
+       )
     paperView2D.paperScaling = 1
 
     irregu2D = ff.view.IrregularViewportView2D(paperView2D)
 
-    # view2D = paperView2D
-    view2D = canvasView2D
+    view2D = paperView2D
+    # view2D = canvasView2D
 
-    # Finally, create the vobscene
+    ################ Finally, create the vobscene
     vs.put(SolidBackdropVob(Color.red))
 
     box2screen = vs.orthoBoxCS(0, "b2s", 0, 100, 100, 1, 1, 300, 300)
@@ -78,6 +77,22 @@
 
     render(vs)
 
-    checkAvgColor(50, 50, 10, 10, (0, 0, 0), 5)
-    checkAvgColor(150, 150, 10, 10, (255, 255, 0), 5)
-    checkAvgColor(450, 450, 10, 10, (0, 0, 0), 5)
+    ################ Check rendering
+
+    # Check the yellow frame location
+    checkAvgColor(50, 50, 10, 10, (255, 0, 0), 2)
+    checkAvgColor(150, 150, 10, 10, (255, 255, 0), 2)
+    checkAvgColor(450, 450, 10, 10, (255, 0, 0), 2)
+
+    # Check the texts
+    checkAvgColor(100+100, 100+40, 10, 9, (255, 255, 0), 2)
+    checkNotAvgColor(100+100, 100+50, 10, 9, (255, 255, 0), 10)
+    checkAvgColor(100+100, 100+240, 10, 9, (255, 255, 0), 2)
+    checkNotAvgColor(100+100, 100+250, 10, 9, (255, 255, 0), 10)
+
+    ############## Check mouse clicks
+
+    assert None == canvasView2D.getNode(vs, 120, 120, nodec, 
+                       box2screen, box2screen, box2plane, None)
+    assert node1 == canvasView2D.getNode(vs, 100+105, 100+55, nodec, 
+                       box2screen, box2screen, box2plane, None)




reply via email to

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