Class AbstractInput

java.lang.Object
de.willuhn.jameica.gui.input.AbstractInput
All Implemented Interfaces:
Input, Part
Direct Known Subclasses:
ButtonInput, CheckboxInput, ImageInput, LabelInput, LinkInput, RadioInput, ScaleInput, SearchInput, SelectInput, SpinnerInput, TextInput

public abstract class AbstractInput extends Object implements Input
Basisklasse fuer Eingabefelder.
Author:
willuhn
  • Field Summary

    Fields inherited from interface de.willuhn.jameica.gui.input.Input

    DATAKEY_TOOLTIP
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    addListener(org.eclipse.swt.widgets.Listener l)
    Fuegt dem Eingabe-Feld einen Listener hinzu, der bei jedem Focus-Wechsel ausgeloest wird.
    protected void
    addListener(org.eclipse.swt.widgets.Widget w, org.eclipse.swt.widgets.Listener l)
    Übernimmt das eigentliche Hinzufügen des Listeners zum Widget.
    Liefert die Context-Daten.
    Liefert die Label-Bezeichnung des Eingabe-Feldes.
    protected org.eclipse.swt.widgets.Composite
    Liefert das Composite, in dem das Control gemalt werden soll.
    int
    Liefert die Stylebits (GridData-Settings), welche zum Erstellen des Widgets verwendet werden.
    boolean
    Prueft, ob sich der Wert von Input.getValue() seit dem letzten Aufruf von hasChanged() geaendert hat.
    boolean
    Prueft, ob es sich um ein Pflichtfeld handelt.
    final void
    paint(org.eclipse.swt.widgets.Composite parent)
    Positioniert und malt das Eingabefeld im uebergebenen Composite.
    final void
    paint(org.eclipse.swt.widgets.Composite parent, int width)
    Positioniert und malt das Eingabefeld im uebergebenen Composite.
    void
    setComment(String comment)
    Fuegt hinter das Eingabefeld noch einen Kommentar.
    void
    setData(String key, Object data)
    Speichert optionale Context-Daten.
    void
    Definiert eine Liste von Zeichen, die nicht eingegeben werden koennen.
    void
    setMandatory(boolean mandatory)
    Legt fest, ob es sich um ein Pflichtfeld handelt.
    void
    Speichert die Label-Bezeichnung des Eingabe-Feldes.
    void
    Definiert eine Liste von Zeichen, die eingegeben werden koennen.
    protected void
    Wird immer dann aufgerufen, wenn eines der Controls des Eingabe-Feldes aktualisiert wird.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface de.willuhn.jameica.gui.input.Input

    disable, enable, focus, getControl, getValue, isEnabled, setEnabled, setValue
  • Constructor Details

    • AbstractInput

      public AbstractInput()
  • Method Details

    • getParent

      protected org.eclipse.swt.widgets.Composite getParent()
      Liefert das Composite, in dem das Control gemalt werden soll.
      Returns:
      das Composite, in dem das Control platziert wird.
    • getStyleBits

      public int getStyleBits()
      Liefert die Stylebits (GridData-Settings), welche zum Erstellen des Widgets verwendet werden.
      Returns:
      die Style.Bits.
    • addListener

      public void addListener(org.eclipse.swt.widgets.Listener l)
      Description copied from interface: Input
      Fuegt dem Eingabe-Feld einen Listener hinzu, der bei jedem Focus-Wechsel ausgeloest wird. Besteht das Eingabe-Feld aus mehreren Teilen (z.Bsp. bei SearchInput aus Eingabe-Feld + Knopf dahinter) dann wird der Listener bei Focus-Wechsel jedes dieser Teile ausgeloest.
      Specified by:
      addListener in interface Input
      Parameters:
      l - zu registrierender Listener.
    • setComment

      public void setComment(String comment)
      Description copied from interface: Input
      Fuegt hinter das Eingabefeld noch einen Kommentar. Existiert der Kommentar bereits, wird er gegen den neuen ersetzt.

      Hinweis: Wird die Funktion nicht aufgerufen, bevor das Eingabe-Feld gemalt wird, dann wird es auch nicht angezeigt. Denn vorm Malen muss bekannt sein, ob es angezeigt werden soll, damit der Platz dafuer reserviert werden kann.

      Specified by:
      setComment in interface Input
      Parameters:
      comment - Kommentar.
    • paint

      public final void paint(org.eclipse.swt.widgets.Composite parent)
      Description copied from interface: Input
      Positioniert und malt das Eingabefeld im uebergebenen Composite. Es wird dabei mit einer vorgegebenen Standard-Breite gemalt.
      Specified by:
      paint in interface Input
      Specified by:
      paint in interface Part
      Parameters:
      parent - Das Composite, in dem das Eingabefeld gemalt werden soll.
      See Also:
    • paint

      public final void paint(org.eclipse.swt.widgets.Composite parent, int width)
      Description copied from interface: Input
      Positioniert und malt das Eingabefeld im uebergebenen Composite.
      Specified by:
      paint in interface Input
      Parameters:
      parent - Das Composite, in dem das Eingabefeld gemalt werden soll.
      width - angegebene Breite.
    • addListener

      protected void addListener(org.eclipse.swt.widgets.Widget w, org.eclipse.swt.widgets.Listener l)
      Übernimmt das eigentliche Hinzufügen des Listeners zum Widget.
      Parameters:
      w - das Widget.
      l - der Listener.
    • setValidChars

      public void setValidChars(String chars)
      Definiert eine Liste von Zeichen, die eingegeben werden koennen. Wird diese Funktion verwendet, dann duerfen nur noch die hier angegebenen Zeichen eingegeben werden.

      Werden beide Funktionen setValidChars(String) und setInvalidChars(String) benutzt, kann nur noch die verbleibende Restmenge eingegeben werden. Das sind die Zeichen, die in validChars angegeben und in invalidChars nicht enthalten sind.

      Parameters:
      chars - erlaubte Zeichen
    • setInvalidChars

      public void setInvalidChars(String chars)
      Definiert eine Liste von Zeichen, die nicht eingegeben werden koennen. Wird diese Funktion verwendet, dann duerfen die angegebenen Zeichen nicht mehr verwendet werden.
      Parameters:
      chars - nicht-erlaubte Zeichen
      See Also:
    • isMandatory

      public boolean isMandatory()
      Description copied from interface: Input
      Prueft, ob es sich um ein Pflichtfeld handelt.
      Specified by:
      isMandatory in interface Input
      Returns:
      true, wenn es sich um ein Pflichfeld handelt.
    • update

      protected void update() throws OperationCanceledException
      Wird immer dann aufgerufen, wenn eines der Controls des Eingabe-Feldes aktualisiert wird. Hier kann dann z.Bsp. geprueft werden, ob der Inhalt des Feldes korrekt ist und ggf. die Hintergrund-Farbe angepasst werden.
      Throws:
      OperationCanceledException
    • setMandatory

      public void setMandatory(boolean mandatory)
      Description copied from interface: Input
      Legt fest, ob es sich um ein Pflichtfeld handelt.
      Specified by:
      setMandatory in interface Input
      Parameters:
      mandatory - true, wenn es ein Pflichtfeld ist.
    • getName

      public String getName()
      Description copied from interface: Input
      Liefert die Label-Bezeichnung des Eingabe-Feldes.
      Specified by:
      getName in interface Input
      Returns:
      Label-Bezeichnung.
    • setName

      public void setName(String name)
      Description copied from interface: Input
      Speichert die Label-Bezeichnung des Eingabe-Feldes.
      Specified by:
      setName in interface Input
      Parameters:
      name - Label-Bezeichnung.
    • hasChanged

      public boolean hasChanged()
      Description copied from interface: Input
      Prueft, ob sich der Wert von Input.getValue() seit dem letzten Aufruf von hasChanged() geaendert hat.
      Specified by:
      hasChanged in interface Input
      Returns:
      true, wenn sich der Wert geaendert hat, sonst false.
    • setData

      public void setData(String key, Object data)
      Description copied from interface: Input
      Speichert optionale Context-Daten.
      Specified by:
      setData in interface Input
      Parameters:
      key - freier Schluessel.
      data - beliebige Nutzdaten.
      See Also:
      • Widget.setData(Object)
    • getData

      public Object getData(String key)
      Description copied from interface: Input
      Liefert die Context-Daten.
      Specified by:
      getData in interface Input
      Parameters:
      key - der Schluessel.
      Returns:
      die Contextdaten.