public class Callback extends Object
IMPORTANT: A callback is only valid when invoked on the thread which created it. The results are undefined (and typically bad) when a callback is passed out to the operating system (or other code) in such a way that the callback is called from a different thread.
Constructor and Description |
---|
Callback(Object object,
String method,
int argCount)
Constructs a new instance of this class given an object
to send the message to, a string naming the method to
invoke and an argument count.
|
Callback(Object object,
String method,
int argCount,
boolean isArrayBased)
Constructs a new instance of this class given an object
to send the message to, a string naming the method to
invoke, an argument count and a flag indicating whether
or not the arguments will be passed in an array.
|
Callback(Object object,
String method,
int argCount,
boolean isArrayBased,
long errorResult)
Constructs a new instance of this class given an object
to send the message to, a string naming the method to
invoke, an argument count, a flag indicating whether
or not the arguments will be passed in an array and a value
to return when an exception happens.
|
Modifier and Type | Method and Description |
---|---|
void |
dispose()
Releases the native level resources associated with the callback,
and removes all references between the callback and
other objects.
|
long |
getAddress()
Returns the address of a block of machine code which will
invoke the callback represented by the receiver.
|
static boolean |
getEnabled()
Returns whether or not callbacks which are triggered at the
native level should cause the messages described by the matching
Callback objects to be invoked. |
static int |
getEntryCount()
Returns the number of times the system has been recursively entered
through a callback.
|
static String |
getPlatform()
Returns the SWT platform name.
|
static void |
reset()
Immediately wipes out all native level state associated
with all callbacks.
|
static void |
setEnabled(boolean enable)
Indicates whether or not callbacks which are triggered at the
native level should cause the messages described by the matching
Callback objects to be invoked. |
public Callback(Object object, String method, int argCount)
Class
it is assumed that
the method is a static method on that class.object
- the object to send the message tomethod
- the name of the method to invokeargCount
- the number of arguments that the method takespublic Callback(Object object, String method, int argCount, boolean isArrayBased)
Class
it is assumed that the method is a static method on that
class.object
- the object to send the message tomethod
- the name of the method to invokeargCount
- the number of arguments that the method takesisArrayBased
- true
if the arguments should be passed in an array and false otherwisepublic Callback(Object object, String method, int argCount, boolean isArrayBased, long errorResult)
Class
it is assumed that the method is a static method on that
class.object
- the object to send the message tomethod
- the name of the method to invokeargCount
- the number of arguments that the method takesisArrayBased
- true
if the arguments should be passed in an array and false otherwiseerrorResult
- the return value if the java code throws an exceptionpublic void dispose()
public long getAddress()
public static String getPlatform()
public static int getEntryCount()
Note: This should not be called by application code.
public static final void setEnabled(boolean enable)
Callback
objects to be invoked. This method is used
to safely shut down SWT when it is run within environments
which can generate spurious events.
Note: This should not be called by application code.
enable
- true if callbacks should be invokedpublic static final boolean getEnabled()
Callback
objects to be invoked. This method is used
to safely shut down SWT when it is run within environments
which can generate spurious events.
Note: This should not be called by application code.
public static final void reset()
WARNING: This operation is extremely dangerous, and should never be performed by application code.
Copyright © 2017. All Rights Reserved.