fenfire-commits
[Top][All Lists]
Advanced

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

[ff-cvs] fenfire/org/fenfire/view/buoy TransclusionConne...


From: Matti Katila
Subject: [ff-cvs] fenfire/org/fenfire/view/buoy TransclusionConne...
Date: Thu, 21 Aug 2003 04:05:26 -0400

CVSROOT:        /cvsroot/fenfire
Module name:    fenfire
Branch:         
Changes by:     Matti Katila <address@hidden>   03/08/21 04:05:26

Modified files:
        org/fenfire/view/buoy: TransclusionConnector.java 

Log message:
        center transclusion anchor where it belongs

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/view/buoy/TransclusionConnector.java.diff?tr1=1.23&tr2=1.24&r1=text&r2=text

Patches:
Index: fenfire/org/fenfire/view/buoy/TransclusionConnector.java
diff -u fenfire/org/fenfire/view/buoy/TransclusionConnector.java:1.23 
fenfire/org/fenfire/view/buoy/TransclusionConnector.java:1.24
--- fenfire/org/fenfire/view/buoy/TransclusionConnector.java:1.23       Sun Aug 
17 10:34:20 2003
+++ fenfire/org/fenfire/view/buoy/TransclusionConnector.java    Thu Aug 21 
04:05:26 2003
@@ -37,14 +37,14 @@
 import org.fenfire.util.*;
 import org.fenfire.vocab.*;
 
-import java.awt.Rectangle;
+import java.awt.*;
 import java.util.Iterator;
 import java.util.List;
 
 /** Hang transclusion buoys.
  */
 public class TransclusionConnector implements BuoyViewConnector {
-public static final String rcsid = "$Id: TransclusionConnector.java,v 1.23 
2003/08/17 14:34:20 tjl Exp $";
+public static final String rcsid = "$Id: TransclusionConnector.java,v 1.24 
2003/08/21 08:05:26 mudyc Exp $";
     public static boolean dbg = false;
     private static void p(String s) { 
System.out.println("TransclusionConnector:: "+s); }
 
@@ -161,12 +161,25 @@
                if(!(key instanceof PageImageSpan)) continue;
                PageImageSpan span = (PageImageSpan)key;
 
-               if(dbg) p("TRC: span "+key);
+               if(dbg) p("span "+key+", point: "+span.getLocation()+ ", size: 
"+span.getSize());
                int cs =m.getCS(parentCs, key);
 
                Enfilade1D tmpEnf = fen.enfMaker.makeEnfilade(span);
                for(Iterator nodes = 
fen.enfiladeOverlap.getMatches(tmpEnf).iterator(); nodes.hasNext(); ) {
                    Object node = nodes.next();
+
+                   // get all pageimage spans and make anchor cs for them.
+                   // dumb version first
+                   Enfilade1D enf = (Enfilade1D)fen.txtfunc.f(fen.graph, node);
+                   PageImageSpan img = (PageImageSpan)enf.getList().get(0);
+                   if (dbg) p("point: "+img.getLocation()+ ", size: 
"+img.getSize());
+                   Point p = img.getLocation();
+                   Dimension s = img.getSize();
+
+                   int enfAnchorCS = vs.coords
+                       .orthoBox(cs, 0f, (float)p.getX(), (float)p.getY(), 
1,1, 
+                                 (float)s.getWidth(), (float)s.getHeight());
+
                    if(dbg) p("TRC: overlap "+node);
                    Object plane = fen.constgraph.find1_X11(
                            CANVAS2D.contains, node);
@@ -175,7 +188,7 @@
                        continue;
                    }
                    Object anchor = getAnchor(plane, node);
-                   l.link(-1, cs, normalNodeNodeType,
+                   l.link(-1, enfAnchorCS, normalNodeNodeType,
                            new LinkId(node, 
                                (PageScrollBlock)span.getScrollBlock()),
                            anchor);




reply via email to

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