Class New.NewGameComponent

  • All Implemented Interfaces:
    IconProvider
    Enclosing class:
    New

    public static class New.NewGameComponent
    extends TaskAction
    A New child action that creates a specific game component from a compiled GameComponent class.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected java.lang.String docname  
      protected javax.swing.Icon icon  
      protected java.lang.String iconKey  
      protected java.lang.String klass  
      protected java.lang.String label  
      protected java.lang.String taskSubtype  
      protected java.lang.String taskType  
    • Constructor Summary

      Constructors 
      Constructor Description
      NewGameComponent​(java.lang.String key, java.lang.String className, java.lang.String taskType, java.lang.String taskSubtype)
      Creates a child action that creates a game component from a compiled GameComponent subclass.
    • Field Detail

      • klass

        protected java.lang.String klass
      • iconKey

        protected java.lang.String iconKey
      • docname

        protected java.lang.String docname
      • label

        protected java.lang.String label
      • taskType

        protected java.lang.String taskType
      • taskSubtype

        protected java.lang.String taskSubtype
      • icon

        protected javax.swing.Icon icon
    • Constructor Detail

      • NewGameComponent

        public NewGameComponent​(java.lang.String key,
                                java.lang.String className,
                                java.lang.String taskType,
                                java.lang.String taskSubtype)
        Creates a child action that creates a game component from a compiled GameComponent subclass.
        Parameters:
        key - a UI text key for the component; if the key has the "app-new-" prefix this may be left off
        className - the fully qualified name of the component class; or, if no package is specified, the arkham.component package is used by default
        taskType - the type of task that must be active for the action to apply, or null
        taskSubtype - the type of task subtype that must be active for the action to apply, or null
        Throws:
        java.lang.NullPointerException - if the key or class name is null
        java.lang.IllegalArgumentException - if the specified class does not exist
    • Method Detail

      • getLabel

        public java.lang.String getLabel()
        Description copied from class: TaskAction
        Returns the human-readable name of this action.
        Specified by:
        getLabel in class TaskAction
        Returns:
        the name used to create menu items for this action, localized if possible
      • perform

        public boolean perform​(Project project,
                               Task task,
                               Member member)
        Description copied from class: TaskAction
        Perform this action on a member of a project, a project or a task. If the project itself is the target, task and member will be null. If a task is the target, then member will be null. If an error occurs while executing the task, then it is the action's responsibility to inform the user. This method can return false to indicate that if the action is being applied to multiple members, it should stop immediately rather than continue to the next member.
        Specified by:
        perform in class TaskAction
        Parameters:
        project - the project that is being acted upon
        task - the task within the project that is being acted upon; null if acting on a project
        member - the specific member within the task to act upon; null if this is a project or task
      • appliesTo

        public boolean appliesTo​(Project project,
                                 Task task,
                                 Member member)
        Description copied from class: TaskAction
        Returns true if this action can be performed on the specified member of a project, project or a task. If the project itself is the target, task and member will be null. If a task is the target, then member will be null. If an error occurs while executing the task, then it is the action's responsibility to inform the user. This method can return false to indicate that if the action is being applied to multiple members, it should stop immediately rather than continue to the next member.
        Specified by:
        appliesTo in class TaskAction
        Parameters:
        project - the project that is being acted upon
        task - the task within the project that is being acted upon; null if acting on a project
        member - the specific member within the task to act upon; null if this is a project or task
      • getIcon

        public javax.swing.Icon getIcon()
        Description copied from class: TaskAction
        Returns an icon for this action, or null if the action should not be associated with an icon.
        Specified by:
        getIcon in interface IconProvider
        Overrides:
        getIcon in class TaskAction
        Returns:
        an icon that represents the action