26 |
|
|
27 |
package org.fenfire.util; |
package org.fenfire.util; |
28 |
import org.fenfire.*; |
import org.fenfire.*; |
29 |
|
import org.fenfire.structure.Ff; |
30 |
import org.nongnu.alph.*; |
import org.nongnu.alph.*; |
31 |
import org.nongnu.alph.xml.*; |
import org.nongnu.alph.xml.*; |
32 |
|
|
33 |
import java.util.*; |
import java.util.*; |
34 |
import java.io.*; |
import java.io.*; |
35 |
|
|
|
|
|
36 |
/** Help class to work with Alph |
/** Help class to work with Alph |
37 |
*/ |
*/ |
38 |
public class AlphContent { |
public class AlphContent { |
42 |
|
|
43 |
|
|
44 |
private Fen fen; |
private Fen fen; |
45 |
public AlphContent( Fen fen) { |
private Ff ff; |
46 |
|
public AlphContent( Fen fen, Ff ff ) { |
47 |
this.fen = fen; |
this.fen = fen; |
48 |
|
this.ff = ff; |
49 |
} |
} |
50 |
|
|
51 |
public String getText(Object node) { |
public String getText(Object node) { |
52 |
return this.getText(fen.graph, node); |
Enfilade1D enf = (Enfilade1D)ff.getContent(node); |
|
} |
|
|
public String getText(org.fenfire.swamp.ConstGraph graph, Object node) { |
|
|
Enfilade1D enf = (Enfilade1D)fen.txtfunc.f(graph, node); |
|
53 |
return enf.makeString(); |
return enf.makeString(); |
54 |
} |
} |
55 |
|
|
56 |
public void setText(Object node, String s, boolean user) { |
public void setText(Object node, String s, boolean user) { |
57 |
fen.txt.set(node, fen.enfMaker.makeEnfilade( |
ff.setContent(node, fen.enfMaker.makeEnfilade( |
58 |
(user ? fen.userSpanMaker : fen.fakeSpanMaker) |
(user ? fen.userSpanMaker : fen.fakeSpanMaker) |
59 |
.makeTextSpan(s))); |
.makeTextSpan(s))); |
60 |
} |
} |
61 |
|
|
62 |
public void insertText(Object node, int ind, String s, boolean user) { |
public void insertText(Object node, int ind, String s, boolean user) { |
63 |
Enfilade1D old = (Enfilade1D)fen.txtfunc.f(fen.constgraph, node); |
Enfilade1D old = (Enfilade1D)ff.getContent(node); |
64 |
|
|
65 |
Enfilade1D enf = old.sub(0, ind); |
Enfilade1D enf = old.sub(0, ind); |
66 |
enf = enf.plus( |
enf = enf.plus( |
68 |
.makeTextSpan(s)); |
.makeTextSpan(s)); |
69 |
enf = enf.plus(old.sub(ind)); |
enf = enf.plus(old.sub(ind)); |
70 |
|
|
71 |
fen.txt.set(node, enf); |
ff.setContent(node, enf); |
72 |
} |
} |
73 |
|
|
74 |
public void deleteText(Object node, int begin, int end) { |
public void deleteText(Object node, int begin, int end) { |
75 |
Enfilade1D old = (Enfilade1D)fen.txtfunc.f(fen.constgraph, node); |
Enfilade1D old = (Enfilade1D)ff.getContent(node); |
76 |
Enfilade1D enf = old.sub(0, begin); |
Enfilade1D enf = old.sub(0, begin); |
77 |
enf = enf.plus(old.sub(end)); |
enf = enf.plus(old.sub(end)); |
78 |
|
|
79 |
fen.txt.set(node, enf); |
ff.setContent(node, enf); |
80 |
} |
} |
81 |
|
|
82 |
} |
} |