vips.gui
Class Editor

java.lang.Object
  extended by org.eclipse.swt.widgets.Widget
      extended by org.eclipse.swt.widgets.Control
          extended by org.eclipse.swt.widgets.Scrollable
              extended by org.eclipse.swt.widgets.Composite
                  extended by vips.gui.Editor
All Implemented Interfaces:
org.eclipse.swt.graphics.Drawable

public class Editor
extends org.eclipse.swt.widgets.Composite

Diese Klasse stellt ein Struktogramm grafisch dar und erlaubt dem Benutzer.
Der Editor hat eine EditorToolBar. Diese legt den Modus des Editors fest, entweder MODUS_AUSWAHL, dann wird immer bei einem Mausklick die drunterliegende Anweisung selektiert oder eine der Hinzufüge-Konstanten, dann wird, je nach Maustaste, vor oder hinter der Anweisung unter der Maus eine neue Anweisung eingefügt.


Field Summary
static org.eclipse.swt.graphics.Font font
           
static int MODUS_AUFRUF_HINZUFUEGEN
          Modus: AufrufAnweisung hinzufügen
static int MODUS_AUSWAHL
          Modus: Auswahl einer Anweisung
static int MODUS_BREAK_HINZUFUEGEN
          Modus: BreakAnweisung hinzufügen
static int MODUS_CONTINUE_HINZUFUEGEN
          Modus: ContinueAnweisung hinzufügen
static int MODUS_FOR_HINZUFUEGEN
          Modus: ForAnweisung hinzufügen
static int MODUS_IF_HINZUFUEGEN
          Modus: IfAnweisung hinzufügen
static int MODUS_SWITCH_HINZUFUEGEN
          Modus: SwitchAnweisung hinzufügen
static int MODUS_UNTIL_HINZUFUEGEN
          Modus: UntilAnweisung hinzufügen
static int MODUS_WHILE_HINZUFUEGEN
          Modus: WhileAnweisung hinzufügen
static int MODUS_ZUWEISUNG_HINZUFUEGEN
          Modus: ZuweisungsAnweisung hinzufügen
 
Fields inherited from class org.eclipse.swt.widgets.Control
handle
 
Constructor Summary
Editor(org.eclipse.swt.widgets.Composite parent, Struktogramm strukto)
          Erzeugt einen neuen Editor
 
Method Summary
 void actionAusschneiden()
          Kopiert die ausgewählte Anweisung in die Zwischenablage und entfernt sie dann.
 void actionBearbeiten()
          Bearbeitet die ausgewählte Anweisung
 void actionExport(java.lang.String filename)
          Diese Action speichert das Struktogramm in eine Datei im BMP oder GIF-Format.
 void actionKopieren()
          Kopiert die ausgewählte Anweisung in die Zwischenablage
 void actionLoeschen()
          Löscht die aktuell ausgewählte Anweisung, wenn das möglich ist.
 Anweisung getAuswahl()
          Gibt die ausgewählte Anweisung zurück oder null, wenn nix selektiert ist.
 Anweisung getEinzelschrittAnweisung()
          Gibt die Anweisung zurück, die im Einzelschritt-Modus als nächstes ausgeführt wird.
 Anweisung getLaufzeitfehlerAnweisung()
          Gibt die Anweisung zurück, in der ein Laufzeitfehler aufgetretten ist, oder null, wenn nicht gesetzt
 int getModus()
          Gibt den Modus dieses Editors zurück
 Anweisung getPasteAnweisung()
          Gibt die einzufügende Anweisung zurück
 Struktogramm getStruktogramm()
          Gibt das Struktogramm zurück, das in diesem Editor bearbeitet wird.
 boolean hatFocus()
          Gibt zurück, ob der Canvas den Focus hat
 void setEinzelschrittAnweisung(Anweisung a)
          Setzt die Anweisung, die im Einzelschritt-Modus als nächstes ausgeführt wird, kann auch null sein.
 boolean setFocus()
          Überschreibt setFocus so, dass der Canvas den Focus bekommt.
 void setLaufzeitfehlerAnweisung(Anweisung a)
          Setzt die Anweisung, in der ein Laufzeitfehler aufgetretten ist, kann auch null sein
 void setModus(int neuerModus)
          Setzt den Modus dieses Editors.
 void setPasteAnweisung(Anweisung a)
          Setzt die einzufügende Anweisung, der Mauszeiger und die Statuszeile werden auch geupdated
 
