EOS 2  1.1.0
Einfache Objektbasierte Sprache
LoopForever.java
gehe zur Dokumentation dieser Datei
1 package de.lathanda.eos.gui.flowchart;
2 
3 import de.lathanda.eos.baseparser.LoopForeverUnit;
4 import de.lathanda.eos.gui.diagram.Drawing;
5 
12 public class LoopForever extends ConnectedUnit {
13  private final Sequence sequence;
14  private float center;
15 
17  sequence = new Sequence(n.getSequence());
18  neverEnds = true;
19  needsIncomingArrow = false;
21  }
22 
23  @Override
24  public void layoutUnit(Drawing d) {
25  sequence.layout(d);
26  sequence.setOffsetY(SPACE);
27  sequence.setOffsetX(SPACE);
28  height = sequence.getHeight() + 2 * SPACE;
29  width = sequence.getWidth() + 2 * SPACE;
30  center = width / 2;
31  }
32 
33  @Override
34  public void drawUnit(Drawing d) {
35  sequence.draw(d);
36 
37  // draw back jump
38  d.drawLine(center, height - SPACE, center, height);
39  d.drawLine(center, height, width, height);
40  d.drawLine(width, height, width, 0);
41  d.drawLine(width, 0, center, 0);
42 
43  // draw initial arror
44  d.drawArrow(center, 0, center, SPACE, 2);
45  }
46 
47 }
void drawLine(float x1, float y1, float x2, float y2)
Definition: Drawing.java:138
void drawArrow(float x1, float y1, float x2, float y2, float size)
Definition: Drawing.java:284
final void layout(Drawing d)
Definition: Unit.java:50
final void draw(Drawing d)
Definition: Unit.java:29
static final float SPACE
Definition: Unit.java:14
void setOffsetY(float offsetY)
Definition: Unit.java:79
void setOffsetX(float offsetX)
Definition: Unit.java:63
Impressum