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 boolean
buttonEnabled
protected org.eclipse.swt.widgets.Control
clientControl
protected boolean
clientControlEnabled
protected java.lang.String
value
-
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 void
addButtonListener(org.eclipse.swt.widgets.Listener l)
Fuegt zum Button einen Listener hinzu.void
disable()
Deaktiviert das Eingabefeld.void
disableButton()
Deaktiviert nur den Button.void
disableClientControl()
Deaktiviert nur das ClientControl.void
enable()
Aktiviert das Eingabefeld.void
enableButton()
Aktiviert nur den Button.void
enableClientControl()
Aktiviert nur das ClientControl.void
focus()
Gibt diesem Eingabefeld den Focus.abstract org.eclipse.swt.widgets.Control
getClientControl(org.eclipse.swt.widgets.Composite parent)
Liefert das einzubettende Eingabefeld.org.eclipse.swt.widgets.Control
getControl()
Liefert das eigentliche Eingabecontrol.boolean
isEnabled()
Prueft, ob das Eingabe-Feld aktiv ist.void
setButtonImage(org.eclipse.swt.graphics.Image image)
Definiert das auf dem Button anzuzeigende Image.void
setButtonText(java.lang.String text)
Definiert den auf dem Button anzuzeigenden Text.void
setEnabled(boolean enabled)
Aktiviert oder deaktiviert das Eingabe-Feld.protected void
update()
Wird immer dann aufgerufen, wenn eines der Controls des Eingabe-Feldes aktualisiert wird.-
Methods inherited from class de.willuhn.jameica.gui.input.AbstractInput
addListener, 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:Input
Liefert 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:Input
Gibt diesem Eingabefeld den Focus.
-
disable
public final void disable()
Description copied from interface:Input
Deaktiviert das Eingabefeld.
-
enable
public final void enable()
Description copied from interface:Input
Aktiviert das Eingabefeld.
-
setEnabled
public void setEnabled(boolean enabled)
Description copied from interface:Input
Aktiviert 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:Input
Prueft, ob das Eingabe-Feld aktiv ist.- Returns:
- true, wenn es aktiv ist.
-
update
protected void update() throws OperationCanceledException
Description copied from class:AbstractInput
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.- Overrides:
update
in classAbstractInput
- Throws:
OperationCanceledException
-
-