|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object uic.model.UICSimpleAction uic.action.SwingAction uic.action.ComponentKeyboardAction
public class ComponentKeyboardAction
An event to respond to <escape> released in JTextComponents.
Notice that the default version uses the SimpleQueuedPolicy
.
Using this class is easy; just call:
new ComponentKeyboardAction(this, "firedSlot", ComponentKeyboardAction.TYPE_KEY_TYPED).add(childComponent);This has the result that when the <any>-key is released in the childComponent, the 'firedSlot' method on object 'this' will be called.
ARGUMENT_KEYCODE
ARGUMENT_MODIFIERS
ARGUMENT_SOURCE
Nested Class Summary |
---|
Nested classes/interfaces inherited from class uic.model.UICSimpleAction |
---|
UICSimpleAction.Arguments, UICSimpleAction.DirectMultiThreadingPolicy, UICSimpleAction.DirectPolicy, UICSimpleAction.ExecutePolicy, UICSimpleAction.OnlyLastPolicy, UICSimpleAction.QueuedPolicy, UICSimpleAction.SimpleQueuedPolicy |
Field Summary | |
---|---|
static String |
ARGUMENT_CHAR
a char: the resulting character. |
static String |
ARGUMENT_KEYCODE
an int: the keycode (see KeyEvent.VK_*). |
static String |
ARGUMENT_KEYEVENT
an KeyEvent: the actual event from the inputstream. |
static String |
ARGUMENT_MODIFIERS
an int: the modifiers used |
static String |
ARGUMENT_NATIVE_EVENT
an KeyEvent object: the event that caused this action to trigger. |
static String |
ARGUMENT_SOURCE
an Object: the source object that threw the event. |
static String |
ARGUMENT_TYPE
a short: the type of event; TYPE_* in this class. |
static short |
TYPE_KEY_PRESSED
|
static short |
TYPE_KEY_RELEASED
|
static short |
TYPE_KEY_TYPED
|
Fields inherited from class uic.action.SwingAction |
---|
updateUICommmand |
Fields inherited from class uic.model.UICSimpleAction |
---|
currentPolicy, target, targetObject |
Constructor Summary | |
---|---|
ComponentKeyboardAction(Object targetObject,
String targetMethod,
int types)
Create a new ComponentKeyboardAction. |
|
ComponentKeyboardAction(Object targetObject,
String targetMethod,
UICSimpleAction.Arguments arguments,
int types)
Create a new ComponentKeyboardAction. |
Method Summary | |
---|---|
ComponentKeyboardAction |
add(Component source)
Add an Component object to this action. |
protected Class |
getArgumentClass(String argumentType)
For the uniquely defined argumentType (as also used in UICSimpleAction.getTargetSignatures() ) return the Class. |
protected Object |
getArgumentValue(EventObject source,
String argumentType)
For the uniquely defined argumentType (as also used in UICSimpleAction.getTargetSignatures() ) return the value. |
protected List |
getTargetSignatures()
Return a List object with instances of the Arguments class. |
void |
keyPressed(KeyEvent evt)
|
void |
keyReleased(KeyEvent evt)
|
void |
keyTyped(KeyEvent evt)
|
Methods inherited from class uic.action.SwingAction |
---|
doAction, getComponentsIterator, registerComponent, setEnabled, setUIUpdateCommand, setUIUpdateCommand |
Methods inherited from class uic.model.UICSimpleAction |
---|
createArguments, equals, execute, execute, execute, execute, isEnabled, setDirect, setExecutionPolicy, setTarget, setTarget |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final short TYPE_KEY_TYPED
public static final short TYPE_KEY_PRESSED
public static final short TYPE_KEY_RELEASED
public static final String ARGUMENT_SOURCE
public static final String ARGUMENT_KEYEVENT
public static final String ARGUMENT_CHAR
public static final String ARGUMENT_TYPE
public static final String ARGUMENT_KEYCODE
public static final String ARGUMENT_MODIFIERS
public static final String ARGUMENT_NATIVE_EVENT
Note that you can only consume events in direct mode!
Constructor Detail |
---|
public ComponentKeyboardAction(Object targetObject, String targetMethod, int types)
targetObject
- on which object should the target method be invokedtargetMethod
- wich method on the targetObject should be invokedtypes
- one or more of the TYPE fields OR-ed together to specify which events will be used.public ComponentKeyboardAction(Object targetObject, String targetMethod, UICSimpleAction.Arguments arguments, int types)
targetObject
- on which object should the target method be invokedtargetMethod
- wich method on the targetObject should be invokedarguments
- to be used in finding the targetMethod signaturetypes
- one or more of the TYPE fields OR-ed together to specify which events will be used.UICSimpleAction.setTarget(Object,String,uic.model.UICSimpleAction.Arguments)
Method Detail |
---|
public ComponentKeyboardAction add(Component source)
source
- the component that sends key events.protected List getTargetSignatures()
UICSimpleAction
An example implementation could be this:
List result = new ArrayList(1); result.add( new Arguments().addArgument("Source") ); return result;This will result in a call to
UICSimpleAction.getArgumentClass(java.lang.String)
with the string
"Source"
which returns a Class instance. In our example
that would be java.lang.Object
.
The result of this would be that a call to setTarget
will try to find a method with an argument of type Object, and will search again
if that is not found without any arguments.
getTargetSignatures
in class UICSimpleAction
UICSimpleAction.getArgumentValue(java.util.EventObject, java.lang.String)
,
UICSimpleAction.getArgumentClass(java.lang.String)
protected Object getArgumentValue(EventObject source, String argumentType)
UICSimpleAction
UICSimpleAction.getTargetSignatures()
) return the value.
This method will always return 'null';
Extending actions can define various argumentType strings that can be used as an
argument in the call to the target method of this action.
The user decides on construction of the action which argumentTypes are to be used,
if a certain value is requested to be sent to the targetMethod a call is made to this
method to find its value based on the source event.
Note that base types can not be returned, since they are instances of object; you should wrap these in their object re-presentation (an Integer object for an int).
getArgumentValue
in class UICSimpleAction
source
- the event that caused the action to be fired. This is the event that
the extending class passed to the execute
method; so casting is fine.argumentType
- the uniquely defined name specifying the type of argument.
protected Class getArgumentClass(String argumentType)
UICSimpleAction
UICSimpleAction.getTargetSignatures()
) return the Class.
This method will always return 'null';
Extending actions can define various argumentType strings that can be used as an
argument in the call to the target method of this action.
The user decides on construction of the action which argumentTypes are to be used,
if a certain value is requested to be sent to the targetMethod a call is made to this
method to find the Class of the type.
Note that basetypes have a class of their own and you should return the correct
one you expect the targetMethod to implement. returning Integer.class
will search for an Integer
; returing int.class
will search
for an int
. This is important to note since the UICSimpleAction.getArgumentValue(java.util.EventObject, java.lang.String)
method should return an Integer object in both cases.
getArgumentClass
in class UICSimpleAction
argumentType
- the uniquely defined name specifying the type of argument.
public void keyTyped(KeyEvent evt)
keyTyped
in interface KeyListener
public void keyPressed(KeyEvent evt)
keyPressed
in interface KeyListener
public void keyReleased(KeyEvent evt)
keyReleased
in interface KeyListener
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |