org.kuali.rice.krad.uif.control
Class MultiValueControlBase

java.lang.Object
  extended by org.kuali.rice.krad.datadictionary.DictionaryBeanBase
      extended by org.kuali.rice.krad.datadictionary.uif.UifDictionaryBeanBase
          extended by org.kuali.rice.krad.uif.component.ComponentBase
              extended by org.kuali.rice.krad.uif.element.ContentElementBase
                  extended by org.kuali.rice.krad.uif.control.ControlBase
                      extended by org.kuali.rice.krad.uif.control.MultiValueControlBase
All Implemented Interfaces:
Serializable, Cloneable, Copyable, DictionaryBean, UifDictionaryBean, Component, 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:
Serialized Form

Field Summary
 
Fields inherited from class org.kuali.rice.krad.uif.component.ComponentBase
templateOptions
 
Fields inherited from class org.kuali.rice.krad.datadictionary.DictionaryBeanBase
componentCode, namespaceCode
 
Fields inherited from interface org.kuali.rice.krad.uif.component.Ordered
INITIAL_ORDER_VALUE
 
Fields inherited from interface org.springframework.core.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
 
Constructor Summary
MultiValueControlBase()
           
 
Method Summary
 List<Component> getInlineComponents()
          Gets the inlineComponents which represent components that can be referenced in an option's value by index
 List<Message> getInternalMessageComponents()
          Used by reflection during the lifecycle to get internal message components that may be contained in options
 List<KeyValue> getOptions()
          List of values the control can accept.
 List<KeyMessage> getRichOptions()
          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.
 boolean isLocationSelect()
          If true, this select represents a location select (navigate on select of option)
 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
 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.
 void setInlineComponents(List<Component> inlineComponents)
          Sets the inlineComponents which represent components that can be referenced in an option's value by index
protected  void setLocationSelect(boolean locationSelect)
          Sets the location select (navigate on select of option)
 void setOptions(List<KeyValue> options)
          Sets the List of KeyValue pairs that make up the options for the control
 void setRichOptions(List<KeyMessage> richOptions)
          Sets the richOptions.
 
Methods inherited from class org.kuali.rice.krad.uif.control.ControlBase
completeValidation, getComponentTypeName, getDisabledConditionControlNames, getDisabledConditionJs, getDisabledReason, getDisabledWhenChangedPropertyNames, getEnabledWhenChangedPropertyNames, getTabIndex, isDisabled, isEvaluateDisabledOnKeyUp, setDisabled, setDisabledConditionControlNames, setDisabledConditionJs, setDisabledExpression, setDisabledReason, setDisabledWhenChangedPropertyNames, setEnabledWhenChangedPropertyNames, setEvaluateDisabledOnKeyUp, setTabIndex
 
