Class XORView

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Window
              extended by java.awt.Frame
                  extended by javax.swing.JFrame
                      extended by XORView
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.Observer, javax.accessibility.Accessible, javax.swing.RootPaneContainer, javax.swing.WindowConstants

public class XORView
extends javax.swing.JFrame
implements java.util.Observer

View zum XORModel.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JFrame
javax.swing.JFrame.AccessibleJFrame
 
Nested classes/interfaces inherited from class java.awt.Frame
java.awt.Frame.AccessibleAWTFrame
 
Nested classes/interfaces inherited from class java.awt.Window
java.awt.Window.AccessibleAWTWindow
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BaselineResizeBehavior, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
 java.lang.String ACTION_CODIEREN
           
 java.lang.String ACTION_EXIT
           
private  int ACTION_KEY_CODIEREN
           
private  int ACTION_KEY_EXIT
           
private  int ACTION_KEY_NEU
           
private  int ACTION_KEY_ORIGINAL
           
private  int ACTION_KEY_SPEICHERN
           
 java.lang.String ACTION_NEU
           
 java.lang.String ACTION_ORIGINAL
           
 java.lang.String ACTION_SPEICHERN
           
private  XORController controller
          Zum View gehoeriger Cotroller.
private  javax.swing.JTextArea input
          Originalcode.
private  int KEY_DEF
           
private  int KEY_MAX
           
private  int KEY_MIN
           
private  javax.swing.JLabel lbInput
          Label fuer Dateinamen Originalcode.
private  javax.swing.JLabel lbKey
          Label fuer Schluessel.
private  javax.swing.JLabel lbOutput
          Label fuer Dateinamen Verschluesselter Code.
private  javax.swing.JMenuItem miCodieren
          Menuepunkt Codieren.
private  XORModel model
          Mathematisches Modell, enthaelt Funktionalitaet des XOR-Codierers.
private  javax.swing.JTextArea output
          Verschluesselter Code.
private  javax.swing.JSlider slKey
          Schieberegister Schluessel.
 
Fields inherited from class javax.swing.JFrame
accessibleContext, EXIT_ON_CLOSE, rootPane, rootPaneCheckingEnabled
 
Fields inherited from class java.awt.Frame
CROSSHAIR_CURSOR, DEFAULT_CURSOR, E_RESIZE_CURSOR, HAND_CURSOR, ICONIFIED, MAXIMIZED_BOTH, MAXIMIZED_HORIZ, MAXIMIZED_VERT, MOVE_CURSOR, N_RESIZE_CURSOR, NE_RESIZE_CURSOR, NORMAL, NW_RESIZE_CURSOR, S_RESIZE_CURSOR, SE_RESIZE_CURSOR, SW_RESIZE_CURSOR, TEXT_CURSOR, W_RESIZE_CURSOR, WAIT_CURSOR
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface javax.swing.WindowConstants
DISPOSE_ON_CLOSE, DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
XORView(XORModel model, java.lang.String titel)
          Konstruktor, setzt Ueberschrift und installiert MVC.
 
Method Summary
private  javax.swing.JMenuBar createMenuBar()
          Erzeugen eines Menues, Controller verarbeitet Menueereignisse.
private  javax.swing.Box createSliderAnzeige()
          Erzeugen eines Schieberegisters zur Schluesseleingabe, Controller verarbeitet Registerereignisse.
private  javax.swing.Box createTextAnzeige(boolean istEingabe)
          Erzeugen eines Textfeldes.
private  javax.swing.Box createXORBox()
          Senkrechte Box, bestehend aus einer waagerechten Box zur Textanzeige des originalen und des codierten Textes und einem Schieberegister zur Schluesseleinstellung.
private  java.lang.String getBytes(Code code)
          Darstellen eines Codes als String.
private  java.lang.String getDateiName(Code code)
          Lesen des Dateinamen eines Codes.
 int getSlKey()
          Lesen des vom Schieberegister eingestellten Schluesselwertes.
private  XORController makeController()
          Erzeugt Controller, Empfaenger fuer Ereignisse.
