Class MultiValueControlBase

All Implemented Interfaces:
Serializable, Cloneable, Copyable, DictionaryBean, UifDictionaryBean, Component, Ordered, ScriptEventSupport, Control, MultiValueControl, ContentElement, LifecycleElement, org.springframework.core.Ordered
Direct Known Subclasses:
CheckboxGroupControl, OptionListControl, RadioGroupControl, SelectControlBase

public abstract class MultiValueControlBase extends ControlBase implements MultiValueControl
Base class for controls that accept/display multiple values
Author:
Kuali Rice Team (rice.collab@kuali.org)
See Also:
  • Constructor Details

    • MultiValueControlBase

      public MultiValueControlBase()
  • Method Details

    • performApplyModel

      public void performApplyModel(Object model, LifecycleElement parent)
      Process rich message content that may be in the options, by creating and initializing the richOptions Sets the disabledExpression, if any, evaluates it and sets the disabled property
      Specified by:
      performApplyModel in interface LifecycleElement
      Overrides:
      performApplyModel in class ControlBase
      Parameters:
      model - top level object containing the data (could be the form or a top level business object, dto)
      parent -
    • performFinalize

      public void performFinalize(Object model, LifecycleElement parent)
      Adds appropriate parent data to inputs internal to the controls that may be in rich content of options Parses the disabled expressions, if any, to equivalent javascript and evaluates the disable/enable when changed property names.
      Specified by:
      performFinalize in interface LifecycleElement
      Overrides:
      performFinalize in class ControlBase
      Parameters:
      model - top level object containing the data
      parent - parent component
    • getOptions

      public List<KeyValue> getOptions()
      Description copied from interface: MultiValueControl
      List of values the control can accept. Each value consists of a key and a label. The key is the what will be submitted back if the user selects the choice, the label is what will be displayed to the user for the choice.

      KeyLabelPair instances are usually generated by the KeyValueFinder associated with the Field for which the control belongs

      Specified by:
      getOptions in interface MultiValueControl
      Returns:
      List of KeyLabelPair instances
      See Also:
    • setOptions

      public void setOptions(List<KeyValue> options)
      Sets the List of KeyValue pairs that make up the options for the control
      Specified by:
      setOptions in interface MultiValueControl
      Parameters:
      options -
    • getInlineComponents

      public List<Component> getInlineComponents()
      Gets the inlineComponents which represent components that can be referenced in an option's value by index
      Returns:
      the components that can be used in rich values of options
    • setInlineComponents

      public void setInlineComponents(List<Component> inlineComponents)
      Sets the inlineComponents which represent components that can be referenced in an option's value by index
      Parameters:
      inlineComponents -
    • getRichOptions

      public List<KeyMessage> getRichOptions()
      Description copied from interface: MultiValueControl
      Gets the richOptions which contain Message objects with the translated rich message structures, which then can be used by templates to output the appropriate content.
      Specified by:
      getRichOptions in interface MultiValueControl
      Returns:
      richOptions which include a message object with the translated value content
      See Also:
    • setRichOptions

      public void setRichOptions(List<KeyMessage> richOptions)
      Sets the richOptions. This will always override/ignore options if set.

      Messages MUST be defined when using this setter, do not use this setter for most cases as setting options through setOptions, with a richMessage value, is appropriate in MOST cases. This setter is only available for full control.

      Parameters:
      richOptions - with their messages predefined
    • getInternalMessageComponents

      public List<Message> getInternalMessageComponents()
      Used by reflection during the lifecycle to get internal message components that may be contained in options

      There are no references to this method in the code, this is intentional. DO NOT REMOVE.

      Returns:
      the internal message components, if any
    • isLocationSelect

      public boolean isLocationSelect()
      If true, this select represents a location select (navigate on select of option)
      Returns:
      true if this is a location select
    • setLocationSelect

      protected void setLocationSelect(boolean locationSelect)
      Sets the location select (navigate on select of option)
      Parameters:
      locationSelect -