AMADEUS html plain
class UndoTextualizeInPlace extends Undo
selle isendeid loob mitte Editor, vaid Item36Listener
Branch ülemus;
Sketch keepSource;
int i, m;
boolean lisaskeem;
UndoTextualizeInPlace(Branch ülem, Sketch keep,
int ii, int mm, boolean lisask)
ülemus = ülem;
keepSource = keep;
i = ii; m = mm;
lisaskeem = lisask;
public void undo(Editor ed)
AmCanvas c = ed.sketchyText.frame.viewArea;
eemaldada tekstualiseeritud osa primtiivid:
* int j = i; j <= m; j++
panna tagasi lihtskeem:
ülemus.insert(keepSource, i);
Cursor cur1, cur2;
cur1 = new Cursor((Scheme)keepSource);
? lisaskeem
keepSource oli lisatud, avada see ja sisu võtta valikuks
int k = i;
avatava nr ülemusharus
int liikmeidEnne = ülemus.body.size();
keepSource.open();
int liikmeidPärast = ülemus.body.size();
int n = liikmeidPärast - liikmeidEnne + 1;
avatu liikmete arv
n = k + n - 1;
avatu viimase liikme nr
Object o = ülemus.member(k);
? o instanceof Scheme
cur1 = new Cursor((Scheme)o);
<======
cur1 = new Cursor(ülemus, (Primitive)o);
o = ülemus.member(n);
? o instanceof Scheme
cur2 = new Cursor((Scheme)o);
<======
cur2 = new Cursor(ülemus, (Primitive)o);
c.selection = new Selection(c, cur1, cur2);
ed.caret.goTo(cur1);
ed.sketchyText.main.view.plan(c.hd, c.vd);