Methods inherited from class org.kuali.rice.krad.uif.component.ComponentBase
addDataAttribute, addScriptDataAttribute, addStyleClass, addWrapperCssClass, appendToStyle, checkMutable, clone, getAdditionalComponentsToRefresh, getAdditionalComponentsToRefreshJs, getAdditionalCssClasses, getAdditionalTemplates, getAlign, getCellWidth, getColSpan, getComponentModifiers, getComponentSecurity, getConditionalRefresh, getConditionalRefreshConditionJs, getConditionalRefreshControlNames, getContainerIdSuffix, getContext, getCssClasses, getDataAttributes, getEventHandlerScript, getFinalizeMethodAdditionalArguments, getFinalizeMethodInvoker, getFinalizeMethodToCall, getId, getLibraryCssClasses, getMethodToCallOnRefresh, getOnBlurScript, getOnChangeScript, getOnClickScript, getOnCloseScript, getOnDblClickScript, getOnDocumentReadyScript, getOnFocusScript, getOnInputScript, getOnKeyDownScript, getOnKeyPressScript, getOnKeyUpScript, getOnLoadScript, getOnMouseDownScript, getOnMouseMoveScript, getOnMouseOutScript, getOnMouseOverScript, getOnMouseUpScript, getOnSubmitScript, getOnUnloadScript, getOrder, getPhasePathMapping, getPostRenderContent, getPreRenderContent, getProgressiveDisclosureConditionJs, getProgressiveDisclosureControlNames, getProgressiveRender, getPropertyReplacerComponents, getPropertyReplacers, getRefreshTimer, getRefreshWhenChangedPropertyNames, getRenderedHtmlOutput, getRequired, getRowSpan, getScriptDataAttributes, getScriptDataAttributesJs, getSimpleDataAttributes, getStyle, getStyleClassesAsString, getTemplate, getTemplateName, getTemplateOptions, getTemplateOptionsJSString, getTitle, getToolTip, getValign, getViewPath, getViewStatus, getWidth, getWrapperCssClasses, getWrapperCssClassesAsString, getWrapperStyle, initializeComponentSecurity, initializePendingTasks, isDisableSessionPersistence, isDisclosedByAction, isEditAuthz, isFinal, isForceSessionPersistence, isHidden, isInitialized, isModelApplied, isMutable, isProgressiveRenderAndRefresh, isProgressiveRenderViaAJAX, isReadOnly, isRefreshedByAction, isRender, isRendered, isResetDataOnRefresh, isRetrieveViaAjax, isSelfRendered, isSkipInTabOrder, isViewAuthz, notifyCompleted, performInitialization, pushAllToContext, pushObjectToContext, pushToPropertyReplacerContext, setAdditionalComponentsToRefresh, setAdditionalCssClasses, setAlign, setCellWidth, setColSpan, setComponentModifiers, setComponentSecurity, setConditionalRefresh, setContainerIdSuffix, setContext, setCssClasses, setDataAttributes, setDisableSessionPersistence, setDisclosedByAction, setEditAuthz, setFinalizeMethodAdditionalArguments, setFinalizeMethodInvoker, setFinalizeMethodToCall, setForceSessionPersistence, setHidden, setId, setLibraryCssClasses, setMethodToCallOnRefresh, setOnBlurScript, setOnChangeScript, setOnClickScript, setOnCloseScript, setOnDblClickScript, setOnDocumentReadyScript, setOnFocusScript, setOnInputScript, setOnKeyDownScript, setOnKeyPressScript, setOnKeyUpScript, setOnLoadScript, setOnMouseDownScript, setOnMouseMoveScript, setOnMouseOutScript, setOnMouseOverScript, setOnMouseUpScript, setOnSubmitScript, setOnUnloadScript, setOrder, setPhasePathMapping, setPostRenderContent, setPreRenderContent, setProgressiveRender, setProgressiveRenderAndRefresh, setProgressiveRenderViaAJAX, setPropertyReplacers, setReadOnly, setRefreshedByAction, setRefreshTimer, setRefreshWhenChangedPropertyNames, setRender, setRenderedHtmlOutput, setRequired, setResetDataOnRefresh, setRetrieveViaAjax, setRowSpan, setScriptDataAttributes, setSelfRendered, setSkipInTabOrder, setStyle, setTemplate, setTemplateName, setTemplateOptions, setTemplateOptionsJSString, setTitle, setToolTip, setValign, setViewAuthz, setViewPath, setViewStatus, setWidth, setWrapperCssClasses, setWrapperStyle, skipLifecycle
 
Methods inherited from class org.kuali.rice.krad.datadictionary.uif.UifDictionaryBeanBase
getExpressionGraph, getPropertyExpression, getPropertyExpressions, setExpressionGraph, setPropertyExpressions
 
