gzz-commits
[Top][All Lists]
Advanced

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

[Gzz-commits] fenfire/org/fenfire demo/actions.py demo/buoyoi...


From: Matti Katila
Subject: [Gzz-commits] fenfire/org/fenfire demo/actions.py demo/buoyoi...
Date: Thu, 17 Jul 2003 12:28:19 -0400

CVSROOT:        /cvsroot/fenfire
Module name:    fenfire
Branch:         
Changes by:     Matti Katila <address@hidden>   03/07/17 12:28:19

Modified files:
        org/fenfire/demo: actions.py buoyoing.py 
        org/fenfire/modules/pp: PPActions.java PPActionsImpl.java 
        org/fenfire/util: RDFUtil.java 
        org/fenfire/view: AreaSelectingView2D.java CanvasView2D.java 
        org/fenfire/view/buoy: AbstractMainNode2D.java PPConnector.java 
                               TransclusionConnector.java 
        org/fenfire/view/lava: FastView.java FenPDFContext.java 
Added files:
        org/fenfire/swamp: FlushableCachedNodeFunction.java 
        org/fenfire/util/lava: CoordsysCache.java 

Log message:
        added caching for coordystems, added Flushable Cache for node 
functions, speed issue seems to be quite good, Ctrl+button1+dragging selects an 
area - try it

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/demo/actions.py.diff?tr1=1.10&tr2=1.11&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/demo/buoyoing.py.diff?tr1=1.94&tr2=1.95&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/modules/pp/PPActions.java.diff?tr1=1.4&tr2=1.5&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/modules/pp/PPActionsImpl.java.diff?tr1=1.31&tr2=1.32&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/swamp/FlushableCachedNodeFunction.java?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/util/RDFUtil.java.diff?tr1=1.14&tr2=1.15&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/util/lava/CoordsysCache.java?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/view/AreaSelectingView2D.java.diff?tr1=1.8&tr2=1.9&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/view/CanvasView2D.java.diff?tr1=1.19&tr2=1.20&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/view/buoy/AbstractMainNode2D.java.diff?tr1=1.32&tr2=1.33&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/view/buoy/PPConnector.java.diff?tr1=1.15&tr2=1.16&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/view/buoy/TransclusionConnector.java.diff?tr1=1.13&tr2=1.14&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/view/lava/FastView.java.diff?tr1=1.2&tr2=1.3&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/view/lava/FenPDFContext.java.diff?tr1=1.37&tr2=1.38&r1=text&r2=text

Patches:
Index: fenfire/org/fenfire/demo/actions.py
diff -u fenfire/org/fenfire/demo/actions.py:1.10 
fenfire/org/fenfire/demo/actions.py:1.11
--- fenfire/org/fenfire/demo/actions.py:1.10    Mon Jul  7 18:56:06 2003
+++ fenfire/org/fenfire/demo/actions.py Thu Jul 17 12:28:18 2003
@@ -43,7 +43,8 @@
         f = self.obj.getFocus()
         fX, fY = f.getPanX(), f.getPanY()
         f.setPan( fX-x/f.zoom, fY-y/f.zoom)
-        self.context.chgFast(self.oldVS)
+        #self.context.chgFast(self.oldVS)
+        self.obj.chgFast(self.oldVS, None)
 
 class MovePanSlow(ff.util.ControlBinding.AbstractController):
     def isChangeable(self): return 0
@@ -62,7 +63,8 @@
     def isChangeable(self): return 1
     def change(self, x, y):
         self.obj.changeSize(x+y)
-        self.context.chgFast(self.oldVS)
+        self.obj.chgFast(self.oldVS, None)
+        #self.context.chgFast(self.oldVS)
 
 class UnSelectNodeOnPlane(AbstractContextController):
     def isChangeable(self): return 0
@@ -93,10 +95,10 @@
         f.setPan( fX+x/f.zoom,fY+y/f.zoom)
 
         g = self.obj[2]
