public class DialogInput extends ButtonInput
Object
zurueck. Da das Text-Eingabefeld natuerlich nicht wissen kann,
wie es das anzeigen soll, wird der Rueckgabewert des Dialogs
nicht ausgewertet. Stattdessen muss an den Dialog via addCloseListener
ein Listener angehangen werden, der beim Schliessen des Dialogs ausgeloest
wird. In dessen event.data
befindet sich dann das jeweilige
Objekt. Das ist z.Bsp. bei ListDialog
ein Fachobjekt aus der
Datenbank oder bei CalendarDialog
ein java.util.Date
-Objekt.
Hinweis: Der Listener darf nicht an das Input-Feld selbst angehangen werden, denn die werden bei jedem Focus-Wechsel ausgeloest.
buttonEnabled, clientControl, clientControlEnabled, value
DATAKEY_TOOLTIP
Constructor | Description |
---|---|
DialogInput(java.lang.String value) |
Erzeugt ein neues Eingabefeld und schreibt den uebergebenen Wert rein.
|
DialogInput(java.lang.String value,
AbstractDialog d) |
Erzeugt ein neues Eingabefeld und schreibt den uebergebenen Wert rein.
|
Modifier and Type | Method | Description |
---|---|---|
org.eclipse.swt.widgets.Control |
getClientControl(org.eclipse.swt.widgets.Composite parent) |
Liefert das einzubettende Eingabefeld.
|
int |
getMaxLength() |
Liefert die maximale Anzahl eingebbarer Zeichen.
|
java.lang.String |
getText() |
Liefert den derzeit angezeigten Text.
|
java.lang.Object |
getValue() |
Liefert das Objekt, welches in dem Dialog ausgewaehlt wurde.
|
boolean |
hasChanged() |
Ueberschrieben, weil nur der angezeigte Text interessiert.
|
void |
setDialog(AbstractDialog d) |
Speichert den anzuzeigenden Dialog.
|
void |
setMaxLength(int length) |
Legt die maximale Anzahl eingebbarer Zeichen fest.
|
void |
setText(java.lang.String text) |
Speichert den anzuzeigenden Text.
|
void |
setValue(java.lang.Object value) |
Schreibt einen neuen Wert in das Eingabefeld.
|
protected void |
update() |
Wird immer dann aufgerufen, wenn eines der Controls des
Eingabe-Feldes aktualisiert wird.
|
addListener, getData, getName, getParent, getStyleBits, isMandatory, paint, paint, setComment, setData, setInvalidChars, setMandatory, setName, setValidChars
addButtonListener, disable, disableButton, disableClientControl, enable, enableButton, enableClientControl, focus, getControl, isEnabled, setButtonImage, setButtonText, setEnabled
public DialogInput(java.lang.String value)
value
- der initial einzufuegende Wert fuer das Eingabefeld.public DialogInput(java.lang.String value, AbstractDialog d)
value
- der initial einzufuegende Wert fuer das Eingabefeld.d
- der Dialog.public void setDialog(AbstractDialog d)
d
- der anzuzeigende Dialog.public java.lang.Object getValue()
Input.getValue()
public java.lang.String getText()
public void setText(java.lang.String text)
text
- anzuzeigender Text.public void setMaxLength(int length)
length
- Maximal-Anzahl.
Zulaessig sind nur Werte, die groesser als "0" sind.public int getMaxLength()
public void setValue(java.lang.Object value)
Input
value
- der neu anzuzeigende Wert.Speichert jedoch nicht den anzuzeigenden Text sondern das FachObjekt.
Sprich: Das Objekt, welches auch geliefert wird, wenn der Dialog
zur Auswahl des Objektes verwendet werden wuerde.
Soll der anzuzeigende Text geaendert werden, dann bitte die
Funktion setText(String) verwenden.
public org.eclipse.swt.widgets.Control getClientControl(org.eclipse.swt.widgets.Composite parent)
ButtonInput
getClientControl
in class ButtonInput
parent
- Composite, in dem sich das ClientControl malen soll.ButtonInput.getClientControl(org.eclipse.swt.widgets.Composite)
protected void update() throws OperationCanceledException
AbstractInput
update
in class ButtonInput
OperationCanceledException
AbstractInput.update()
public boolean hasChanged()
hasChanged
in interface Input
hasChanged
in class AbstractInput
Input.hasChanged()