Methods inherited from class org.kuali.rice.krad.datadictionary.DictionaryBeanBase
dataDictionaryPostProcessing, getComponentCode, getNamespaceCode, setComponentCode, setNamespaceCode
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.kuali.rice.krad.uif.component.Component
addDataAttribute, addScriptDataAttribute, addStyleClass, addWrapperCssClass, appendToStyle, getAdditionalComponentsToRefresh, getAdditionalComponentsToRefreshJs, getAdditionalCssClasses, getAdditionalTemplates, getAlign, getCellWidth, getColSpan, getComponentModifiers, getComponentSecurity, getConditionalRefresh, getConditionalRefreshConditionJs, getConditionalRefreshControlNames, getCssClasses, getDataAttributes, getEventHandlerScript, getFinalizeMethodAdditionalArguments, getFinalizeMethodInvoker, getFinalizeMethodToCall, getLibraryCssClasses, getMethodToCallOnRefresh, getOrder, getPostRenderContent, getPreRenderContent, getProgressiveDisclosureConditionJs, getProgressiveDisclosureControlNames, getProgressiveRender, getPropertyReplacerComponents, getPropertyReplacers, getRefreshTimer, getRefreshWhenChangedPropertyNames, getRenderedHtmlOutput, getRequired, getRowSpan, getScriptDataAttributes, getScriptDataAttributesJs, getSimpleDataAttributes, getStyle, getStyleClassesAsString, getTemplate, getTemplateName, getTemplateOptions, getTemplateOptionsJSString, getTitle, getToolTip, getValign, getWidth, getWrapperCssClasses, getWrapperStyle, isDisableSessionPersistence, isDisclosedByAction, isForceSessionPersistence, isHidden, isProgressiveRenderAndRefresh, isProgressiveRenderViaAJAX, isReadOnly, isRefreshedByAction, isRendered, isResetDataOnRefresh, isRetrieveViaAjax, isSelfRendered, setAdditionalComponentsToRefresh, setAdditionalCssClasses, setAlign, setCellWidth, setColSpan, setComponentModifiers, setComponentSecurity, setConditionalRefresh, setCssClasses, setDataAttributes, setDisableSessionPersistence, setDisclosedByAction, setForceSessionPersistence, setHidden, setLibraryCssClasses, setOrder, setPostRenderContent, setPreRenderContent, setProgressiveRender, setProgressiveRenderAndRefresh, setProgressiveRenderViaAJAX, setPropertyReplacers, setReadOnly, setRefreshedByAction, setRefreshTimer, setRefreshWhenChangedPropertyNames, setRenderedHtmlOutput, setRequired, setResetDataOnRefresh, setRetrieveViaAjax, setRowSpan, setScriptDataAttributes, setSelfRendered, setStyle, setTemplate, setTemplateName, setTemplateOptions, setTemplateOptionsJSString, setTitle, setToolTip, setValign, setViewStatus, setWidth, setWrapperCssClasses, setWrapperStyle
 
Methods inherited from interface org.kuali.rice.krad.datadictionary.uif.UifDictionaryBean
getExpressionGraph, getPropertyExpression, getPropertyExpressions, setExpressionGraph, setPropertyExpressions
 
Methods inherited from interface org.kuali.rice.krad.datadictionary.DictionaryBean
dataDictionaryPostProcessing, getComponentCode, getNamespaceCode
 
Methods inherited from interface org.kuali.rice.krad.uif.util.LifecycleElement
checkMutable, getContainerIdSuffix, getContext, getId, getPhasePathMapping, getViewPath, getViewStatus, initializePendingTasks, isFinal, isInitialized, isModelApplied, isMutable, isRender, notifyCompleted, performInitialization, pushAllToContext, pushObjectToContext, setContainerIdSuffix, setContext, setId, setPhasePathMapping, setRender, setViewPath, skipLifecycle
 
Methods inherited from interface org.kuali.rice.krad.datadictionary.Copyable
clone
 
Methods inherited from interface org.kuali.rice.krad.uif.component.ScriptEventSupport
getOnBlurScript, getOnChangeScript, getOnClickScript, getOnCloseScript, getOnDblClickScript, getOnDocumentReadyScript, getOnFocusScript, getOnInputScript, getOnKeyDownScript, getOnKeyPressScript, getOnKeyUpScript, getOnLoadScript, getOnMouseDownScript, getOnMouseMoveScript, getOnMouseOutScript, getOnMouseOverScript, getOnMouseUpScript, getOnSubmitScript, getOnUnloadScript, setOnBlurScript, setOnChangeScript, setOnClickScript, setOnCloseScript, setOnDblClickScript, setOnDocumentReadyScript, setOnFocusScript, setOnInputScript, setOnKeyDownScript, setOnKeyPressScript, setOnKeyUpScript, setOnLoadScript, setOnMouseDownScript, setOnMouseMoveScript, setOnMouseOutScript, setOnMouseOverScript, setOnMouseUpScript, setOnSubmitScript, setOnUnloadScript
 

Constructor Detail

MultiValueControlBase

public MultiValueControlBase()
Method Detail

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 - parent lifecycle element

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:
MultiValueControl.getOptions()

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

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:
MultiValueControl.getRichOptions()

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 -


Copyright © 2005–2014 The Kuali Foundation. All rights reserved.