-        ox = ff.util.RDFUtil.getInt(g, node, CANVAS2D.x)
-        oy = ff.util.RDFUtil.getInt(g, node, CANVAS2D.y)
-        self.obj[3].moveNote(node, int(ox+x/f.zoom), int(oy+y/f.zoom) )
-        self.context.chgFast(self.oldVS)
+        ox = ff.util.RDFUtil.getFloat(g, node, CANVAS2D.x)
+        oy = ff.util.RDFUtil.getFloat(g, node, CANVAS2D.y)
+        self.obj[3].moveNote(node, ox+x/f.zoom, oy+y/f.zoom )
+        self.obj[0].chgFast(self.oldVS, None)
 
 
 ####### Actions to control selection (Ctrl pressed)
@@ -106,10 +108,10 @@
     def tryFast(self): return 1
     def controlPoint(self, x, y, scale):
         if dbg: self.context.states.p()
-        xy = self.obj.getXYHit(self.oldVS, x,y)
+        xy = self.obj[0].getXYHit(self.oldVS, x,y)
         oldXY = self.context.states.getPressPans()
-        self.context.selection.setArea(oldXY[0], oldXY[1], xy[0], xy[1])
-        self.context.chgFast(self.oldVS)
+        self.obj[1].setArea(oldXY[0], oldXY[1], xy[0], xy[1])
+        self.obj[0].chgFast(self.oldVS, None)
 
 
 ####### Dispatcher for plane events etc.
@@ -145,13 +147,14 @@
         while v != None:
             if isinstance(v, ff.view.AreaSelectingView2D):
                 v.setCurrentPlane(main.getPlane())
+                self.selection = v
                 break
             v = v.getChildView2D()
 
         #### Special case if user has pressed 'Ctrl'
         if self.context.states.hasCtrl():
             self.last = self.c
-            self.args = main
+            self.args = [main, self.selection]
         else:
             if ev.getID() == ev.MOUSE_CLICKED:
                 if obj != None and self.p.hasBinding(ev):
Index: fenfire/org/fenfire/demo/buoyoing.py
diff -u fenfire/org/fenfire/demo/buoyoing.py:1.94 
fenfire/org/fenfire/demo/buoyoing.py:1.95
--- fenfire/org/fenfire/demo/buoyoing.py:1.94   Tue Jul 15 03:18:11 2003
+++ fenfire/org/fenfire/demo/buoyoing.py        Thu Jul 17 12:28:18 2003
@@ -55,6 +55,11 @@
 w.setCursor('wait')
 
 
+### debugs
+#ff.util.lava.CoordsysCache.dbg = 1
+#ff.view.AreaSelectingView2D.dbg = 1
+
+
 vob.putil.demo.usingNormalBindings = 0
 
 vob.buoy.buoymanager.replaceNewScene = vob.putil.demo.replacingScene
@@ -219,7 +224,8 @@
 
 tconnector.normalNodeNodeType = ff.view.buoy.NodeType2D(irregu,
                        ff.view.buoy.MainNode2D.MainNode2DFactory(1, ctrl))
-tconnector.pageImageScrollNodeType = ff.view.buoy.NodeType2DFull(pagescroll2d, 
ff.view.buoy.FisheyeMainNode2D.FisheyeMainNode2DFactory(ctrl))
+tconnector.pageImageScrollNodeType = ff.view.buoy.NodeType2DFull(pagescroll2d, 
\
+    ff.view.buoy.FisheyeMainNode2D.FisheyeMainNode2DFactory(ctrl))
 
 
 class DoubleGeometer:
@@ -334,6 +340,7 @@
             planes.append(single.getMainNode())
         newPlanes = self.context.doMouse(ev, oldvs, planes, self.nv)
         if newPlanes != None and planes != newPlanes:
