gzz-commits
[Top][All Lists]
Advanced

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

[Gzz-commits] fenfire/org/fenfire modules/pp/RSTActionsImpl.j...


From: Matti Katila
Subject: [Gzz-commits] fenfire/org/fenfire modules/pp/RSTActionsImpl.j...
Date: Sun, 04 May 2003 22:37:39 -0400

CVSROOT:        /cvsroot/fenfire
Module name:    fenfire
Changes by:     Matti Katila <address@hidden>   03/05/04 22:37:39

Modified files:
        org/fenfire/modules/pp: RSTActionsImpl.java 
        org/fenfire/view: FenPDFContext.java 

Log message:
        a small annotation can be made to rst canvas ;)

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/modules/pp/RSTActionsImpl.java.diff?tr1=1.2&tr2=1.3&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/fenfire/fenfire/org/fenfire/view/FenPDFContext.java.diff?tr1=1.1&tr2=1.2&r1=text&r2=text

Patches:
Index: fenfire/org/fenfire/modules/pp/RSTActionsImpl.java
diff -u fenfire/org/fenfire/modules/pp/RSTActionsImpl.java:1.2 
fenfire/org/fenfire/modules/pp/RSTActionsImpl.java:1.3
--- fenfire/org/fenfire/modules/pp/RSTActionsImpl.java:1.2      Sun May  4 
21:38:49 2003
+++ fenfire/org/fenfire/modules/pp/RSTActionsImpl.java  Sun May  4 22:37:38 2003
@@ -16,8 +16,8 @@
 /** The implementation of RSTActions.
  */
 public class RSTActionsImpl extends UnicastRemoteObject implements RSTActions {
-public static final String rcsid = "$Id: RSTActionsImpl.java,v 1.2 2003/05/05 
01:38:49 mudyc Exp $";
-    public static final boolean dbg = true;
+public static final String rcsid = "$Id: RSTActionsImpl.java,v 1.3 2003/05/05 
02:37:38 mudyc Exp $";
+    public static final boolean dbg = false;
     protected static void p(String s) { System.out.println("RSTActionsImpl: 
"+s); }
 
     private Fen fen = null;
@@ -222,16 +222,18 @@
                if (dbg) p("senten, "+iy);
                Object node = fen.graph.find1_11X(senten, RST.nextNode);
                int x = paragX;
-               for (int ix=0; node != null; ix++) {
-                   if (dbg) p("node, "+ix);
-
-                   Placeable p = (Placeable)nodef.f(fen.constgraph, node);
-
-                   x += p.getWidth();
+               while (node != null) {
+                   if (dbg) p("node");
                    int y = paragY + iy*30;
+
                    // set coords
                    fen.graph.set1_11X(node, SPATIAL.coordX, 
Nodes.getStringLiteral(""+x) );
                    fen.graph.set1_11X(node, SPATIAL.coordY, 
Nodes.getStringLiteral(""+y) );
+
+                   Placeable p = (Placeable)nodef.f(fen.constgraph, node);
+                   p("x before: "+x);
+                   x += p.getWidth();
+                   p("x: "+x+", w: "+p.getWidth()+" x+w: "+(x+p.getWidth()));
 
                    node = fen.graph.find1_11X(node, RST.nextNode);
                }
Index: fenfire/org/fenfire/view/FenPDFContext.java
diff -u fenfire/org/fenfire/view/FenPDFContext.java:1.1 
fenfire/org/fenfire/view/FenPDFContext.java:1.2
--- fenfire/org/fenfire/view/FenPDFContext.java:1.1     Sun May  4 21:38:49 2003
+++ fenfire/org/fenfire/view/FenPDFContext.java Sun May  4 22:37:39 2003
@@ -55,17 +55,39 @@
 
            if (stroke.equals(" ")) {
                p("space pressed!");
+
+               // check if two spaces one after other XXX
+               // and make a new sentence
+
+               Object node = RDFUtil.N(fen, RST.Node);
+               alphContent.setText(node, stroke, true);
+               rst.insertNode(sentence, node,  
+                              getNodeNumInSentence(getLastNode(sentence)) + 1);
+               rst.generateBasicSpatialCoords(
+                    rst.getRSTCanvas(rst.getParagraph(rstNode)), 
+                   nodef);
+
                return;
            }
-           if (stroke.equals("Return")) {
+           else if (stroke.equals("Return")) {
                p("enter makes a new sentence.");
-               
+               p("...if implemented ;)");
 
+               int num = getSentenceNum(sentence);
+               Object para = rst.getParagraph(sentence);
+               rstNode = sentence = rst.newSentence(para, num+1);
+
+               Object node = RDFUtil.N(fen, RST.Node);
+               alphContent.setText(node, " ", true);
+               rst.insertNode(sentence, node, 0);
+               rst.generateBasicSpatialCoords(
+                    rst.getRSTCanvas(rst.getParagraph(rstNode)), 
+                   nodef);
+               
                return;
            }
            
-           p("length"+stroke.length());
-           if (stroke.length() == 1) {
+           else if (stroke.length() == 1) {
                Object node = RDFUtil.N(fen, RST.Node);
                alphContent.setText(node, stroke, true);
                rst.insertNode(sentence, node,  
@@ -118,6 +140,23 @@
        p("go node DONE");
        if (n != node && next == null)
            throw new Error("node not found in sentence");
+       return i;
+    }
+    
+    private int getSentenceNum(Object sentence) {
+       if (! RDFUtil.isNodeType(fen, sentence, RST.Sentence)) 
+           throw new Error("sentence is not sentence! "+sentence);
+       
+       Object n = sentence;
+       Object prev = fen.graph.find1_X11(RST.nextSentence, n);
+       while (prev != null) {
+           n = prev;
+           prev = fen.graph.find1_X11(RST.nextSentence, n);
+       }
+       int i=0;
+       for (i=0; n!=sentence; i++) {
+           n = fen.graph.find1_11X(n, RST.nextSentence);
+       }
        return i;
     }
 




reply via email to

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