Class ApplicationActionMap

java.lang.Object
javax.swing.ActionMap
org.jdesktop.application.ApplicationActionMap
All Implemented Interfaces:
Serializable

public class ApplicationActionMap extends ActionMap
An ActionMap class where each entry corresponds to an @Action method from a single actionsClass (i.e. a class that contains one or more @Actions). Each entry's key is the @Action's name (the method name by default), and the value is an ApplicationAction that calls the @Actions method. For example, the code below prints "Hello World":
 public class HelloWorldActions {
     public @Action void Hello() { System.out.print("Hello "); }
     public @Action void World() { System.out.println("World"); }
 }
 // ...
 ApplicationActionMap appAM = new ApplicationActionMap(SimpleActions.class);
 ActionEvent e = new ActionEvent("no src", ActionEvent.ACTION_PERFORMED, "no cmd");
 appAM.get("Hello").actionPerformed(e);
 appAM.get("World").actionPerformed(e);
 

If a ResourceMap is provided then each ApplicationAction's (putValue, getValue) properties are initialized from the ResourceMap.

Author:
Hans Muller (Hans.Muller@Sun.COM)
See Also:
  • Constructor Details

    • ApplicationActionMap

      public ApplicationActionMap(ApplicationContext context, Class actionsClass, Object actionsObject, ResourceMap resourceMap)
      Creates ApplicationActionMap object.

      The created action map will contain actions which are defined in the actionsObject and all its ancestors up to the actionsClass. If actionsClass is a type of the actionsObject then actions only from this class will be added to the map.

      Parameters:
      context - the Application context
      actionsClass - a super class for the actionsObject. Actions will be retrieved starting from this class.
      actionsObject - the object to be scanned for the actions.
      resourceMap - the ResourceMap to be used for those actions
  • Method Details

    • getContext

      public final ApplicationContext getContext()
      Returns the ApplicationContext
      Returns:
      the ApplicationContext
    • getActionsClass

      public final Class getActionsClass()
      Returns the base class for actions retrieval
      Returns:
      the base class for actions retrieval
    • getActionsObject

      public final Object getActionsObject()
      Returns the object with actions
      Returns:
      the object with actions
    • getProxyActions

      public List<ApplicationAction> getProxyActions()
      All of the @ProxyActions recursively defined by this ApplicationActionMap and its parent ancestors.

      Returns a read-only list of the @ProxyActions defined by this ApplicationActionMap's actionClass and, recursively, by this ApplicationActionMap's parent. If there are no proxyActions, an empty list is returned.

      Returns:
      a list of all the proxyActions for this ApplicationActionMap