Class InvokeSWTLater

java.lang.Object
com.iizigo.swt.InvokeSWTLater

public class InvokeSWTLater extends Object
Helper class to invoke a Runnable in the SWT thread after a while, once. This is typically used when many events should react to a single action a little later (or that it must run in the SWT thread), and on top of that just once. There is no point in firing the event in SWT thread for every event, otherwise Display.syncExec should be used.
Author:
Christopher Mindus
  • Constructor Details

    • InvokeSWTLater

      public InvokeSWTLater()
      Constructs an instance that fires the event immediately.
    • InvokeSWTLater

      public InvokeSWTLater(int wait)
      Constructs an instance that fires the event after a while.
      Parameters:
      wait - How long to wait in milliseconds, (0=no wait).
    • InvokeSWTLater

      public InvokeSWTLater(int wait, Runnable callback)
      Constructs an instance that fires the event after a while.
      Parameters:
      wait - How long to wait in milliseconds, (0=no wait).
      callback - The callback to use for all events in SWT.
    • InvokeSWTLater

      public InvokeSWTLater(int wait, boolean triggerCancelPending, Runnable callback)
      Constructs an instance that fires the event after a while.
      Parameters:
      wait - How long to wait in milliseconds, (0=no wait).
      triggerCancelPending - Flag indicating trigger will cancel pending triggered event.
      callback - The callback to use for all events in SWT.
  • Method Details

    • isDisposed

      public boolean isDisposed()
      Checks if disposed of.
    • dispose

      public void dispose()
      Disposes of the instance.
    • setCallback

      public void setCallback(Runnable callback)
      Sets the callback, when it is the same one to use all the time.
      Parameters:
      callback - The callback to use for all events in SWT.
      Throws:
      NullPointerException - If the callback is null.
    • trigger

      public void trigger()
      Calls the trigger function, the Runnable is the one registered using setCallback(Runnable).
      Throws:
      NullPointerException - If the callback is null.
    • trigger

      public void trigger(Runnable callback)
      Calls the trigger function, the Runnable is the one registered using setCallback(Runnable).
      Parameters:
      callback - The callback to notify upon event.
      Throws:
      NullPointerException - If the callback is null.
    • isTriggered

      public boolean isTriggered()
      Flag indicating the async call has been done and that it will run.
    • cancel

      public boolean cancel()
      Cancels a pending run-later task.
      Returns:
      true if successfully canceled, false if disposed of or no pending task was set to run.