Package de.willuhn.jameica.gui.input
Class ButtonInput
- java.lang.Object
-
- de.willuhn.jameica.gui.input.AbstractInput
-
- de.willuhn.jameica.gui.input.ButtonInput
-
- Direct Known Subclasses:
ColorInput,DialogInput,DirectoryInput,FileInput,FontInput
public abstract class ButtonInput extends AbstractInput
Eingabefeld, welches jedoch noch einen Button hinten dran besitzt.- Author:
- willuhn
-
-
Field Summary
Fields Modifier and Type Field Description protected booleanbuttonEnabledprotected org.eclipse.swt.widgets.ControlclientControlprotected booleanclientControlEnabledprotected java.lang.Stringvalue-
Fields inherited from interface de.willuhn.jameica.gui.input.Input
DATAKEY_TOOLTIP
-
-
Constructor Summary
Constructors Constructor Description ButtonInput()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected voidaddButtonListener(org.eclipse.swt.widgets.Listener l)Fuegt zum Button einen Listener hinzu.voiddisable()Deaktiviert das Eingabefeld.voiddisableButton()Deaktiviert nur den Button.voiddisableClientControl()Deaktiviert nur das ClientControl.voidenable()Aktiviert das Eingabefeld.voidenableButton()Aktiviert nur den Button.voidenableClientControl()Aktiviert nur das ClientControl.voidfocus()Gibt diesem Eingabefeld den Focus.abstract org.eclipse.swt.widgets.ControlgetClientControl(org.eclipse.swt.widgets.Composite parent)Liefert das einzubettende Eingabefeld.org.eclipse.swt.widgets.ControlgetControl()Liefert das eigentliche Eingabecontrol.booleanisEnabled()Prueft, ob das Eingabe-Feld aktiv ist.voidsetButtonImage(org.eclipse.swt.graphics.Image image)Definiert das auf dem Button anzuzeigende Image.voidsetButtonText(java.lang.String text)Definiert den auf dem Button anzuzeigenden Text.voidsetEnabled(boolean enabled)Aktiviert oder deaktiviert das Eingabe-Feld.protected voidupdate()Wird immer dann aufgerufen, wenn eines der Controls des Eingabe-Feldes aktualisiert wird.-
Methods inherited from class de.willuhn.jameica.gui.input.AbstractInput
addListener, getData, getName, getParent, getStyleBits, hasChanged, isMandatory, paint, paint, setComment, setData, setInvalidChars, setMandatory, setName, setValidChars
-
-
-
-
Method Detail
-
getClientControl
public abstract org.eclipse.swt.widgets.Control getClientControl(org.eclipse.swt.widgets.Composite parent)
Liefert das einzubettende Eingabefeld.- Parameters:
parent- Composite, in dem sich das ClientControl malen soll.- Returns:
- das fertig gemalte Control.
-
getControl
public final org.eclipse.swt.widgets.Control getControl()
Description copied from interface:InputLiefert das eigentliche Eingabecontrol. Es muss von jeder abgeleiteten Klasse implementiert werden und das Eingabe-Feld zurueckliefern.Da der Implementierer das Composite benoetigt, in dem das Control positioniert werden soll, kann er sich der Methode
AbstractInput.getParent()in dieser Klasse bedienen.- Returns:
- das zu zeichnende Control.
-
setButtonText
public final void setButtonText(java.lang.String text)
Definiert den auf dem Button anzuzeigenden Text.Leider kann auf dem Button nicht Image und Text angezeigt werden. Wenn also sowohl
setButtonText(String)undsetButtonImage(Image)gesetzt werden, wird nur das Image angezeigt.Wird nichts von beiden gesetzt, wird ein Image mit einer Lupe angezeigt.
- Parameters:
text- auf dem Button anzuzeigender Text.
-
setButtonImage
public final void setButtonImage(org.eclipse.swt.graphics.Image image)
Definiert das auf dem Button anzuzeigende Image.- Parameters:
image- anzuzeigendes Image.
-
addButtonListener
protected final void addButtonListener(org.eclipse.swt.widgets.Listener l)
Fuegt zum Button einen Listener hinzu.- Parameters:
l- Listener.
-
focus
public final void focus()
Description copied from interface:InputGibt diesem Eingabefeld den Focus.
-
disable
public final void disable()
Description copied from interface:InputDeaktiviert das Eingabefeld.
-
enable
public final void enable()
Description copied from interface:InputAktiviert das Eingabefeld.
-
setEnabled
public void setEnabled(boolean enabled)
Description copied from interface:InputAktiviert oder deaktiviert das Eingabe-Feld.- Parameters:
enabled- true, wenn es aktiv sein soll.
-
enableClientControl
public final void enableClientControl()
Aktiviert nur das ClientControl.
-
enableButton
public final void enableButton()
Aktiviert nur den Button.
-
disableClientControl
public final void disableClientControl()
Deaktiviert nur das ClientControl.
-
disableButton
public final void disableButton()
Deaktiviert nur den Button.
-
isEnabled
public boolean isEnabled()
Description copied from interface:InputPrueft, ob das Eingabe-Feld aktiv ist.- Returns:
- true, wenn es aktiv ist.
-
update
protected void update() throws OperationCanceledExceptionDescription copied from class:AbstractInputWird 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.- Overrides:
updatein classAbstractInput- Throws:
OperationCanceledException
-
-