private  void makeView()
          Erzeugt View, baut die grafische Oberflaeche auf, Controller verarbeitet Fensterereignisse.
 void release()
          Entfernt Fenster, deinstalliert MVC.
 void reset()
          Setzt Startzustand, Menuepunkt Neu.
 void setLbKey(int wert)
          Setzen des Label zum Schieberegister.
 void setMiCodieren(boolean enable)
          Setzen/Ruecksetzen des Menupunktes Codieren und des schluessels.
 void update(java.util.Observable m, java.lang.Object o)
          Ueberschreiben der Interfacemethode update, legt Reaktion auf Aenderungen im Model fest.
 
Methods inherited from class javax.swing.JFrame
addImpl, createRootPane, frameInit, getAccessibleContext, getContentPane, getDefaultCloseOperation, getGlassPane, getGraphics, getJMenuBar, getLayeredPane, getRootPane, getTransferHandler, isDefaultLookAndFeelDecorated, isRootPaneCheckingEnabled, paramString, processWindowEvent, remove, repaint, setContentPane, setDefaultCloseOperation, setDefaultLookAndFeelDecorated, setGlassPane, setIconImage, setJMenuBar, setLayeredPane, setLayout, setRootPane, setRootPaneCheckingEnabled, setTransferHandler, update
 
Methods inherited from class java.awt.Frame
addNotify, getCursorType, getExtendedState, getFrames, getIconImage, getMaximizedBounds, getMenuBar, getState, getTitle, isResizable, isUndecorated, remove, removeNotify, setCursor, setExtendedState, setMaximizedBounds, setMenuBar, setResizable, setState, setTitle, setUndecorated
 
Methods inherited from class java.awt.Window
addPropertyChangeListener, addPropertyChangeListener, addWindowFocusListener, addWindowListener, addWindowStateListener, applyResourceBundle, applyResourceBundle, createBufferStrategy, createBufferStrategy, dispose, getBufferStrategy, getFocusableWindowState, getFocusCycleRootAncestor, getFocusOwner, getFocusTraversalKeys, getGraphicsConfiguration, getIconImages, getInputContext, getListeners, getLocale, getModalExclusionType, getMostRecentFocusOwner, getOwnedWindows, getOwner, getOwnerlessWindows, getToolkit, getWarningString, getWindowFocusListeners, getWindowListeners, getWindows, getWindowStateListeners, hide, isActive, isAlwaysOnTop, isAlwaysOnTopSupported, isFocusableWindow, isFocusCycleRoot, isFocused, isLocationByPlatform, isShowing, pack, paint, postEvent, processEvent, processWindowFocusEvent, processWindowStateEvent, removeWindowFocusListener, removeWindowListener, removeWindowStateListener, reshape, setAlwaysOnTop, setBounds, setBounds, setCursor, setFocusableWindowState, setFocusCycleRoot, setIconImages, setLocationByPlatform, setLocationRelativeTo, setMinimumSize, setModalExclusionType, setSize, setSize, setVisible, show, toBack, toFront
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalPolicy, getInsets, getLayout, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, print, printComponents, processContainerEvent, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBaseline, getBaselineResizeBehavior, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resize, resize, setBackground, setComponentOrientation, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setName, setPreferredSize, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.awt.MenuContainer
getFont, postEvent
 

Field Detail

ACTION_NEU

public final java.lang.String ACTION_NEU
See Also:
Constant Field Values

ACTION_KEY_NEU

private final int ACTION_KEY_NEU
See Also:
Constant Field Values

ACTION_ORIGINAL

public final java.lang.String ACTION_ORIGINAL
See Also:
Constant Field Values

ACTION_KEY_ORIGINAL

private final int ACTION_KEY_ORIGINAL
See Also:
Constant Field Values

ACTION_CODIEREN

public final java.lang.String ACTION_CODIEREN
See Also:
Constant Field Values

ACTION_KEY_CODIEREN

private final int ACTION_KEY_CODIEREN
See Also:
Constant Field Values