Methods inherited from class org.eclipse.swt.widgets.Composite
changed, checkSubclass, computeSize, getBackgroundMode, getChildren, getLayout, getLayoutDeferred, getTabList, isLayoutDeferred, layout, layout, layout, layout, setBackgroundMode, setLayout, setLayoutDeferred, setTabList
 
Methods inherited from class org.eclipse.swt.widgets.Scrollable
computeTrim, getBorderWidth, getClientArea, getHorizontalBar, getVerticalBar
 
Methods inherited from class org.eclipse.swt.widgets.Control
addControlListener, addDragDetectListener, addFocusListener, addHelpListener, addKeyListener, addMenuDetectListener, addMouseListener, addMouseMoveListener, addMouseTrackListener, addMouseWheelListener, addPaintListener, addTraverseListener, computeSize, dragDetect, dragDetect, forceFocus, getAccessible, getBackground, getBackgroundImage, getBounds, getCursor, getDragDetect, getEnabled, getFont, getForeground, getLayoutData, getLocation, getMenu, getMonitor, getParent, getRegion, getShell, getSize, getToolTipText, getVisible, internal_dispose_GC, internal_new_GC, isEnabled, isFocusControl, isReparentable, isVisible, moveAbove, moveBelow, pack, pack, print, redraw, redraw, removeControlListener, removeDragDetectListener, removeFocusListener, removeHelpListener, removeKeyListener, removeMenuDetectListener, removeMouseListener, removeMouseMoveListener, removeMouseTrackListener, removeMouseWheelListener, removePaintListener, removeTraverseListener, setBackground, setBackgroundImage, setBounds, setBounds, setCapture, setCursor, setDragDetect, setEnabled, setFont, setForeground, setLayoutData, setLocation, setLocation, setMenu, setParent, setRedraw, setRegion, setSize, setSize, setToolTipText, setVisible, toControl, toControl, toDisplay, toDisplay, traverse, update
 
Methods inherited from class org.eclipse.swt.widgets.Widget
addDisposeListener, addListener, checkWidget, dispose, getData, getData, getDisplay, getListeners, getStyle, isDisposed, isListening, notifyListeners, removeDisposeListener, removeListener, removeListener, setData, setData, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

MODUS_AUSWAHL

public static final int MODUS_AUSWAHL
Modus: Auswahl einer Anweisung

See Also:
Constant Field Values

MODUS_ZUWEISUNG_HINZUFUEGEN

public static final int MODUS_ZUWEISUNG_HINZUFUEGEN
Modus: ZuweisungsAnweisung hinzufügen

See Also:
Constant Field Values

MODUS_AUFRUF_HINZUFUEGEN

public static final int MODUS_AUFRUF_HINZUFUEGEN
Modus: AufrufAnweisung hinzufügen

See Also:
Constant Field Values

MODUS_FOR_HINZUFUEGEN

public static final int MODUS_FOR_HINZUFUEGEN
Modus: ForAnweisung hinzufügen

See Also:
Constant Field Values

MODUS_IF_HINZUFUEGEN

public static final int MODUS_IF_HINZUFUEGEN
Modus: IfAnweisung hinzufügen

See Also:
Constant Field Values

MODUS_SWITCH_HINZUFUEGEN

public static final int MODUS_SWITCH_HINZUFUEGEN
Modus: SwitchAnweisung hinzufügen

See Also:
Constant Field Values

MODUS_UNTIL_HINZUFUEGEN

public static final int MODUS_UNTIL_HINZUFUEGEN
Modus: UntilAnweisung hinzufügen

