Package de.willuhn.jameica.gui.dialogs
Class WaitDialog
- java.lang.Object
-
- de.willuhn.jameica.gui.dialogs.AbstractDialog
-
- de.willuhn.jameica.gui.dialogs.WaitDialog
-
public abstract class WaitDialog extends AbstractDialog
Warte-Dialog, der einen Text und einen Fortschrittsbalken fuer ein Timeout anzeigt.Zwei Anwendungsbeispiele:
- Der User soll einen USB-Stick mit einer Schluesseldatei einstecken. Waehrenddessen wird dieser Dialog anagezeigt.
- Der User soll eine PIN im Kartenleser eingeben.
Die Klasse ist abstrakt, damit in der abgeleiteten Klasse die Funktion
check()
implementiert wird. Der Rueckgabe-Wert der Funktion entscheidet darueber, ob der Dialog geschlossen werden soll oder weiter gewartet wird. Diese Funktion wird nach Ablauf jeder Sekunde erneut aufgerufen. Solange, bis sietrue
zurueckliefert, oder das Timeout abgelaufen ist.
-
-
Field Summary
-
Fields inherited from class de.willuhn.jameica.gui.dialogs.AbstractDialog
i18n, MONITOR_CURRENT, MONITOR_PRIMARY, POSITION_CENTER, POSITION_MOUSE
-
-
Constructor Summary
Constructors Constructor Description WaitDialog(int pos)
Erzeugt einen Wartedialog mit einem Standard-Timeout von 60 Sekunden.WaitDialog(long timeout, int pos)
ct.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract boolean
check()
Wird nach Ablauf jeder Sekunde aufgerufen.protected java.lang.Object
getData()
Die Funktion liefert immernull
.java.lang.String
getText()
Liefert den anzuzeigenden Text.protected void
paint(org.eclipse.swt.widgets.Composite parent)
Muss vom abgeleiteten Dialog ueberschrieben werden.-
Methods inherited from class de.willuhn.jameica.gui.dialogs.AbstractDialog
addCloseListener, addShellListener, close, createShell, getDisplay, getShell, isModeless, onEscape, open, setMonitor, setPanelText, setSideImage, setSize, setTitle
-
-
-
-
Constructor Detail
-
WaitDialog
public WaitDialog(int pos)
Erzeugt einen Wartedialog mit einem Standard-Timeout von 60 Sekunden.- Parameters:
pos
- die Position des Dialogs.
-
WaitDialog
public WaitDialog(long timeout, int pos)
ct.- Parameters:
timeout
- Timeout in Millisekunden, nach deren Ablauf der Dialog mit einer OperationCancelledException abbrechen soll. Muss mindestens 5000 (5 Sekunden) sein.pos
- die Position des Dialogs.
-
-
Method Detail
-
getData
protected java.lang.Object getData() throws java.lang.Exception
Die Funktion liefert immernull
.- Specified by:
getData
in classAbstractDialog
- Returns:
- das ausgewaehlte Objekt.
- Throws:
java.lang.Exception
-
getText
public java.lang.String getText()
Liefert den anzuzeigenden Text. Sollte von der abgeleiteten Klasse ueberschrieben werden.- Returns:
- text der anzuzeigende Text.
-
check
protected abstract boolean check()
Wird nach Ablauf jeder Sekunde aufgerufen. Hier kann die abgeleitete Klasse entscheiden, ob die gewuenschte Aktion vom User durchgefuehrt wurde und der Dialog geschlossen werden kann oder ob noch laenger gewartet wird.- Returns:
- true, wenn die Aktion durchgefuehrt wurde und der Dialog geschlossen werden kann.
-
paint
protected void paint(org.eclipse.swt.widgets.Composite parent) throws java.lang.Exception
Description copied from class:AbstractDialog
Muss vom abgeleiteten Dialog ueberschrieben werden. In dieser Funktion soll er sich bitte malen. Sie wird anschliessend von open() ausgefuehrt.- Specified by:
paint
in classAbstractDialog
- Parameters:
parent
- das Composite, in dem der Dialog gemalt werden soll. Hinweis: Das Composite enthaelt bereits ein einspaltigesGridLayout
.- Throws:
java.lang.Exception
- Kann von der abgeleiteten Klasse geworfen werden. Tut sie das, wird der Dialog nicht angezeigt.
-
-