grada
Class FunktionenAnzeigen

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by grada.FunktionenAnzeigen
All Implemented Interfaces:
InterfaceFunktionsEingabe, InterfaceFunktionsListenAenderung, InterfaceFunktionsParameterAenderung, InterfaceParserEingabe, InterfaceZoomAenderung, java.awt.event.FocusListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible

public class FunktionenAnzeigen
extends javax.swing.JPanel
implements InterfaceParserEingabe, InterfaceFunktionsListenAenderung, InterfaceZoomAenderung, InterfaceFunktionsEingabe, InterfaceFunktionsParameterAenderung, java.awt.event.FocusListener

Bedienoberfläche für die Funktionenanzeige und -Eingabe. In dieser Klasse ist die Benutzeroberfläche untergebracht, hier reagiert die Oberfläche dynamisch auf die Eingaben des Benutzers, mit vorgegebenen Funktionstermen kann man sehr einfache Funktionen anzeigen, aber auch eigene komplexere Funktionen eingeben.

Version:
07.07.05
Author:
Thilo Beckmann
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Field Summary
 
Fields inherited from class javax.swing.JComponent
TOOL_TIP_TEXT_KEY, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
FunktionenAnzeigen()
          FunktionenAnzeigen erstellt Benutzeroberfläche.
FunktionenAnzeigen(java.lang.String funktionsterm)
          FunktionenAnzeigen erstellt Benutzeroberfläche.
 
Method Summary
 void aktualisiere()
          Aktualisiert die Anzeige.
 void focusGained(java.awt.event.FocusEvent e)
           
 void focusLost(java.awt.event.FocusEvent e)
           
 void funktionFehlerhaft(java.lang.String fehlerhafteFunktion, java.lang.String korrigierterTerm)
          Gibt Fehlerinformation.
 void funktionsListeWurdeVeraendert(FunktionsListenEvent e)
          Diese Methode wird aufgerufen, wenn mit Hilfe der FunktionsAuswahl die Liste der Funktionen verändert wurde, sei es durch löschen oder verändern einer Funktion.
 void funktionsParameterWurdenVeraendert(FunktionsParameterEvent e)
          Diese Methode wird aufgerufen, wenn an einem der Scrollbalken ein Wert für eine Formvariable geändert wurde
 void funktionsTermIstEingegebenWorden(FunktionsEingabeEvent e)
          Dieses Methode wird aufgerufen, wenn in im FunktionsEingabeFeld eine Funktion eingegeben und dann mit Enter oder mit dem Button aufgefordert wird, diesen Term als Graph zu zeichnen.
 double[] holeTermParameter()
          Gibt die Parameter zurück.
 void ladeFunktionenAusDatei()
          Zeigt Auswahlbildschirm.
 void ladeFunktionenAusDatei(java.lang.String dateiname)
          Läd eine Datei.
 void setzeTermEingabe(java.lang.String term)
          Setzt die Eingabezeile.
 void setzeTermInformation(java.lang.String info)
          Gibt Zusatzinformationen.
 void speicherFunkionenInDatei()
          Ruft DateiMenü auf.
 void speicherFunkionenInDatei(java.lang.String dateiname)
          Speichert Daten in Datei.
 void zoomWurdeVeraendert(ZoomEvent e)
          Diese Methode wird aufgerufen, wenn einer der Button in der ZoomBedienung angeklickt und damit der Zoom verändert wurde (aufgefordert wird den Zoom zu ändern).
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintImmediately, paintImmediately, print, printAll, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, contains, createImage, createImage, createVolatileImage, createVolatileImage, dispatchEvent, enable, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

FunktionenAnzeigen

public FunktionenAnzeigen(java.lang.String funktionsterm)
FunktionenAnzeigen erstellt Benutzeroberfläche. Dieser Konstruktor benötigt alle Informationen zur Oberfläche. Es kann alles wichtige eingestellt werden.

Parameters:
funktionsterm - Funktionsterm, der in der Eingabezeile steht

FunktionenAnzeigen

public FunktionenAnzeigen()
FunktionenAnzeigen erstellt Benutzeroberfläche. Dieser Konstruktor benötigt alle Informationen zur Oberfläche. Es kann alles wichtige eingestellt werden. Scrollbalken, Zoom, Optionen und FunktionsEingabe werden angezeigt, es wird keine Funktion ins Eingabefeld vorgegeben.

Method Detail

speicherFunkionenInDatei

public void speicherFunkionenInDatei()
Ruft DateiMenü auf. Hier wird ein Dateiname und ein Pfad ausgewählt. Die Datei wird dann dorthin gespeichert.


speicherFunkionenInDatei

public void speicherFunkionenInDatei(java.lang.String dateiname)
Speichert Daten in Datei. Diese methode sorgt dafür, dass die Funktionen und Beschriftungen, die gerade eingestellt sind, in die anzugebene Datei gespeichert werden.