See Also:
Constant Field Values

MODUS_WHILE_HINZUFUEGEN

public static final int MODUS_WHILE_HINZUFUEGEN
Modus: WhileAnweisung hinzufügen

See Also:
Constant Field Values

MODUS_BREAK_HINZUFUEGEN

public static final int MODUS_BREAK_HINZUFUEGEN
Modus: BreakAnweisung hinzufügen

See Also:
Constant Field Values

MODUS_CONTINUE_HINZUFUEGEN

public static final int MODUS_CONTINUE_HINZUFUEGEN
Modus: ContinueAnweisung hinzufügen

See Also:
Constant Field Values

font

public static org.eclipse.swt.graphics.Font font
Constructor Detail

Editor

public Editor(org.eclipse.swt.widgets.Composite parent,
              Struktogramm strukto)
Erzeugt einen neuen Editor

Parameters:
parent - In diesen Composite wird der Editor reingesetzt
strukto - Das zu bearbeitende Struktogramm
Throws:
java.lang.IllegalArgumentException - Wenn strukto null ist
Method Detail

actionExport

public void actionExport(java.lang.String filename)
Diese Action speichert das Struktogramm in eine Datei im BMP oder GIF-Format.

Throws:
java.lang.IllegalArgumentException - Wenn filename null ist
org.eclipse.swt.SWTException - Fehlercode SWT.ERROR_IO

actionBearbeiten

public void actionBearbeiten()
Bearbeitet die ausgewählte Anweisung


actionAusschneiden

public void actionAusschneiden()
Kopiert die ausgewählte Anweisung in die Zwischenablage und entfernt sie dann.


actionKopieren

public void actionKopieren()
Kopiert die ausgewählte Anweisung in die Zwischenablage


actionLoeschen

public void actionLoeschen()
Löscht die aktuell ausgewählte Anweisung, wenn das möglich ist.


hatFocus

public boolean hatFocus()
Gibt zurück, ob der Canvas den Focus hat


setFocus

public boolean setFocus()
Überschreibt setFocus so, dass der Canvas den Focus bekommt.

Overrides:
setFocus in class org.eclipse.swt.widgets.Composite

setLaufzeitfehlerAnweisung

public void setLaufzeitfehlerAnweisung(Anweisung a)
Setzt die Anweisung, in der ein Laufzeitfehler aufgetretten ist, kann auch null sein


getLaufzeitfehlerAnweisung

public Anweisung getLaufzeitfehlerAnweisung()
Gibt die Anweisung zurück, in der ein Laufzeitfehler aufgetretten ist, oder null, wenn nicht gesetzt


setEinzelschrittAnweisung

public void setEinzelschrittAnweisung(Anweisung a)
Setzt die Anweisung, die im Einzelschritt-Modus als nächstes ausgeführt wird, kann auch null sein.


getEinzelschrittAnweisung

public Anweisung getEinzelschrittAnweisung()
Gibt die Anweisung zurück, die im Einzelschritt-Modus als nächstes ausgeführt wird.


setPasteAnweisung

public void setPasteAnweisung(Anweisung a)
Setzt die einzufügende Anweisung, der Mauszeiger und die Statuszeile werden auch geupdated


getPasteAnweisung

public Anweisung getPasteAnweisung()
Gibt die einzufügende Anweisung zurück


getAuswahl

public Anweisung getAuswahl()
Gibt die ausgewählte Anweisung zurück oder null, wenn nix selektiert ist.


setModus

public void setModus(int neuerModus)
Setzt den Modus dieses Editors.
Es wird auch die Toolbar aktualisiert

Throws:
java.lang.IllegalArgumentException - Wenn neuerModus keine der in dieser Klasse definierten MODUS_ Konstanten ist

getModus

public int getModus()
Gibt den Modus dieses Editors zurück


getStruktogramm

public Struktogramm getStruktogramm()
Gibt das Struktogramm zurück, das in diesem Editor bearbeitet wird.