+            p('going to change the singles with new ones')
             for i in range(0, len(newPlanes)):
                 self.mgr.singles[i] = vob.buoy.buoymanager.SingleFocusManager(
                     newPlanes[i],
Index: fenfire/org/fenfire/modules/pp/PPActions.java
diff -u fenfire/org/fenfire/modules/pp/PPActions.java:1.4 
fenfire/org/fenfire/modules/pp/PPActions.java:1.5
--- fenfire/org/fenfire/modules/pp/PPActions.java:1.4   Wed Jun 11 13:00:24 2003
+++ fenfire/org/fenfire/modules/pp/PPActions.java       Thu Jul 17 12:28:18 2003
@@ -52,10 +52,10 @@
      *                 creating a note and placing the first character
      *                 may be done atomically.
      */
-    String newNote(String paperURI, int x, int y, String text)
+    String newNote(String paperURI, float x, float y, String text)
                    throws RemoteException;
 
-    void moveNote(String noteURI, int x, int y)
+    void moveNote(String noteURI, float x, float y)
                    throws RemoteException;
     void deleteNote(String noteURI)
                    throws RemoteException;
Index: fenfire/org/fenfire/modules/pp/PPActionsImpl.java
diff -u fenfire/org/fenfire/modules/pp/PPActionsImpl.java:1.31 
fenfire/org/fenfire/modules/pp/PPActionsImpl.java:1.32
--- fenfire/org/fenfire/modules/pp/PPActionsImpl.java:1.31      Wed Jun 11 
13:00:24 2003
+++ fenfire/org/fenfire/modules/pp/PPActionsImpl.java   Thu Jul 17 12:28:18 2003
@@ -45,7 +45,7 @@
  *  UnicastRemoteObject' for now. -benja
  */
 public class PPActionsImpl /*extends UnicastRemoteObject*/ implements 
PPActions {
-public static final String rcsid = "$Id: PPActionsImpl.java,v 1.31 2003/06/11 
17:00:24 tjl Exp $";
+public static final String rcsid = "$Id: PPActionsImpl.java,v 1.32 2003/07/17 
16:28:18 mudyc Exp $";
     public static boolean dbg = false;
     protected static void p(String s) { System.out.println("PPActionsImpl: 
"+s); }
 
@@ -94,7 +94,7 @@
 
 
 
-    public String newNote(String paperURI, int x, int y, String text)  
+    public String newNote(String paperURI, float x, float y, String text)      
        throws RemoteException 
     { synchronized(fen) {
        if(dbg) p("New note: "+paperURI+" "+x+" "+y+" "+text);
@@ -168,7 +168,7 @@
         if (dbg) p("Delete DONE!");
     }}
 
-    public void moveNote(String noteURI, int x, int y)
+    public void moveNote(String noteURI, float x, float y)
        throws RemoteException 
     { synchronized(fen) {
        if(dbg) p("Move note: "+noteURI+" "+x+" "+y);
Index: fenfire/org/fenfire/util/RDFUtil.java
diff -u fenfire/org/fenfire/util/RDFUtil.java:1.14 
fenfire/org/fenfire/util/RDFUtil.java:1.15
--- fenfire/org/fenfire/util/RDFUtil.java:1.14  Mon Jul  7 18:56:06 2003
+++ fenfire/org/fenfire/util/RDFUtil.java       Thu Jul 17 12:28:19 2003
@@ -81,6 +81,21 @@
                    Integer.toString(val)));
     }
 
+    /** Get int attribute (from a literal).
+     */
+    static public float getFloat(Graph graph, Object node, Object pre) {
+       Literal lit = (Literal)graph.find1_11X(node, pre);
+       return Float.parseFloat(lit.getTextString() );
+    }
+
+    /** Set int attribute (literal).
+     */
+    static public void setFloat(Graph graph, Object node, Object pre, int val) 
{
+       graph.set1_11X(node, pre,
+               Nodes.getStringLiteral(
+                   Float.toString(val)));
+    }
+
     /** Special call for structure linked vocabulary to test if node is linked.
      * @see STRUCTLINK
      */
Index: fenfire/org/fenfire/view/AreaSelectingView2D.java
diff -u fenfire/org/fenfire/view/AreaSelectingView2D.java:1.8 
fenfire/org/fenfire/view/AreaSelectingView2D.java:1.9
--- fenfire/org/fenfire/view/AreaSelectingView2D.java:1.8       Mon Jul  7 
02:00:52 2003
+++ fenfire/org/fenfire/view/AreaSelectingView2D.java   Thu Jul 17 12:28:19 2003
@@ -4,6 +4,9 @@
 import org.fenfire.view.lava.*;
 import org.nongnu.libvob.*;
 import org.nongnu.libvob.gl.*;
+import org.fenfire.util.lava.*;
+
+import java.util.*;
 
 /** View2D to draw the selecting area 
  */
@@ -41,7 +44,8 @@
         pq = GLRen.createFixedPaperQuad(paper, 0, 0, 1, 1, 0, 10, 10, 10);
     }
 
-    int cs = -1;
+
+    private CoordsysCache coords = new CoordsysCache();
 
     public void render(VobScene vs, Object plane,
                        int matchingParent,
@@ -51,19 +55,24 @@
            child.render(vs, plane, matchingParent,
                         box2screen, box2paper);
 
-       if (current != plane) return;
 
        int paper2box = vs.invertCS(box2paper, "areaselectview_INv");
        int paper2screen = vs.concatCS(box2screen, "areaselectview_conc",
                                    paper2box);
-       cs = vs.orthoCS(paper2screen, "selection", 0, 1,2,3,4);
-       chgFast(vs);
-        vs.put(pq, cs);
+       int cs = vs.orthoCS(paper2screen, "selection", 0, 1,2,3,4);
+        Object key = vs.matcher.getKey(box2screen);
+        if (dbg) p("key b2s: "+vs.matcher.getKey(box2screen));
+        coords.set(key, cs);
+       chgFast(vs, key);
 
+       if (current != plane) return;
+        if (dbg) p("ok, draw the selection!"+x0+","+y0+","+x1+","+y1);
+        vs.put(pq, cs);
     }
 
-    public void chgFast(VobScene oldVS) {
-       oldVS.coords.setOrthoParams(cs, 0,  x0,y0,x1-x0,y1-y0);
+    public void chgFast(VobScene oldVS, Object key) {
+        if (dbg) p("key Fast: "+key);
+        oldVS.coords.setOrthoParams(coords.get(key), 0,  x0,y0,x1-x0,y1-y0);
     }
         
         
Index: fenfire/org/fenfire/view/CanvasView2D.java
diff -u fenfire/org/fenfire/view/CanvasView2D.java:1.19 
fenfire/org/fenfire/view/CanvasView2D.java:1.20
--- fenfire/org/fenfire/view/CanvasView2D.java:1.19     Tue Jun 24 09:53:35 2003
+++ fenfire/org/fenfire/view/CanvasView2D.java  Thu Jul 17 12:28:19 2003
@@ -33,6 +33,7 @@
 import org.fenfire.vocab.*;
 import org.fenfire.swamp.*;
 import org.fenfire.util.*;
+import org.fenfire.util.lava.*;
 import org.nongnu.libvob.*;
 import org.nongnu.libvob.gl.*;
 import org.nongnu.libvob.impl.gl.*;
@@ -46,7 +47,7 @@
 /** A View2D of a CANVAS2D, with a given node function.
  */
 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 final String rcsid = "$Id: CanvasView2D.java,v 1.20 2003/07/17 
16:28:19 mudyc Exp $";
     public static boolean dbg = false;
     private static void pa(String s) { System.out.println("CanvasView2D::"+s); 
}
     
@@ -69,9 +70,10 @@
        lineconn.glteardown = GLCache.getCallList("PopAttrib");
     }
 
-    private Object container;
+    //private Object container;
     private int paper2screen = -1;
-    private ArrayList nodes = new ArrayList();
+    private CoordsysCache coords = new CoordsysCache();
+    private Map containers = new HashMap(10);
 
     public void render(VobScene vs, Object container,
                       int matchingParent, int box2screen, int box2plane)
@@ -79,22 +81,25 @@
        if (!RDFUtil.isNodeType(fen.graph, container, CANVAS2D.Canvas))
            throw new Error("plane is NOT a container!");
 
-        this.container = container;
+        //this.container = container;
+        Object key = vs.matcher.getKey(matchingParent);
+        containers.put(key, container);
+
        int paper2box = vs.invertCS(box2plane, "canvasview_INv");
        paper2screen = vs.concatCS(box2screen, "canvasview_conc",
                                    paper2box);
        Iterator iter = fen.constgraph.findN_11X_Iter(container, 
                                                      CANVAS2D.contains);
        if (dbg) pa("Canvas begin");
-        nodes.clear();
+        //nodes.clear();
        while (iter.hasNext()) {
            Object n = iter.next();
            Placeable p = (Placeable)nodeView.f(fen.constgraph, n);
            Pair matchKey = new Pair(container, n);
 
            int cs = vs.coords.orthoBox(paper2screen, 0,1,2,3,4,5,6);
-            nodes.add(""+cs);
-            chgFast(vs);
+            Object nodeKey = new Pair(key, n);
+            coords.set(nodeKey, cs);
             
            vs.matcher.add(matchingParent, cs, matchKey);
            vs.activate(cs);
@@ -103,6 +108,7 @@
            }
            p.place(vs, cs);
         }
+        chgFast(vs, key);
 
        // show connections
        Iterator iter1 = fen.constgraph.findN_11X_Iter(container, 
@@ -127,21 +133,22 @@
         }
     }
 