Parameters:
dateiname - Dateiname/(pfad)

ladeFunktionenAusDatei

public void ladeFunktionenAusDatei()
Zeigt Auswahlbildschirm. Hier wird ein Auswahlbildschirm gezeigt, in dem man eine Datei auswählen kann, die zuvor gespeichert wurde.


ladeFunktionenAusDatei

public void ladeFunktionenAusDatei(java.lang.String dateiname)
Läd eine Datei. Alle Funktionen und Beschriftungen werden aus der anzugebenden Datei geholt.

Parameters:
dateiname - Dateiname/(pfad)

setzeTermEingabe

public void setzeTermEingabe(java.lang.String term)
Setzt die Eingabezeile. Hiermit kann der Parser die zu parsenden Funktionstext in eine korrekte Form gebracht in das Eingabefeld schreiben.

Specified by:
setzeTermEingabe in interface InterfaceParserEingabe
Parameters:
term - korrigierter Term vom Parser

holeTermParameter

public double[] holeTermParameter()
Gibt die Parameter zurück. Hiermit kann der Parser sich die geänderten Werte der Funktion holen, um somit schneller die neuen Punkte für die Graphenanzeige im Schaubild zu berechnen.

Specified by:
holeTermParameter in interface InterfaceParserEingabe
Returns:
gibt ein Array der Länge 26 zurück, in dem alle in Scrollbalken eingestellten Formvariablen gespeichert sind.

setzeTermInformation

public void setzeTermInformation(java.lang.String info)
Gibt Zusatzinformationen. Hiermit kann der Parser eine Information für den Benutzer übergeben (nützlich z.B. wenn eine falsche Eingabe korrigiert wurde und mit dieser Funktion dieser Hinweis als Tooltip angezeigt wird.

Specified by:
setzeTermInformation in interface InterfaceParserEingabe
Parameters:
info - Text mit Informationen

funktionFehlerhaft

public void funktionFehlerhaft(java.lang.String fehlerhafteFunktion,
                               java.lang.String korrigierterTerm)
Gibt Fehlerinformation. hier wird mitgeteilt, ob eine eingegebene Funktion einen Fehler aufweist, und der vom Benutzer korrigierte Funktionsterm mitgeteilt.

Specified by:
funktionFehlerhaft in interface InterfaceParserEingabe
Parameters:
fehlerhafteFunktion - alte fehlerhafte Funktion
korrigierterTerm - neue korrigierte Funktion

aktualisiere

public void aktualisiere()
Aktualisiert die Anzeige. Diese Methode wird vom Programm (Frame) aufgerufen, falls dieses in der Größe oder Position geändert wurde, damit das Schaubild des Graphen nicht teilweise oder komplett gelöscht ist.


funktionsListeWurdeVeraendert

public void funktionsListeWurdeVeraendert(FunktionsListenEvent e)
Diese Methode wird aufgerufen, wenn mit Hilfe der FunktionsAuswahl die Liste der Funktionen verändert wurde, sei es durch löschen oder verändern einer Funktion.

Specified by:
funktionsListeWurdeVeraendert in interface InterfaceFunktionsListenAenderung
Parameters:
e - FunktionsListenEvent, das die neue FunktionsListe enthält.

funktionsParameterWurdenVeraendert

public void funktionsParameterWurdenVeraendert(FunktionsParameterEvent e)
Diese Methode wird aufgerufen, wenn an einem der Scrollbalken ein Wert für eine Formvariable geändert wurde

Specified by:
funktionsParameterWurdenVeraendert in interface InterfaceFunktionsParameterAenderung
Parameters:
e - FunktionsParameterEvent

zoomWurdeVeraendert

public void zoomWurdeVeraendert(ZoomEvent e)
Diese Methode wird aufgerufen, wenn einer der Button in der ZoomBedienung angeklickt und damit der Zoom verändert wurde (aufgefordert wird den Zoom zu ändern).

Specified by:
zoomWurdeVeraendert in interface InterfaceZoomAenderung
Parameters:
e - ZoomEvent, das die neuen Zoomstufen enthält

funktionsTermIstEingegebenWorden

public void funktionsTermIstEingegebenWorden(FunktionsEingabeEvent e)
Dieses Methode wird aufgerufen, wenn in im FunktionsEingabeFeld eine Funktion eingegeben und dann mit Enter oder mit dem Button aufgefordert wird, diesen Term als Graph zu zeichnen.

Specified by:
funktionsTermIstEingegebenWorden in interface InterfaceFunktionsEingabe
Parameters:
e - FunktionsEingabeEvent, in dem der eingegebene Term steckt.

focusGained

public void focusGained(java.awt.event.FocusEvent e)
Specified by:
focusGained in interface java.awt.event.FocusListener

focusLost

public void focusLost(java.awt.event.FocusEvent e)
Specified by:
focusLost in interface java.awt.event.FocusListener