|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object uic.model.UICSimpleAction uic.model.UICAction uic.model.UICToggleAction
public class UICToggleAction
An toggle action to add the concept of 'selected' to the ActionFactory used actions. You use this class to register an action with the ActionFactory so toggle buttons will appear in ActionFactory created menus and toolbars.
ARGUMENT_NEWSTATE
uic.modelUICAction#ARGUMENT_SOURCE
UICAction
,
ActionFactory
Nested Class Summary |
---|
Nested classes/interfaces inherited from class uic.model.UICAction |
---|
UICAction.StatusBarUpdater |
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_NEWSTATE
an Object: the source object that threw the event. |
protected boolean |
selected
|
Fields inherited from class uic.model.UICAction |
---|
ARGUMENT_SOURCE, updateUICommmand |
Fields inherited from class uic.model.UICSimpleAction |
---|
currentPolicy, target, targetObject |
Constructor Summary | |
---|---|
UICToggleAction(String name)
|
|
UICToggleAction(String name,
Object targetObject,
String targetMethod,
String title,
ActionFactory actions)
|
|
UICToggleAction(String name,
Object targetObject,
String targetMethod,
String title,
String iconBaseName,
ActionFactory actions)
|
|
UICToggleAction(String name,
Object targetObject,
String targetMethod,
String title,
String iconBaseName,
String keyStroke,
ActionFactory actions)
|
|
UICToggleAction(String name,
Object targetObject,
String targetMethod,
String title,
String iconBaseName,
String keyStroke,
String toolTipText,
String whatIsThis,
ActionFactory actions)
Create new action. |
Method Summary | |
---|---|
void |
actionPerformed(ActionEvent e)
|
void |
addComponent(AbstractButton b)
A button component that represents this action the the users user interface can be registered here. |
JMenuItem |
createMenuItem(IconFactory iconFactory)
|
AbstractButton |
createToolBarButton(IconFactory iconFactory)
|
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. |
boolean |
isSelected()
|
void |
setSelected(boolean on)
Set this action to be un/selected selecting/checking all registered components. |
void |
setSelected(boolean on,
boolean silent)
Set this action to be un/selected selecting/checking all registered components. |
Methods inherited from class uic.model.UICAction |
---|
addIcon, addKeyStroke, createPopupMenuItem, decorateButton, doAction, getComponentsIterator, getIconBaseName, getKeyStroke, getName, getTitle, getToolTipText, getWhatIsThis, setEnabled, setIconBaseName, setKeyStroke, setName, setStatusBar, setTexts, setTitle, setToolTipText, setUIUpdateCommand, setUIUpdateCommand, setWhatIsThis, toString |
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, wait, wait, wait |
Field Detail |
---|
public static final String ARGUMENT_NEWSTATE
protected boolean selected
Constructor Detail |
---|
public UICToggleAction(String name)
public UICToggleAction(String name, Object targetObject, String targetMethod, String title, ActionFactory actions)
public UICToggleAction(String name, Object targetObject, String targetMethod, String title, String iconBaseName, ActionFactory actions)
public UICToggleAction(String name, Object targetObject, String targetMethod, String title, String iconBaseName, String keyStroke, ActionFactory actions)
public UICToggleAction(String name, Object targetObject, String targetMethod, String title, String iconBaseName, String keyStroke, String toolTipText, String whatIsThis, ActionFactory actions)
name
- The identifying name of the action, must be unique.targetObject
- The object that contains the method we want to connect to.targetMethod
- the name of the method we want to connect to.title
- the name used on buttons or in a menu entry.iconBaseName
- the basename the new widgets can use to fetch the correct icon, or null if nonekeyStroke
- the keyStroke in the format accepted by javax.swing.KeyStroke.getKeyStroke(String)toolTipText
- the text for tooltips, or null for nonewhatIsThis
- the text for the statusBar.actions
- the actionFactory this action belongs to.KeyStroke.getKeyStroke(String)
Method Detail |
---|
public void actionPerformed(ActionEvent e)
actionPerformed
in interface ActionListener
actionPerformed
in class UICAction
public void setSelected(boolean on)
public void setSelected(boolean on, boolean silent)
on
- set all the registred butons selection value to this argument.silent
- make sure this action will not fire even if 'on' is different from the previous selected value.public boolean isSelected()
public void addComponent(AbstractButton b)
UICAction
addComponent
in class UICAction
UICAction.addComponent(javax.swing.AbstractButton)
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 UICAction
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 UICAction
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 UICAction
argumentType
- the uniquely defined name specifying the type of argument.
public AbstractButton createToolBarButton(IconFactory iconFactory)
createToolBarButton
in class UICAction
public JMenuItem createMenuItem(IconFactory iconFactory)
createMenuItem
in class UICAction
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |