Class 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 sie true zurueckliefert, oder das Timeout abgelaufen ist.

    • 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 immer null.
        Specified by:
        getData in class AbstractDialog
        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 class AbstractDialog
        Parameters:
        parent - das Composite, in dem der Dialog gemalt werden soll. Hinweis: Das Composite enthaelt bereits ein einspaltiges GridLayout.
        Throws:
        java.lang.Exception - Kann von der abgeleiteten Klasse geworfen werden. Tut sie das, wird der Dialog nicht angezeigt.