AMADEUS html plain
This sketchy text is generated by AMADEUS
class Branch
class Branch extends Scheme
liikmeteks lihtliikmed ja skeemid
Branch(byte t, BaseLanguage bl)
konstruktor
super(t, bl);
insert(new PrimitiveMember(Primitive.SIMPLE, new Text()), 0);
ylemklassi abstraktsete meetodite realisatsioonid
void insert(PrimitiveMember pm, int i)
lisada lihtliige
body.insertElementAt(pm, i);
void add(PrimitiveMember pm)
lisada lihtliige viimaseks
void insert(Sketch sk, int i)
lisada alamskeem
body.insertElementAt(sk, i);
sk.parent = this;
void add(Sketch sk)
lisada alamskeem viimaseks
void insert(Branch br, int i)
lisada haru
System.out.println
("Sketch: illegal attempt to insert branch!");
System.exit(0);
void removeMember(int i)
eemaldada i-s liige
int level()
taseme leidmine
<======0
kui on näiteks clipboardil
<======parent.level() + 1
Branch makeCopy()
haru kopeerimisel omaette (<-> clipboard)
Branch res = makeCopyRecurs();
int incr = -level();
res.incrementArrows(incr);
muuta noolepikkused
<======res
Branch makeCopyRecurs()
noolepikkused jaa"vad muutmata
Branch res = new Branch((byte)0, null);
tyyp
res.type = type;
skeemi tyyp
pa"is
* int i=0; i < head.size(); i++
PrimitiveHead h = primitiveHead(i);
res.insert(h.makeCopy(), i);
keha
* int i=0; i < body.size(); i++
Object o = member(i);
? (o instanceof Sketch)
Sketch sk = (Sketch)o;
Sketch s = sk.makeCopyRecurs();
s.parent = res;
res.insert(s, i+1);
<------
? (o instanceof Arrow)
Arrow ar = (Arrow)o;
res.insert(ar.make_Copy(), i+1);
<------
PrimitiveMember p = (PrimitiveMember)o;
res.insert(p.makeCopy(), i+1);
res.removeMember(0);
baaskeel
res.baseLanguage =
BaseLanguage.newBaseLanguage(baseLanguage.type);
kommentaar
res.comment = comment.makeCopy();
res.parent = null;
ylemus
View.set(res, view.type);
vaade
res.icon = icon;
ikoniseerituse tunnus
<======res
boolean isRichModel()
<======true
* int j = 0, m = head.size(); j < m; j++
? primitiveHead(j).isRichModel()
<==========true
* int i = 0, n = body.size(); i < n; i++
Object o = member(i);
? o instanceof Sketch
? ((Sketch)o).isRichModel()
<==================true
<======
? ((Primitive)o).isRichModel()
<==============true
<======false
public void incrementArrows(int incr)
suurendab ko~igi noolte otsatasemed incr vo~rra
(taval. toomisel ja kopeerimisel, ka incr < 0)
* int i=0; i < body.size(); i++
Object o = member(i);
? o instanceof Sketch
Sketch sk = (Sketch)o;
sk.incrementArrows(incr);
<------
? o instanceof Arrow
Arrow ar = (Arrow)o;
ar.level += incr;
ar.adjustType();