-    public void chgFast(VobScene oldVS) {
+    public void chgFast(VobScene oldVS, Object key) {
         
+        Object container = containers.get(key);
        Iterator iter = fen.constgraph.findN_11X_Iter(container, 
                                                      CANVAS2D.contains);
-        for (int i=0; i<nodes.size(); i++) {
+        while (iter.hasNext()) {
             Object n = iter.next();
-           int x = RDFUtil.getInt(fen.graph, n, CANVAS2D.x);
-           int y = RDFUtil.getInt(fen.graph, n, CANVAS2D.y);
+           float x = RDFUtil.getFloat(fen.graph, n, CANVAS2D.x);
+           float y = RDFUtil.getFloat(fen.graph, n, CANVAS2D.y);
 
            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));
+           int cs = coords.get(new Pair(key, n));
             oldVS.coords.setOrthoBoxParams(cs, 0, 
                                            x, y, 1, 1,
                                            p.getWidth(), p.getHeight());
Index: fenfire/org/fenfire/view/buoy/AbstractMainNode2D.java
diff -u fenfire/org/fenfire/view/buoy/AbstractMainNode2D.java:1.32 
fenfire/org/fenfire/view/buoy/AbstractMainNode2D.java:1.33
--- fenfire/org/fenfire/view/buoy/AbstractMainNode2D.java:1.32  Mon Jul 14 
10:08:40 2003
+++ fenfire/org/fenfire/view/buoy/AbstractMainNode2D.java       Thu Jul 17 
12:28:19 2003
@@ -267,10 +267,12 @@
        return controller.handleEvent(this, e, oldVobScene);
     }
 
-    public void chgFast(VobScene oldVobScene) {
+    public void chgFast(VobScene oldVobScene, Object key) {
         clipPan();
         setZoomPan(oldVobScene, box2screen);
 
+        Object realKey = oldVobScene.matcher.getKey(box2screen);
+        if (dbg) p("key: "+realKey);
        View2D view = getView2D();
        while (view != null) {
            if (view instanceof FastView)
@@ -279,7 +281,7 @@
                 * 
                 * ...working on a better solution.
                 */
-               ; //((FastView)view).chgFast(oldVobScene);
+               ((FastView)view).chgFast(oldVobScene, realKey);
            view = view.getChildView2D();
        }
     }
Index: fenfire/org/fenfire/view/buoy/PPConnector.java
diff -u fenfire/org/fenfire/view/buoy/PPConnector.java:1.15 
fenfire/org/fenfire/view/buoy/PPConnector.java:1.16
--- fenfire/org/fenfire/view/buoy/PPConnector.java:1.15 Fri Jun 27 18:18:41 2003
+++ fenfire/org/fenfire/view/buoy/PPConnector.java      Thu Jul 17 12:28:19 2003
@@ -41,7 +41,7 @@
 /** Make the kinds of links familiar from PP structure.
  */
 public class PPConnector implements BuoyViewConnector {
-public static final String rcsid = "$Id: PPConnector.java,v 1.15 2003/06/27 
22:18:41 benja Exp $";
+public static final String rcsid = "$Id: PPConnector.java,v 1.16 2003/07/17 
16:28:19 mudyc Exp $";
     public static boolean dbg = false;
     private static void pa(String s) { System.out.println("PPConnector::"+s); }
 
@@ -119,10 +119,10 @@
     public int dx = 30, dy = 30;
     protected java.awt.Rectangle getRect(Object node) {
        if (node == null) throw new Error("Impossible!");
-       int x = RDFUtil.getInt(fen.graph, node, CANVAS2D.x);
-       int y = RDFUtil.getInt(fen.graph, node, CANVAS2D.y);
+       float x = RDFUtil.getFloat(fen.graph, node, CANVAS2D.x);
+       float y = RDFUtil.getFloat(fen.graph, node, CANVAS2D.y);
        Placeable p = (Placeable)nodeView.f(fen.constgraph, node);
-       return new java.awt.Rectangle(x-dx, y-dy, 
+       return new java.awt.Rectangle((int)(x-dx), (int)(y-dy), 
                                      (int)p.getWidth()+dx+dx, 
                                      (int)p.getHeight()+dy+dy);
     }
Index: fenfire/org/fenfire/view/buoy/TransclusionConnector.java
diff -u fenfire/org/fenfire/view/buoy/TransclusionConnector.java:1.13 
fenfire/org/fenfire/view/buoy/TransclusionConnector.java:1.14
--- fenfire/org/fenfire/view/buoy/TransclusionConnector.java:1.13       Fri Jun 
27 18:18:41 2003
+++ fenfire/org/fenfire/view/buoy/TransclusionConnector.java    Thu Jul 17 
12:28:19 2003
@@ -45,7 +45,7 @@
 /** Hang transclusion buoys.
  */
 public class TransclusionConnector implements BuoyViewConnector {
-public static final String rcsid = "$Id: TransclusionConnector.java,v 1.13 
2003/06/27 22:18:41 benja Exp $";
+public static final String rcsid = "$Id: TransclusionConnector.java,v 1.14 
2003/07/17 16:28:19 mudyc Exp $";
     public static boolean dbg = false;
     private static void pa(String s) { 
System.out.println("TransclusionConnector:: "+s); }
 
@@ -89,8 +89,8 @@
 
     public TransclusionConnector(Fen fen, NodeFunction nodeView) {
        this.fen = fen;
-       this.scrollBlockForNode = new CachedNodeFunction(1000,
-                   fen.constgraph, new SB4Node());
+       this.scrollBlockForNode = new FlushableCachedNodeFunction(1000,
+                   fen, new SB4Node());
        this.nodeView = nodeView;
     }
 
@@ -164,10 +164,10 @@
     public int dx = 30, dy = 30;
     protected java.awt.Rectangle getRect(Object node) {
        if (node == null) throw new Error("Impossible!");
-       int x = RDFUtil.getInt(fen.graph, node, CANVAS2D.x);
-       int y = RDFUtil.getInt(fen.graph, node, CANVAS2D.y);
+       float x = RDFUtil.getFloat(fen.graph, node, CANVAS2D.x);
+       float y = RDFUtil.getFloat(fen.graph, node, CANVAS2D.y);
        Placeable p = (Placeable)nodeView.f(fen.constgraph, node);
-       return new java.awt.Rectangle(x-dx, y-dy, 
+       return new java.awt.Rectangle((int)(x-dx), (int)(y-dy), 
                                      (int)p.getWidth()+dx+dx, 
                                      (int)p.getHeight()+dy+dy);
     }
Index: fenfire/org/fenfire/view/lava/FastView.java
diff -u fenfire/org/fenfire/view/lava/FastView.java:1.2 
fenfire/org/fenfire/view/lava/FastView.java:1.3
--- fenfire/org/fenfire/view/lava/FastView.java:1.2     Thu Jul  3 10:02:28 2003
+++ fenfire/org/fenfire/view/lava/FastView.java Thu Jul 17 12:28:19 2003
@@ -20,5 +20,5 @@
      *        setOrthoParams.
      * @see VobCoorder
      */ 
-    void chgFast(VobScene oldVobScene);
+    void chgFast(VobScene oldVobScene, Object key);
 }
Index: fenfire/org/fenfire/view/lava/FenPDFContext.java
diff -u fenfire/org/fenfire/view/lava/FenPDFContext.java:1.37 
fenfire/org/fenfire/view/lava/FenPDFContext.java:1.38
--- fenfire/org/fenfire/view/lava/FenPDFContext.java:1.37       Tue Jul 15 
03:18:11 2003
+++ fenfire/org/fenfire/view/lava/FenPDFContext.java    Thu Jul 17 12:28:19 2003
@@ -305,6 +305,7 @@
                Model m = new ModelMem();
                m.read(new FileReader("myFenfire/mygraph.rdf"), null);
                fen.constgraph = fen.graph = Graphs.toGraph(m);
+                FlushableCachedNodeFunction.flush();
                cnv.reinit(fen.graph, 200);
                 int i = 0;
                 Iterator it = fen.graph.findN_11X_Iter(SAVE.State, SAVE.point);




reply via email to

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