ActionListPropertyDescriptor (install4j API)
Description: declaration: package: com.install4j.api.beaninfo, class: ActionListPropertyDescriptor

# Class ActionListPropertyDescriptor

java.lang.Object
java.beans.FeatureDescriptor
java.beans.PropertyDescriptor
com.install4j.api.beaninfo.Install4JPropertyDescriptor
com.install4j.api.beaninfo.ActionListPropertyDescriptor

public class ActionListPropertyDescriptor extends Install4JPropertyDescriptor
Property descriptor for properties that contain a list of configurable actions. The type of the property must be `ActionList`.

Using this class is not strictly required. In principle, you could also set values for the `ATTRIBUTE_*` constants in the property descriptor of an unrelated property descriptor class.

See Also:
  - `ActionList`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final String`
  `ACTION_KEY_NO_ROLLBACK`
  Action key for properties of type `ActionList` that do not support rollback.
  `static final String`
  `ATTRIBUTE_ACTION_KEYS`
  `static final String`
  `ATTRIBUTE_ALLOWED_ACTION_CLASSES`
  `static final String`
  `ATTRIBUTE_CONFIGURABLE_ELEVATION_TYPE`
  `static final String`
  `ATTRIBUTE_EXTRA_SCRIPT_PARAMETERS`

  ### Fields inherited from class Install4JPropertyDescriptor

  `ATTRIBUTE_ACTION_LIST_HIDDEN_KEYS, ATTRIBUTE_ACTION_LIST_SHOWN_KEYS, ATTRIBUTE_ALLOW_TEXT_OVERRIDE, ATTRIBUTE_CONTEXT, ATTRIBUTE_EMPTY_MESSAGE, ATTRIBUTE_NESTED_BEAN, ATTRIBUTE_NESTED_BEAN_CATEGORY, ATTRIBUTE_NESTED_BEAN_PROPERTY_FILTER, ATTRIBUTE_PARENT_PROPERTY, ATTRIBUTE_PROPERTY_CATEGORY, ATTRIBUTE_PROPERTY_CHANGE_LISTENER, ATTRIBUTE_SORT_KEY, ATTRIBUTE_SUGGESTED_VALUES, ATTRIBUTE_VARIABLE_VALUE_CLASS, ATTRIBUTE_VISIBILITY_DISCRIMINATOR, CATEGORY_CONFIGURATION, CONTEXT_ANCHOR_CORNERS, CONTEXT_ANCHOR_HORIZONTAL, CONTEXT_ANCHOR_SIDES, CONTEXT_ANCHOR_VERTICAL, CONTEXT_COMPONENT_ID, CONTEXT_DATETIME, CONTEXT_DOWNLOADABLE_COMPONENT_ID, CONTEXT_FORM_COMPONENT_ID, CONTEXT_HTML, CONTEXT_LAUNCHER_ID, CONTEXT_LAUNCHER_ID_OR_OTHER, CONTEXT_MULTILINE, CONTEXT_NO_INSTALLER_VARIABLES, CONTEXT_NON_SERVICE_LAUNCHER_ID, CONTEXT_SERVICE_LAUNCHER_ID, CONTEXT_STRING_TO_STRING_MAP, CONTEXT_STYLE_ID, CONTEXT_VARIABLE_NAME, CONTEXT_WIDGET_STYLE_ID`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static ActionListPropertyDescriptor`
  `create(String propertyName, Class beanClass, String displayName, String shortDescription)`
  Create a property descriptor that can be passed to `Install4JBeanInfo.addPropertyDescriptor(Install4JPropertyDescriptor)`.
  `ActionListPropertyDescriptor`
  `setActionKeys(String[] actionsKeys)`
  Action keys can be used to show or hide properties of other actions.
  `ActionListPropertyDescriptor`
  `setAllowedActionClasses(Class[] actionClasses)`
  If set to a non-null value, the action registry dialog will only display the specified actions.
  `ActionListPropertyDescriptor`
  `setConfigurableElevationType(boolean configurableElevationType)`
  By default, the user can configure the elevation type of the nested actions.
  `ActionListPropertyDescriptor`
  `setExtraScriptParameters(ScriptParameter[] scriptParameters)`
  If set to a non-null value, script properties of any actions contained in this action list will receive fixed extra script parameter of the defined type.

  ### Methods inherited from class Install4JPropertyDescriptor

  `create, createNested, createNested, createNested, setActionListHiddenKeys, setActionListShownKeys, setAllowTextOverride, setContext, setDisplayName, setEmptyMessage, setHiddenInActionLists, setNestedBean, setNestedBeanCategory, setNestedBeanPropertyFilter, setParentProperty, setPreferred, setPropertyCategory, setPropertyChangeListener, setSortKey, setSuggestedValues, setVariableValueClass, setVisibilityDiscriminator`

  ### Methods inherited from class PropertyDescriptor

  `createPropertyEditor, equals, getPropertyEditorClass, getPropertyType, getReadMethod, getWriteMethod, hashCode, isBound, isConstrained, setBound, setConstrained, setPropertyEditorClass, setReadMethod, setWriteMethod`

  ### Methods inherited from class FeatureDescriptor

  `attributeNames, getDisplayName, getName, getShortDescription, getValue, isExpert, isHidden, isPreferred, setExpert, setHidden, setName, setShortDescription, setValue, toString`

  ### Methods inherited from class Object

  `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- ## Field Details

  - ### ATTRIBUTE_ALLOWED_ACTION_CLASSES

    public static final String ATTRIBUTE_ALLOWED_ACTION_CLASSES
    See Also:
      - `setAllowedActionClasses(Class[])`
      - Constant Field Values

  - ### ATTRIBUTE_EXTRA_SCRIPT_PARAMETERS

    public static final String ATTRIBUTE_EXTRA_SCRIPT_PARAMETERS
    See Also:
      - `setExtraScriptParameters(ScriptParameter[])`
      - Constant Field Values

  - ### ATTRIBUTE_CONFIGURABLE_ELEVATION_TYPE

    public static final String ATTRIBUTE_CONFIGURABLE_ELEVATION_TYPE
    See Also:
      - (boolean)
      - Constant Field Values

  - ### ATTRIBUTE_ACTION_KEYS

    public static final String ATTRIBUTE_ACTION_KEYS
    See Also:
      - `setAllowedActionClasses(Class[])`
      - Constant Field Values

  - ### ACTION_KEY_NO_ROLLBACK

    public static final String ACTION_KEY_NO_ROLLBACK
    Action key for properties of type `ActionList` that do not support rollback. Properties in standard actions that deal with rollback are not shown in the install4j IDE in that case.

    Call `setActionKeys(String[])` with an array that contains this string to select this behavior for an action list property.

    See Also:
      - Constant Field Values

- ## Method Details

  - ### create

    public static ActionListPropertyDescriptor create(String propertyName, Class beanClass, String displayName, String shortDescription)
    Create a property descriptor that can be passed to `Install4JBeanInfo.addPropertyDescriptor(Install4JPropertyDescriptor)`.
    Parameters:
      `propertyName` - the name of the property
      `beanClass` - the class of the bean that contains the property. Note: This is not the class of the property.
      `displayName` - the display name of the property
      `shortDescription` - a short description of the property in HTML format. You do not have to start the description with <html>, it will be prepended automatically.
    Returns:
      the property descriptor

  - ### setAllowedActionClasses

    public ActionListPropertyDescriptor setAllowedActionClasses(Class[] actionClasses)
    If set to a non-null value, the action registry dialog will only display the specified actions. Derived classes are also shown, so you can include entire hierarchies with a single class. Otherwise, all actions will be offered.
    Parameters:
      `actionClasses` - an array with the action classes
    Returns:
      `this`, for chained calls on this property descriptor

  - ### setExtraScriptParameters

    public ActionListPropertyDescriptor setExtraScriptParameters(ScriptParameter[] scriptParameters)
    If set to a non-null value, script properties of any actions contained in this action list will receive fixed extra script parameter of the defined type. The fixed parameters have to be passed to `AbstractBean.executeActionListAsync(ActionList, Object...)` or `AbstractBean.executeActionListSync(ActionList, Object...)` as the vararg parameter.
    Parameters:
      `scriptParameters` - the extra parameters
    Returns:
      `this`, for chained calls on this property descriptor

  - ### setConfigurableElevationType

    public ActionListPropertyDescriptor setConfigurableElevationType(boolean configurableElevationType)
    By default, the user can configure the elevation type of the nested actions. In that case, nested actions have an "Action elevation type" property that can be configured separately from the container.

    Sometimes it can be necessary to suppress this property, for example, if the actions depend on non-serializable installer variables set by the container. To force a container action to be unelevated, you can call `setDefaultActionElevationType(ActionElevationType.NONE, true)` in the bean config of the action.

    Parameters:
      `configurableElevationType` - whether the action elevation type should be configurable
    Returns:
      `this`, for chained calls on this property descriptor

  - ### setActionKeys

    public ActionListPropertyDescriptor setActionKeys(String[] actionsKeys)
    Action keys can be used to show or hide properties of other actions. See `Install4JPropertyDescriptor.setActionListShownKeys(String[])` and `Install4JPropertyDescriptor.setActionListHiddenKeys(String[])` for more information.
    Parameters:
      `actionsKeys` - an array with the action keys
    Returns:
      `this`, for chained calls on this property descriptor