AMADEUS html plain
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.awt.Toolkit.*;
beep
class Item53Listener
class Item53Listener implements ActionListener
Insert+Primitive
AmFrame frame;
Item53Listener(AmFrame fr)
konstruktor
public void actionPerformed(ActionEvent event)
teha tühi primitiiv:
Color col = Default.foregroundColor;
PrimitiveMember p =
new PrimitiveMember(Primitive.SIMPLE, new Text(col));
lisada:
insertPrimitive(frame, p);
public static void insertPrimitive(AmFrame frame, PrimitiveMember p)
frame - jooksev raam
p - lisatav primitiiv
AmCanvas c = frame.viewArea;
Editor editor = frame.contents.editor;
Caret caret = editor.caret;
BaseLanguage_AlgJava.kuhuJaMitmendaks(
caret, BaseLanguage_AlgJava.ENTER);
? BaseLanguage_AlgJava.kuhu != null
editor.insertPrimitive(BaseLanguage_AlgJava.kuhu,
BaseLanguage_AlgJava.mitmendaks, p);
frame.contents.main.view.plan(c.hd, c.vd);
c.caretToScreen();
karett ekraanile
c.own = true; c.repaint();//c.X, c.Y, c.W, c.H);
<======
Toolkit.getDefaultToolkit().beep();
//lisada uus primitiiv
Scheme where = caret.scheme;
millesse lisada
olenevalt kareti asukohast
? (caret.scheme.parent == null) ||
(caret.scheme instanceof Branch) ||
(caret.scheme.type == Scheme.MODULE && caret.inSchemeComment()) ||
!caret.inSchemeComment()
ALGJAVA ( + eelviimane rida)
mitmendaks kehas lisada
int i = 0;
kui skeemikommentaaril või päises
? caret.inBody()
i = caret.scheme.body.indexOf(caret.primitive)+1;
? caret.scheme instanceof Branch
editor.insertPrimitive(caret.scheme, i, p);
<======
where = (Scheme)(caret.scheme.member(0));
editor.insertPrimitive(where, i, p);
<======
skeemi kommentaaris
int i = caret.scheme.parent.body.indexOf(caret.scheme);
where = (Scheme)(caret.scheme.parent);
editor.insertPrimitive(where, i+1, p);