@Target(value=METHOD)
@Retention(value=RUNTIME)
public @interface ActionProxy
Action instances.
The following steps are required to use ActionProxy annotations:
ActionProxy annotation. For example:
@ActionProxy(text="Action 1.1", graphic=imagePath, accelerator="ctrl+shift+T")
private void action11() {
System.out.println("Action 1.1 is executed");
}
The ActionProxy annotation is designed to work with three types of methods:
ActionEvent.
ActionEvent and an Action.
The ActionProxy annotation graphic() property supports different node types:
The ability for ActionProxy to support glyph fonts is part of the ControlsFX
Glyph API. For more information on how to specify
images and glyph fonts, refer to the graphic() method.
ActionMap, preferably in the
class constructor:
ActionMap.register(this);
Immediately after that actions will be created according to the provided
annotations and are accessible from ActionMap, which provides several
convenience methods to access actions by id. Refer to the ActionMap
class for more details on how to use it.ActionCheck annotation is supported on the same method where @ActionProxy is applied}
| Modifier and Type | Required Element and Description |
|---|---|
java.lang.String |
text
The text that should be set in
Action.textProperty(). |
| Modifier and Type | Optional Element and Description |
|---|---|
java.lang.String |
accelerator
Accepts string values such as "ctrl+shift+T" to represent the keyboard
shortcut for this action.
|
java.lang.String |
factory
The full class-name of a class that implements
AnnotatedActionFactory. |
java.lang.String |
graphic
The graphic that should be set in
Action.graphicProperty(). |
java.lang.String |
id
By default the method name that this annotation is applied to, but if not
null then this ID is what you use when requesting the
Action out
of the ActionMap when using the ActionMap.action(String)
method. |
java.lang.String |
longText
The text that should be set in
Action.longTextProperty(). |
public abstract java.lang.String text
Action.textProperty().public abstract java.lang.String id
Action out
of the ActionMap when using the ActionMap.action(String)
method.public abstract java.lang.String graphic
Action.graphicProperty().
The graphic can be either image (local path or url) or font glyph.
Because a graphic can come from multiple sources, a simple protocol
prefix is used to designate the type. Currently supported prefixes are
'image>' and 'font>'. Default protocol is
'image>'.
The following are the examples of different graphic nodes:
@ActionProxy(text="Teacher", graphic="http://icons.iconarchive.com/icons/custom-icon-design/mini-3/16/teacher-male-icon.png") @ActionProxy(text="Security", graphic="/org/controlsfx/samples/security-low.png") @ActionProxy(text="Security", graphic="image>/org/controlsfx/samples/security-low.png") @ActionProxy(text="Star", graphic="font>FontAwesome|STAR")
public abstract java.lang.String longText
Action.longTextProperty().public abstract java.lang.String accelerator
public abstract java.lang.String factory
AnnotatedActionFactory. ActionMap will
use this class to instantiate the AnnotatedAction associated with this method, rather than
using its own action factory.