Package com.iizigo.swt
Class InvokeSWTLater
java.lang.Object
com.iizigo.swt.InvokeSWTLater
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 Summary
ConstructorDescriptionConstructs an instance that fires the event immediately.InvokeSWTLater
(int wait) Constructs an instance that fires the event after a while.InvokeSWTLater
(int wait, boolean triggerCancelPending, Runnable callback) Constructs an instance that fires the event after a while.InvokeSWTLater
(int wait, Runnable callback) Constructs an instance that fires the event after a while.Method Summary
Modifier and TypeMethodDescriptionboolean
cancel()
Cancels a pending run-later task.void
dispose()
Disposes of the instance.boolean
Checks if disposed of.boolean
Flag indicating the async call has been done and that it will run.void
setCallback
(Runnable callback) Sets the callback, when it is the same one to use all the time.void
trigger()
Calls the trigger function, the Runnable is the one registered usingsetCallback(Runnable)
.void
Calls the trigger function, the Runnable is the one registered usingsetCallback(Runnable)
.
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
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
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
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 usingsetCallback(Runnable)
.- Throws:
NullPointerException
- If the callback is null.
trigger
Calls the trigger function, the Runnable is the one registered usingsetCallback(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.