ACTION_SPEICHERN

public final java.lang.String ACTION_SPEICHERN
See Also:
Constant Field Values

ACTION_KEY_SPEICHERN

private final int ACTION_KEY_SPEICHERN
See Also:
Constant Field Values

ACTION_EXIT

public final java.lang.String ACTION_EXIT
See Also:
Constant Field Values

ACTION_KEY_EXIT

private final int ACTION_KEY_EXIT
See Also:
Constant Field Values

KEY_MIN

private final int KEY_MIN
See Also:
Constant Field Values

KEY_MAX

private final int KEY_MAX
See Also:
Constant Field Values

KEY_DEF

private final int KEY_DEF
See Also:
Constant Field Values

input

private javax.swing.JTextArea input
Originalcode.


lbInput

private javax.swing.JLabel lbInput
Label fuer Dateinamen Originalcode.


output

private javax.swing.JTextArea output
Verschluesselter Code.


lbOutput

private javax.swing.JLabel lbOutput
Label fuer Dateinamen Verschluesselter Code.


slKey

private javax.swing.JSlider slKey
Schieberegister Schluessel.


lbKey

private javax.swing.JLabel lbKey
Label fuer Schluessel.


miCodieren

private javax.swing.JMenuItem miCodieren
Menuepunkt Codieren.


model

private XORModel model
Mathematisches Modell, enthaelt Funktionalitaet des XOR-Codierers.


controller

private XORController controller
Zum View gehoeriger Cotroller.

Constructor Detail

XORView

public XORView(XORModel model,
               java.lang.String titel)
Konstruktor, setzt Ueberschrift und installiert MVC.

Parameters:
model - Model, welches dargestellt werden soll
titel - Ueberschrift in der Fenstertitelzeile
Method Detail

makeController

private XORController makeController()
Erzeugt Controller, Empfaenger fuer Ereignisse.

Returns:
Controller fuer View

makeView

private void makeView()
Erzeugt View, baut die grafische Oberflaeche auf, Controller verarbeitet Fensterereignisse.


createXORBox

private javax.swing.Box createXORBox()
Senkrechte Box, bestehend aus einer waagerechten Box zur Textanzeige des originalen und des codierten Textes und einem Schieberegister zur Schluesseleinstellung.


createTextAnzeige

private javax.swing.Box createTextAnzeige(boolean istEingabe)
Erzeugen eines Textfeldes.

Parameters:
istEingabe - true, Textfeld fuer originalen Text false, Textfeld fuer codierten Text

createSliderAnzeige

private javax.swing.Box createSliderAnzeige()
Erzeugen eines Schieberegisters zur Schluesseleingabe, Controller verarbeitet Registerereignisse.


createMenuBar

private javax.swing.JMenuBar createMenuBar()
Erzeugen eines Menues, Controller verarbeitet Menueereignisse.


reset

public void reset()
Setzt Startzustand, Menuepunkt Neu.


setMiCodieren

public void setMiCodieren(boolean enable)
Setzen/Ruecksetzen des Menupunktes Codieren und des schluessels.

Parameters:
enable - true, falls Original codiert.

setLbKey

public void setLbKey(int wert)
Setzen des Label zum Schieberegister.

Parameters:
wert - Wert des Schluessels

getSlKey

public int getSlKey()
Lesen des vom Schieberegister eingestellten Schluesselwertes.

Returns:
aktueller Schluesselwert

update

public void update(java.util.Observable m,
                   java.lang.Object o)
Ueberschreiben der Interfacemethode update, legt Reaktion auf Aenderungen im Model fest.

Specified by:
update in interface java.util.Observer
Parameters:
m - Model, welches Aenderungen meldet
o - geaendertes Objekt

getDateiName

private java.lang.String getDateiName(Code code)
Lesen des Dateinamen eines Codes.

Returns:
Dateiname als String

getBytes

private java.lang.String getBytes(Code code)
Darstellen eines Codes als String.

Returns:
Code als String

release

public void release()
Entfernt Fenster, deinstalliert MVC.