com.smartgwt.client.widgets.form.fields

## Class MultiPickerItem

- java.lang.Object
- - com.smartgwt.client.core.JsObject
  - - com.smartgwt.client.core.DataClass
    - - com.smartgwt.client.core.RefDataClass
      - - com.smartgwt.client.data.Field
        - - com.smartgwt.client.widgets.form.fields.FormItem
          - - com.smartgwt.client.widgets.form.fields.StaticTextItem
            - - com.smartgwt.client.widgets.form.fields.MultiPickerItem

- All Implemented Interfaces:
    com.google.gwt.event.shared.HasHandlers, HasBlurHandlers, HasChangedHandlers, HasChangeHandlers, HasClickHandlers, HasDoubleClickHandlers, HasEditorEnterHandlers, HasEditorExitHandlers, HasFocusHandlers, HasIconClickHandlers, HasIconKeyPressHandlers, HasItemHoverHandlers, HasKeyDownHandlers, HasKeyPressHandlers, HasKeyUpHandlers, HasPendingStatusChangedHandlers, HasPickerIconClickHandlers, HasShowContextMenuHandlers, HasTitleClickHandlers, HasTitleDoubleClickHandlers, HasTitleHoverHandlers, HasValueHoverHandlers, HasValueIconClickHandlers
  Direct Known Subclasses:
    SetFilterItem

      public class MultiPickerItem
      extends StaticTextItem

  MultiPickerItem provides an interface to edit data involving whether a record has membership in a certain set, for example, where specific Employees are part of specific Teams.

  MultiPickerItem is a compact editor for this purpose, using a `pop-up` to present a `Shuttle`-style interface for moving records or values being different categories. When the MultiPickerItem pop-up is not active, MultiPickerItem just displays the currently chosen values as read-only text, which can be `clipped` to appear in a very small space.

  Note: if your use case is a search interface to generate criteria, in either the FilterEditor of a ListGrid/TreeGrid, or in a SearchForm, SetFilterItem is the right choice. Generally, use SetFilterItem for searching, and MultiPickerItem (or `Shuttle`) for editing.

  To configure a MultiPickerItem, provide either an optionDataSource or a valueMap. The `value` stored by a MultiPickerItem is the set of selected items, as either a list of `primary key values` if an optionDataSource is used, or as just ID values if an valueMap is used.

  The item's picker-component can be customized via settings such as `sortField`, or by configuring `auto-children` like the `search-form`, the `main pickList-grid` or the separate list of `selected values`. You can use `optionFilterContext` to apply custom `requestProperties` to fetches from the main `pickList` grid.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class com.smartgwt.client.widgets.form.fields.FormItem

      `FormItem.CustomStateGetter, FormItem.StateCustomizer`

  - ### Field Summary

    - ### Fields inherited from class com.smartgwt.client.widgets.form.fields.FormItem

      `configOnly, scClassName, warnOnEditorTypeConversion, warnOnEditorTypeConversionDefault`

    - ### Fields inherited from class com.smartgwt.client.core.RefDataClass

      `id`

    - ### Fields inherited from class com.smartgwt.client.core.DataClass

      `factoryCreated, factoryProperties`

    - ### Fields inherited from class com.smartgwt.client.core.JsObject

      `jsObj`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `MultiPickerItem()`
    `MultiPickerItem(com.google.gwt.core.client.JavaScriptObject jsObj)`
    `MultiPickerItem(java.lang.String name)`

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static void` | `changeAutoChildDefaults(java.lang.String autoChildName, Canvas defaults)` Changes the defaults for Canvas AutoChildren named `autoChildName`.
    `static void` | `changeAutoChildDefaults(java.lang.String autoChildName, FormItem defaults)` Changes the defaults for FormItem AutoChildren named `autoChildName`.
    `static void` | `changePickerIconDefaults(FormItemIcon defaults)`
    `java.lang.Boolean` | `getCanExpand()` Should we show an `expansionIcon` expand button allowing the user to show an expanded view of the `pickList` with multiple fields.
    `java.lang.Boolean` | `getCanSelectFolders()` For multiPickerItems with `selectionStyle:"pickTree"`, should the user be able to select and deselect folders?
    `java.lang.Boolean` | `getCascadeSelection()` For multiPickerItems with `selectionStyle:"pickTree"`, and `canSelectFolders:true`, should `TreeGrid.cascadeSelection` be enabled on our pickTree?
    `java.lang.String` | `getCollapseIconSrc()` `SCImgURL` for the `expansionIcon` while in expanded mode
    `java.lang.Boolean` | `getDeriveUniqueValues()` If this MultiPickerItem is deriving its options from a dataSource, should it ensure unique field values by `grouping by` the value field for this item? This is not necessary if the target dataSource value field is already unique - for example if this is the primaryKey field for a dataSource.
    `ToolStripButton` | `getDeselectAllButton()` Clear All button `com.smartgwt.client.types.AutoChild`
    `java.lang.String` | `getDeselectAllButtonTitle()` Title for the `deselectAllButton`
    `java.lang.String` | `getDeselectAllWhileFiltered_disabledPrompt()` Disabled prompt for the `deselectAllButton` while filtered if `selectAllWhileFiltered` is set to `"disable"`.
    `java.lang.String` | `getDeselectAllWhileFiltered_partialCachePrompt()` Disabled prompt for the `deselectAllButton` while filtered if `selectAllWhileFiltered` is set to `"whenLoaded"` and the PickList does not have a complete data set loaded on the client.
    `java.lang.String` | `getDisplayField()` If set, this item will display a value from another field to the user instead of showing the underlying data value for the `field name`.
    `ListGridField[]` | `getExpandedPickListFields()` If `canExpand` is true, this is the list of fields to display in the PickList or `pickTree` when the picker is expanded
    `java.lang.String` | `getExpandIconSrc()` `SCImgURL` for the `expansionIcon` while not in expanded mode
    `java.lang.Integer` | `getExpansionHeight()` Height for the `pickerLayout` in expanded mode when `canExpand` is true
    `ToolStripButton` | `getExpansionIcon()` Automatically generated expand / collapse icon when `canExpand` is true
    `java.lang.Integer` | `getExpansionWidth()` Width for the `pickerLayout` in expanded mode when `canExpand` is true
    `DynamicForm` | `getFilterForm()` Dynamic form showing a single text item for filtering the PickList while `SelectionStyle` is "pickList".
    `java.lang.String` | `getFilterHint()` `Hint` for the `filterForm` text item.
    `FormItemIcon` | `getFilterIcon()` Automatically generated right-aligned inline filter indicator icon for the `filterForm` text box.
    `java.lang.Integer` | `getFilterIconHeight()` `height` for the `filterIcon`
    `java.lang.String` | `getFilterIconSrc()` `src` for the `filterIcon`
    `java.lang.Integer` | `getFilterIconWidth()` `width` for the `filterIcon`
    `boolean` | `getFilterPickListOnKeypress()` Should `filterOnKeypress` be active for the pickList?
    `java.lang.Boolean` | `getIncludeSelectedParents()` For multiPickerItems with `selectionStyle:"pickTree"`, and `canSelectFolders:true`, should selected parent nodes be included in the item's value?
    `SortSpecifier[]` | `getInitialSort()` `Initial sort specifiers` for this item's list of options.
    `java.lang.Boolean` | `getMultiple()` MultiPickerItems always work with array values
    `Criteria` | `getOptionCriteria()` If this MultiPickerItem is deriving its options from a dataSource, this property allows developers to specify criteria for the fetch.
    `DataSource` | `getOptionDataSource()` If set, this FormItem will map stored values to display values as though a `com.smartgwt.client.types.ValueMap` were specified, by fetching records from the specified `optionDataSource` and extracting the `valueField` and `displayField` in loaded records, to derive one valueMap entry per record loaded from the optionDataSource.
    `DSRequest` | `getOptionFilterContext()` If this item has a specified `optionDataSource`, and this property is not null, the context is passed to the dataSource as `RPCRequest` properties when performing fetch operations on the dataSource to obtain a data-value to display-value mapping, and when fetching for grid-based pickers.
    `java.lang.String` | `getOptionOperationId()` If this item has a specified `optionDataSource`, this attribute may be set to specify an explicit `DSRequest.operationId` when performing a fetch against the option dataSource to pick up display value mapping.
    `static MultiPickerItem` | `getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj)`
    `VLayout` | `getPickerLayout()` Main dropdown picker layout containing the PickList or `Shuttle`.
    `HLayout` | `getPickerToolbar()` Toolbar autoChild containing the `selectAllButton`, `deselectAllButton` and `expansionIcon`.
    `ListGrid` | `getPickList()` The MultiPickerItem `pickList` is a filterable ListGrid `com.smartgwt.client.types.AutoChild` for viewing and selecting the list of available options when `SelectionStyle` is `"pickList"`.
    `java.lang.Integer` | `getPickListFetchDelay()` If `filterPickListOnKeypress` is true, how long to wait in ms after the last keystroke from a user before filtering the pickList.
    `java.lang.Integer` | `getPickListHeight()` Default height for the `pickerLayout` when `SelectionStyle` is `"pickList"`.
    `java.lang.Integer` | `getPickListWidth()` Default width for the `pickerLayout` when `SelectionStyle` is `"pickList"`.
    `TreeGrid` | `getPickTree()` The MultiPickerItem `pickTree` is a TreeGrid `com.smartgwt.client.types.AutoChild` for viewing and selecting a tree of available options when `SelectionStyle` is `"pickTree"`.
    `ToolStripButton` | `getSelectAllButton()` Select All button `com.smartgwt.client.types.AutoChild`
    `java.lang.String` | `getSelectAllButtonTitle()` Title for the `selectAllButton`
    `java.lang.String` | `getSelectAllWhileFiltered_disabledPrompt()` Disabled prompt for the `selectAllButton` while filtered if `selectAllWhileFiltered` is set to `"disable"`.
    `java.lang.String` | `getSelectAllWhileFiltered_partialCachePrompt()` Disabled prompt for the `selectAllButton` while filtered if `selectAllWhileFiltered` is set to `"whenLoaded"` and the PickList does not have a complete data set loaded on the client.
    `FilteredSelectAllAction` | `getSelectAllWhileFiltered()` If the user has filtered the set of options available in this item, how should the "Select All" and "Clear All" buttons work?
    `java.lang.String` | `getSelectedSelectionListTitle()` Default title for the `selectionList`.
    `ListGrid` | `getSelectionList()` Automatically generated ListGrid displaying the current selection for `selectionStyle:"pickList"`.
    `Label` | `getSelectionListLabel()` AutoChild to show the `selectedSelectionListTitle`
    `MultiPickerSelectionStyle` | `getSelectionStyle()` Should the MultiPickerItem use a `Shuttle` style interface to indicate the currently selected / unselected values?
    `boolean` | `getShowFilterForm()` Should the `filterForm` be shown?
    `java.lang.Boolean` | `getShowSelectionLabel()` Should we show a `selectionListLabel` for the `selectedSelectionListTitle` above the `selectionList`.
    `java.lang.Boolean` | `getShowSelectionList()` Should a `list of selected items` be displayed below the PickList if `SelectionStyle` is `"pickList"`?
    `Shuttle` | `getShuttle()` AutoChild `Shuttle` shown in the `pickerLayout` when `SelectionStyle` is set to `"shuttle"`.
    `java.lang.Integer` | `getShuttleHeight()` Height for the `pickerLayout` when `SelectionStyle` is `"shuttle"`.
    `java.lang.Integer` | `getShuttleWidth()` Width for the `pickerLayout` when `SelectionStyle` is `"shuttle"`.
    `SortDirection` | `getSortDirection()` `Sort direction` for this item's list of options.
    `java.lang.String` | `getSortField()` `Sort field` for this item's list of options.
    `java.lang.Integer` | `getSortFieldAsInt()` `Sort field` for this item's list of options.
    `java.lang.String[]` | `getSortFieldAsStringArray()` `Sort field` for this item's list of options.
    `TextMatchStyle` | `getTextMatchStyle()` textMatchStyle to apply to `option criteria` for this item
    `java.lang.String` | `getValueField()` If this form item maps data values to display values by retrieving the `FormItem.displayField` values from an `optionDataSource`, this property denotes the the field to use as the underlying data value in records from the optionDataSource. If not explicitly supplied, the valueField name will be derived as described in `FormItem.getValueFieldName()`.
    `java.lang.String` | `getValueFieldName()` Getter method to retrieve the `FormItem.valueField` for this item.
    `MultiPickerItem` | `setCanExpand(java.lang.Boolean canExpand)` Should we show an `expansionIcon` expand button allowing the user to show an expanded view of the `pickList` with multiple fields.
    `MultiPickerItem` | `setCanSelectFolders(java.lang.Boolean canSelectFolders)` For multiPickerItems with `selectionStyle:"pickTree"`, should the user be able to select and deselect folders?
    `MultiPickerItem` | `setCascadeSelection(java.lang.Boolean cascadeSelection)` For multiPickerItems with `selectionStyle:"pickTree"`, and `canSelectFolders:true`, should `TreeGrid.cascadeSelection` be enabled on our pickTree?
    `MultiPickerItem` | `setCollapseIconSrc(java.lang.String collapseIconSrc)` `SCImgURL` for the `expansionIcon` while in expanded mode
    `static void` | `setDefaultProperties(MultiPickerItem multiPickerItemProperties)` Class level method to set the default properties of this class.
    `MultiPickerItem` | `setDeriveUniqueValues(java.lang.Boolean deriveUniqueValues)` If this MultiPickerItem is deriving its options from a dataSource, should it ensure unique field values by `grouping by` the value field for this item? This is not necessary if the target dataSource value field is already unique - for example if this is the primaryKey field for a dataSource.
    `MultiPickerItem` | `setDeselectAllButtonTitle(java.lang.String deselectAllButtonTitle)` Title for the `deselectAllButton`
    `MultiPickerItem` | `setDeselectAllWhileFiltered_disabledPrompt(java.lang.String deselectAllWhileFiltered_disabledPrompt)` Disabled prompt for the `deselectAllButton` while filtered if `selectAllWhileFiltered` is set to `"disable"`.
    `MultiPickerItem` | `setDeselectAllWhileFiltered_partialCachePrompt(java.lang.String deselectAllWhileFiltered_partialCachePrompt)` Disabled prompt for the `deselectAllButton` while filtered if `selectAllWhileFiltered` is set to `"whenLoaded"` and the PickList does not have a complete data set loaded on the client.
    `MultiPickerItem` | `setDisplayField(java.lang.String displayField)` If set, this item will display a value from another field to the user instead of showing the underlying data value for the `field name`.
    `MultiPickerItem` | `setExpandedPickListFields(ListGridField... expandedPickListFields)` If `canExpand` is true, this is the list of fields to display in the PickList or `pickTree` when the picker is expanded
    `MultiPickerItem` | `setExpandIconSrc(java.lang.String expandIconSrc)` `SCImgURL` for the `expansionIcon` while not in expanded mode
    `MultiPickerItem` | `setExpansionHeight(java.lang.Integer expansionHeight)` Height for the `pickerLayout` in expanded mode when `canExpand` is true
    `MultiPickerItem` | `setExpansionWidth(java.lang.Integer expansionWidth)` Width for the `pickerLayout` in expanded mode when `canExpand` is true
    `MultiPickerItem` | `setFilterHint(java.lang.String filterHint)` `Hint` for the `filterForm` text item.
    `MultiPickerItem` | `setFilterIconHeight(java.lang.Integer filterIconHeight)` `height` for the `filterIcon`
    `MultiPickerItem` | `setFilterIconSrc(java.lang.String filterIconSrc)` `src` for the `filterIcon`
    `MultiPickerItem` | `setFilterIconWidth(java.lang.Integer filterIconWidth)` `width` for the `filterIcon`
    `MultiPickerItem` | `setFilterPickListOnKeypress(boolean filterPickListOnKeypress)` Should `filterOnKeypress` be active for the pickList?
    `MultiPickerItem` | `setIncludeSelectedParents(java.lang.Boolean includeSelectedParents)` For multiPickerItems with `selectionStyle:"pickTree"`, and `canSelectFolders:true`, should selected parent nodes be included in the item's value?
    `MultiPickerItem` | `setInitialSort(SortSpecifier... initialSort)` `Initial sort specifiers` for this item's list of options.
    `MultiPickerItem` | `setMultiple(java.lang.Boolean multiple)` MultiPickerItems always work with array values
    `void` | `setOptionCriteria(Criteria optionCriteria)` If this MultiPickerItem is deriving its options from a dataSource, this property allows developers to specify criteria for the fetch.
    `MultiPickerItem` | `setOptionDataSource(DataSource optionDataSource)` If set, this FormItem will map stored values to display values as though a `com.smartgwt.client.types.ValueMap` were specified, by fetching records from the specified `optionDataSource` and extracting the `valueField` and `displayField` in loaded records, to derive one valueMap entry per record loaded from the optionDataSource.
    `MultiPickerItem` | `setOptionFilterContext(DSRequest optionFilterContext)` If this item has a specified `optionDataSource`, and this property is not null, the context is passed to the dataSource as `RPCRequest` properties when performing fetch operations on the dataSource to obtain a data-value to display-value mapping, and when fetching for grid-based pickers.
    `MultiPickerItem` | `setOptionOperationId(java.lang.String optionOperationId)` If this item has a specified `optionDataSource`, this attribute may be set to specify an explicit `DSRequest.operationId` when performing a fetch against the option dataSource to pick up display value mapping.
    `MultiPickerItem` | `setPickListFetchDelay(java.lang.Integer pickListFetchDelay)` If `filterPickListOnKeypress` is true, how long to wait in ms after the last keystroke from a user before filtering the pickList.
    `MultiPickerItem` | `setPickListHeight(java.lang.Integer pickListHeight)` Default height for the `pickerLayout` when `SelectionStyle` is `"pickList"`.
    `MultiPickerItem` | `setPickListWidth(java.lang.Integer pickListWidth)` Default width for the `pickerLayout` when `SelectionStyle` is `"pickList"`.
    `MultiPickerItem` | `setSelectAllButtonTitle(java.lang.String selectAllButtonTitle)` Title for the `selectAllButton`
    `MultiPickerItem` | `setSelectAllWhileFiltered_disabledPrompt(java.lang.String selectAllWhileFiltered_disabledPrompt)` Disabled prompt for the `selectAllButton` while filtered if `selectAllWhileFiltered` is set to `"disable"`.
    `MultiPickerItem` | `setSelectAllWhileFiltered_partialCachePrompt(java.lang.String selectAllWhileFiltered_partialCachePrompt)` Disabled prompt for the `selectAllButton` while filtered if `selectAllWhileFiltered` is set to `"whenLoaded"` and the PickList does not have a complete data set loaded on the client.
    `MultiPickerItem` | `setSelectAllWhileFiltered(FilteredSelectAllAction selectAllWhileFiltered)` If the user has filtered the set of options available in this item, how should the "Select All" and "Clear All" buttons work?
    `MultiPickerItem` | `setSelectedSelectionListTitle(java.lang.String selectedSelectionListTitle)` Default title for the `selectionList`.
    `MultiPickerItem` | `setSelectionStyle(MultiPickerSelectionStyle selectionStyle)` Should the MultiPickerItem use a `Shuttle` style interface to indicate the currently selected / unselected values?
    `MultiPickerItem` | `setShowFilterForm(boolean showFilterForm)` Should the `filterForm` be shown?
    `MultiPickerItem` | `setShowSelectionLabel(java.lang.Boolean showSelectionLabel)` Should we show a `selectionListLabel` for the `selectedSelectionListTitle` above the `selectionList`.
    `MultiPickerItem` | `setShowSelectionList(java.lang.Boolean showSelectionList)` Should a `list of selected items` be displayed below the PickList if `SelectionStyle` is `"pickList"`?
    `MultiPickerItem` | `setShuttleHeight(java.lang.Integer shuttleHeight)` Height for the `pickerLayout` when `SelectionStyle` is `"shuttle"`.
    `MultiPickerItem` | `setShuttleWidth(java.lang.Integer shuttleWidth)` Width for the `pickerLayout` when `SelectionStyle` is `"shuttle"`.
    `MultiPickerItem` | `setSortDirection(SortDirection sortDirection)` `Sort direction` for this item's list of options.
    `MultiPickerItem` | `setSortField(java.lang.Integer sortField)` `Sort field` for this item's list of options.
    `MultiPickerItem` | `setSortField(java.lang.String... sortField)` `Sort field` for this item's list of options.
    `MultiPickerItem` | `setSortField(java.lang.String sortField)` `Sort field` for this item's list of options.
    `MultiPickerItem` | `setTextMatchStyle(TextMatchStyle textMatchStyle)` textMatchStyle to apply to `option criteria` for this item
    `MultiPickerItem` | `setValueField(java.lang.String valueField)` If this form item maps data values to display values by retrieving the `FormItem.displayField` values from an `optionDataSource`, this property denotes the the field to use as the underlying data value in records from the optionDataSource. If not explicitly supplied, the valueField name will be derived as described in `FormItem.getValueFieldName()`.

    - ### Methods inherited from class com.smartgwt.client.widgets.form.fields.StaticTextItem

      `getApplyAlignToText, getApplyHeightToTextBox, getCanSelectText, getClipValue, getDateFormatter, getDefaultValue, getEditProxyConstructor, getEscapeHTML, getTextBoxStyle, getWrap, setApplyAlignToText, setApplyHeightToTextBox, setCanSelectText, setClipValue, setDateFormatter, setDefaultProperties, setEditProxyConstructor, setEscapeHTML, setTextBoxStyle, setWrap`

    - ### Methods inherited from class com.smartgwt.client.widgets.form.fields.FormItem

      `_getValue, addBlurHandler, addChangedHandler, addChangeHandler, addClickHandler, addDoubleClickHandler, addEditorEnterHandler, addEditorExitHandler, addFocusHandler, addIcon, addIcon, addIconClickHandler, addIconKeyPressHandler, addItemHoverHandler, addKeyDownHandler, addKeyPressHandler, addKeyUpHandler, addPendingStatusChangedHandler, addPickerIconClickHandler, addShowContextMenuHandler, addTitleClickHandler, addTitleDoubleClickHandler, addTitleHoverHandler, addValueHoverHandler, addValueIconClickHandler, applyFormula, asSGWTComponent, blurItem, canEditCriterion, checkFormItemType, clearErrors, clearValue, disable, disableIcon, enable, enableIcon, error, error, errorIfNotCreated, focusAfterItem, focusInItem, getAccessKey, getAlign, getAllowExpressions, getAlwaysFetchMissingValues, getAlwaysShowControlBox, getAriaRole, getAttribute, getAttributeAsBoolean, getAttributeAsBoolean, getAttributeAsDate, getAttributeAsDouble, getAttributeAsFloat, getAttributeAsInt, getAttributeAsJavaScriptObject, getAttributeAsObject, getAttributeAsString, getAutoComplete, getAutoCompleteKeywords, getBrowserInputType, getBrowserSpellCheck, getCanEdit, getCanEditOpaqueValues, getCanFocus, getCanHover, getCanTabToIcons, getCanvasAutoChild, getCellHeight, getCellStyle, getChangeOnKeypress, getClassName, getClipStaticValue, getClipTitle, getConfig, getContainerWidget, getControlStyle, getCriteriaField, getCriterion, getCriterion, getCursorPosition, getCustomState, getDataPath, getDecimalPad, getDecimalPrecision, getDefaultIconSrc, getDefaultOperator, getDestroyed, getDisabled, getDisabledHover, getDisableIconsOnReadOnly, getDisplayFieldName, getDisplayValue, getDisplayValue, getEditorTypeConfig, getEditPendingCSSText, getEmptyDisplayValue, getEmptyValueIcon, getEndRow, getErrorIconHeight, getErrorIconProperties, getErrorIconSrc, getErrorIconWidth, getErrorMessageWidth, getErrors, getExportFormat, getFetchMissingValues, getFieldName, getFilterLocally, getForeignDisplayField, getForm, getFormat, getFormItemAutoChild, getFormula, getFullDataPath, getGlobalTabIndex, getGridColNum, getGridRowNum, getHeight, getHeightAsString, getHidden, getHint, getHintStyle, getHoverAlign, getHoverDelay, getHoverFocusKey, getHoverHeight, getHoverHeightAsString, getHoverOpacity, getHoverPersist, getHoverStyle, getHoverVAlign, getHoverWidth, getHoverWidthAsString, getIcon, getIconBaseStyle, getIconHeight, getIconHSpace, getIconPageRect, getIconPrompt, getIconRect, getIcons, getIconTabPosition, getIconVAlign, getIconWidth, getID, getImageURLPrefix, getImageURLSuffix, getImplicitSave, getImplicitSaveOnBlur, getInputFormat, getLeft, getLinearColSpan, getLinearColSpanAsString, getLinearEndRow, getLinearEndRowAsString, getLinearStartRow, getLinearStartRowAsString, getLinearWidth, getLinearWidthAsString, getListGrid, getLoadingDisplayValue, getLocateItemBy, getMinHintWidth, getMultipleValueSeparator, getName, getNullOriginalValueText, getOperator, getOptionDataSourceAsString, getOptionTextMatchStyle, getOriginalValueMessage, getPageLeft, getPageRect, getPageTop, getPaletteDefaults, getPicker, getPickerIcon, getPickerIcon, getPickerIconHeight, getPickerIconName, getPickerIconPrompt, getPickerIconProperties, getPickerIconSrc, getPickerIconStyle, getPickerIconTabPosition, getPickerIconWidth, getPixelHeight, getPixelWidth, getPrintReadOnlyTextBoxStyle, getPrintTextBoxStyle, getPrintTitleStyle, getPrompt, getReadOnlyCanSelectText, getReadOnlyControlStyle, getReadOnlyDisplay, getReadOnlyHover, getReadOnlyTextBoxStyle, getReadOnlyWhen, getRect, getRedrawOnChange, getRejectInvalidValueOnChange, getRequired, getRequiredMessage, getRequiredWhen, getRowSpan, getSaveOnEnter, getScClassName, getSelectedRecord, getSelectOnClick, getSelectOnFocus, getShouldSaveValue, getShowClippedTitleOnHover, getShowClippedValueOnHover, getShowDeletions, getShowDisabled, getShowDisabledIconsOnFocus, getShowDisabledPickerIconOnFocus, getShowErrorIcon, getShowErrorIconInline, getShowErrorStyle, getShowErrorText, getShowFocused, getShowFocusedErrorState, getShowFocusedIcons, getShowFocusedPickerIcon, getShowHint, getShowIcons, getShowIconsOnFocus, getShowImageAsURL, getShowOldValueInHover, getShowOver, getShowOverIcons, getShowPending, getShowPickerIcon, getShowPickerIconOnFocus, getShowRTL, getShowTitle, getShowValueIconOnly, getStartRow, getStaticHeight, getStopOnError, getStoreDisplayValues, getSupportsCutPasteEvents, getSuppressValueIcon, getSynchronousValidation, getTabIndex, getTextAlign, getTextFormula, getTimeFormatter, getTitle, getTitleAlign, getTitleColSpan, getTitleOrientation, getTitleStyle, getTitleVAlign, getTooltip, getTop, getType, getUpdateControlOnOver, getUpdatePickerIconOnOver, getUpdateTextBoxOnOver, getUseAdvancedCriteria, getUseDisabledHintStyleForReadOnly, getUseLocalDisplayFieldValue, getValidateOnChange, getValidateOnExit, getValidOperators, getVAlign, getValue, getValueAsFloat, getValueAsInteger, getValueAsLong, getValueAsRecordList, getValueDeselectedCSSText, getValueIconHeight, getValueIconLeftPadding, getValueIconRightPadding, getValueIconSize, getValueIconWidth, getValueMap, getValueMapAsArray, getVisible, getVisibleHeight, getVisibleTitleWidth, getVisibleWhen, getVisibleWidth, getWarnOnEditorTypeConversion, getWarnOnEditorTypeConversionDefault, getWidth, getWidthAsString, getWrapHintText, getWrapStaticValue, getWrapTitle, handleWarnOnEditorTypeConversion, hasAdvancedCriteria, hasErrors, hide, hideIcon, invalidateDisplayValueCache, isAssignableFrom, isConfigOnly, isCreated, isCutEvent, isDisabled, isDrawn, isFocused, isInGrid, isPasteEvent, isVisible, linkToInstanceUponCreate, mapDisplayToValue, mapValueToDisplay, mapValueToDisplay, mapValueToDisplay, redraw, redraw, removeIcon, selectedRecordChanged, setAccessKey, setAlign, setAllowExpressions, setAlwaysFetchMissingValues, setAlwaysShowControlBox, setAriaRole, setAriaState, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAutoChildConstructor, setAutoChildProperties, setAutoChildProperties, setAutoChildProperties, setAutoChildVisibility, setAutoComplete, setAutoCompleteKeywords, setBrowserInputType, setBrowserSpellCheck, setCanEdit, setCanEditCriterionPredicate, setCanEditOpaqueValues, setCanFocus, setCanHover, setCanTabToIcons, setCellHeight, setCellStyle, setChangeOnKeypress, setClipStaticValue, setClipTitle, setColSpan, setColSpan, setConfigOnly, setControlStyle, setCriteriaField, setCriterion, setCriterionGetter, setCriterionSetter, setCustomStateGetter, setDataPath, setDecimalPad, setDecimalPrecision, setDefaultIconSrc, setDefaultOperator, setDefaultProperties, setDefaultValue, setDefaultValue, setDefaultValue, setDefaultValue, setDefaultValue, setDefaultValue, setDefaultValue, setDisabled, setDisabledHover, setDisableIconsOnReadOnly, setDisplayFormat, setDisplayFormat, setEditorProperties, setEditorType, setEditorType, setEditorType, setEditorValueFormatter, setEditorValueParser, setEditPendingCSSText, setEmptyDisplayValue, setEmptyValueIcon, setEndRow, setErrorFormatter, setErrorIconHeight, setErrorIconProperties, setErrorIconSrc, setErrorIconWidth, setErrorMessageWidth, setErrorOrientation, setErrors, setErrors, setExportFormat, setFetchMissingValues, setFilterLocally, setForeignDisplayField, setFormat, setFormula, setGlobalTabIndex, setHeight, setHeight, setHidden, setHint, setHintStyle, setHoverAlign, setHoverDelay, setHoverFocusKey, setHoverHeight, setHoverHeight, setHoverOpacity, setHoverPersist, setHoverStyle, setHoverVAlign, setHoverWidth, setHoverWidth, setIconBaseStyle, setIconDisabled, setIconHeight, setIconHSpace, setIconPrompt, setIcons, setIconShowOnFocus, setIconVAlign, setIconWidth, setID, setImageURLPrefix, setImageURLSuffix, setImplicitSave, setImplicitSaveOnBlur, setInitHandler, setInputFormat, setInputTransformer, setItemHoverFormatter, setItemTitleHoverFormatter, setItemValueHoverFormatter, setJavaScriptObject, setLeft, setLinearColSpan, setLinearColSpan, setLinearEndRow, setLinearEndRow, setLinearStartRow, setLinearStartRow, setLinearWidth, setLinearWidth, setLoadingDisplayValue, setLocateItemBy, setMinHintWidth, setMultipleValueSeparator, setName, setNullOriginalValueText, setNullProperty, setOperator, setOptionDataSource, setOptionFilterContext, setOptionTextMatchStyle, setOriginalValueMessage, setPickerIconHeight, setPickerIconName, setPickerIconPrompt, setPickerIconProperties, setPickerIconSrc, setPickerIconStyle, setPickerIconWidth, setPrintReadOnlyTextBoxStyle, setPrintTextBoxStyle, setPrintTitleStyle, setPrompt, setProperty, setProperty, setProperty, setProperty, setProperty, setReadOnlyCanSelectText, setReadOnlyControlStyle, setReadOnlyDisplay, setReadOnlyHover, setReadOnlyTextBoxStyle, setReadOnlyWhen, setRedrawOnChange, setRejectInvalidValueOnChange, setRequired, setRequiredMessage, setRequiredWhen, setRowSpan, setSaveOnEnter, setScClassName, setSelectOnClick, setSelectOnFocus, setShouldSaveValue, setShowClippedTitleOnHover, setShowClippedValueOnHover, setShowDeletions, setShowDisabled, setShowDisabledIconsOnFocus, setShowDisabledPickerIconOnFocus, setShowErrorIcon, setShowErrorIconInline, setShowErrorStyle, setShowErrorText, setShowFocused, setShowFocusedErrorState, setShowFocusedIcons, setShowFocusedPickerIcon, setShowHint, setShowIcons, setShowIconsOnFocus, setShowIfCondition, setShowImageAsURL, setShowOldValueInHover, setShowOver, setShowOverIcons, setShowPending, setShowPickerIcon, setShowPickerIconOnFocus, setShowRTL, setShowTitle, setShowValueIconOnly, setStartRow, setStateCustomizer, setStaticHeight, setStopOnError, setStoreDisplayValues, setSupportsCutPasteEvents, setSuppressValueIcon, setSynchronousValidation, setTabIndex, setTextAlign, setTextFormula, setTimeFormatter, setTitle, setTitleAlign, setTitleColSpan, setTitleHoverFormatter, setTitleOrientation, setTitleStyle, setTitleVAlign, setTooltip, setTop, setType, setUpdateControlOnOver, setUpdatePickerIconOnOver, setUpdateTextBoxOnOver, setUseAdvancedCriteria, setUseDisabledHintStyleForReadOnly, setUseLocalDisplayFieldValue, setUseObjectFactoryForTypeFallback, setValidateOnChange, setValidateOnExit, setValidators, setValidOperators, setVAlign, setValue, setValue, setValue, setValue, setValue, setValue, setValueDeselectedCSSText, setValueFormatter, setValueHoverFormatter, setValueIconHeight, setValueIconLeftPadding, setValueIconMapper, setValueIconRightPadding, setValueIcons, setValueIconSize, setValueIconWidth, setValueMap, setValueMap, setVisible, setVisibleWhen, setWarnOnEditorTypeConversion, setWarnOnEditorTypeConversionDefault, setWidth, setWidth, setWrapHintText, setWrapStaticValue, setWrapTitle, shouldApplyHeightToTextBox, shouldFetchMissingValue, shouldSaveOnEnter, shouldStopKeyPressBubbling, show, showIcon, showPicker, stopHover, storeValue, storeValue, updateState, validate, valueClipped`

    - ### Methods inherited from class com.smartgwt.client.data.Field

      `getCanExport, getExportTitle, getSortByField, setCanExport, setExportTitle, setSortByField`

    - ### Methods inherited from class com.smartgwt.client.core.RefDataClass

      `getRef, getRef, internalSetID`

    - ### Methods inherited from class com.smartgwt.client.core.DataClass

      `applyFactoryProperties, doAddHandler, fireEvent, getAttributeAsDoubleArray, getAttributeAsElement, getAttributeAsIntArray, getAttributeAsLong, getAttributeAsMap, getAttributeAsObject, getAttributeAsRecord, getAttributeAsStringArray, getAttributes, getHandlerCount, isFactoryCreated, setAttribute, setAttribute, setAttribute, setAttributeAsJavaObject, setFactoryCreated`

    - ### Methods inherited from class com.smartgwt.client.core.JsObject

      `equals, getJsObj, hashCode, setJsObj`

    - ### Methods inherited from class java.lang.Object

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

    - ### Methods inherited from interface com.google.gwt.event.shared.HasHandlers

      `fireEvent`

- - ### Constructor Detail

    - #### MultiPickerItem

          public MultiPickerItem()

    - #### MultiPickerItem

          public MultiPickerItem(com.google.gwt.core.client.JavaScriptObject jsObj)

    - #### MultiPickerItem

          public MultiPickerItem(java.lang.String name)

  - ### Method Detail

    - #### getOrCreateRef

          public static MultiPickerItem getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj)

    - #### changeAutoChildDefaults

          public static void changeAutoChildDefaults(java.lang.String autoChildName,
                                                     Canvas defaults)

      Changes the defaults for Canvas AutoChildren named `autoChildName`.
      Parameters:
        `autoChildName` - name of an AutoChild to customize the defaults for.
        `defaults` - Canvas defaults to apply. These defaults override any existing properties without destroying or wiping out non-overridden properties. For usage tips on this param, see `SGWTProperties`.
      See Also:
        `AutoChildUsage`

    - #### changeAutoChildDefaults

          public static void changeAutoChildDefaults(java.lang.String autoChildName,
                                                     FormItem defaults)

      Changes the defaults for FormItem AutoChildren named `autoChildName`.
      Parameters:
        `autoChildName` - name of an AutoChild to customize the defaults for.
        `defaults` - FormItem defaults to apply. These defaults override any existing properties without destroying or wiping out non-overridden properties. For usage tips on this param, see `SGWTProperties`.
      See Also:
        `AutoChildUsage`

    - #### changePickerIconDefaults

          public static void changePickerIconDefaults(FormItemIcon defaults)

    - #### setCanExpand

          public MultiPickerItem setCanExpand(java.lang.Boolean canExpand)

      Should we show an `expansionIcon` expand button allowing the user to show an expanded view of the `pickList` with multiple fields.

      `canExpand` only applies to MultiPickerItems with selectionStyle set to "pickList" or "pickTree" and an explicitly specified set of `expandedPickListFields` to display within the expanded view.

      Parameters:
        `canExpand` - New canExpand value. Default value is true
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getCanExpand

          public java.lang.Boolean getCanExpand()

      Should we show an `expansionIcon` expand button allowing the user to show an expanded view of the `pickList` with multiple fields.

      `canExpand` only applies to MultiPickerItems with selectionStyle set to "pickList" or "pickTree" and an explicitly specified set of `expandedPickListFields` to display within the expanded view.

      Returns:
        Current canExpand value. Default value is true

    - #### setCanSelectFolders

          public MultiPickerItem setCanSelectFolders(java.lang.Boolean canSelectFolders)

      For multiPickerItems with `selectionStyle:"pickTree"`, should the user be able to select and deselect folders?

      If false, selection checkboxes will only be visible by leaf nodes within the pickTree data set.

      Note that this flag may be set to true in conjunction with `includeSelectedParents:false`. In this case the user may check and uncheck parent nodes as a convenient way to select or unselect all their children due to `cascading selection`, but the parent nodes themselves won't be present in the item's value.

      Parameters:
        `canSelectFolders` - New canSelectFolders value. Default value is true
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getCanSelectFolders

          public java.lang.Boolean getCanSelectFolders()

      For multiPickerItems with `selectionStyle:"pickTree"`, should the user be able to select and deselect folders?

      If false, selection checkboxes will only be visible by leaf nodes within the pickTree data set.

      Note that this flag may be set to true in conjunction with `includeSelectedParents:false`. In this case the user may check and uncheck parent nodes as a convenient way to select or unselect all their children due to `cascading selection`, but the parent nodes themselves won't be present in the item's value.

      Returns:
        Current canSelectFolders value. Default value is true

    - #### setCascadeSelection

          public MultiPickerItem setCascadeSelection(java.lang.Boolean cascadeSelection)

      For multiPickerItems with `selectionStyle:"pickTree"`, and `canSelectFolders:true`, should `TreeGrid.cascadeSelection` be enabled on our pickTree?
      Parameters:
        `cascadeSelection` - New cascadeSelection value. Default value is true
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getCascadeSelection

          public java.lang.Boolean getCascadeSelection()

      For multiPickerItems with `selectionStyle:"pickTree"`, and `canSelectFolders:true`, should `TreeGrid.cascadeSelection` be enabled on our pickTree?
      Returns:
        Current cascadeSelection value. Default value is true

    - #### setCollapseIconSrc

          public MultiPickerItem setCollapseIconSrc(java.lang.String collapseIconSrc)

      `SCImgURL` for the `expansionIcon` while in expanded mode
      Parameters:
        `collapseIconSrc` - New collapseIconSrc value. Default value is "[SKINIMG]/actions/collapse_left.png"
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getCollapseIconSrc

          public java.lang.String getCollapseIconSrc()

      `SCImgURL` for the `expansionIcon` while in expanded mode
      Returns:
        Current collapseIconSrc value. Default value is "[SKINIMG]/actions/collapse_left.png"

    - #### setDeriveUniqueValues

          public MultiPickerItem setDeriveUniqueValues(java.lang.Boolean deriveUniqueValues)

      If this MultiPickerItem is deriving its options from a dataSource, should it ensure unique field values by `grouping by` the value field for this item? This is not necessary if the target dataSource value field is already unique - for example if this is the primaryKey field for a dataSource.

      Note that for MultiPickerItems with `deriveUniqueValues:true`, any `expandedPickListFields` to be displayed in the `expanded view` will not be able to display meaningful values unless a `summaryFunction` is supplied to produce aggregated values from the grouped data. This may be achieved by specifying summaryFunctions directly on the `optionFilterContext`, or on the `operationBinding` for the `fetch operation`.

      Note : This is an advanced setting

      Parameters:
        `deriveUniqueValues` - New deriveUniqueValues value. Default value is false
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getDeriveUniqueValues

          public java.lang.Boolean getDeriveUniqueValues()

      If this MultiPickerItem is deriving its options from a dataSource, should it ensure unique field values by `grouping by` the value field for this item? This is not necessary if the target dataSource value field is already unique - for example if this is the primaryKey field for a dataSource.

      Note that for MultiPickerItems with `deriveUniqueValues:true`, any `expandedPickListFields` to be displayed in the `expanded view` will not be able to display meaningful values unless a `summaryFunction` is supplied to produce aggregated values from the grouped data. This may be achieved by specifying summaryFunctions directly on the `optionFilterContext`, or on the `operationBinding` for the `fetch operation`.

      Returns:
        Current deriveUniqueValues value. Default value is false

    - #### getDeselectAllButton

          public ToolStripButton getDeselectAllButton()

      Clear All button `com.smartgwt.client.types.AutoChild`

      This component is an AutoChild named "deselectAllButton". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        Current deselectAllButton value. Default value is null

    - #### setDeselectAllButtonTitle

          public MultiPickerItem setDeselectAllButtonTitle(java.lang.String deselectAllButtonTitle)

      Title for the `deselectAllButton`
      Parameters:
        `deselectAllButtonTitle` - New deselectAllButtonTitle value. Default value is "Clear All"
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getDeselectAllButtonTitle

          public java.lang.String getDeselectAllButtonTitle()

      Title for the `deselectAllButton`
      Returns:
        Current deselectAllButtonTitle value. Default value is "Clear All"

    - #### setDeselectAllWhileFiltered_disabledPrompt

          public MultiPickerItem setDeselectAllWhileFiltered_disabledPrompt(java.lang.String deselectAllWhileFiltered_disabledPrompt)

      Disabled prompt for the `deselectAllButton` while filtered if `selectAllWhileFiltered` is set to `"disable"`.
      Parameters:
        `deselectAllWhileFiltered_disabledPrompt` - New deselectAllWhileFiltered_disabledPrompt value. Default value is "Clear All disabled while filtered"
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getDeselectAllWhileFiltered_disabledPrompt

          public java.lang.String getDeselectAllWhileFiltered_disabledPrompt()

      Disabled prompt for the `deselectAllButton` while filtered if `selectAllWhileFiltered` is set to `"disable"`.
      Returns:
        Current deselectAllWhileFiltered_disabledPrompt value. Default value is "Clear All disabled while filtered"

    - #### setDeselectAllWhileFiltered_partialCachePrompt

          public MultiPickerItem setDeselectAllWhileFiltered_partialCachePrompt(java.lang.String deselectAllWhileFiltered_partialCachePrompt)

      Disabled prompt for the `deselectAllButton` while filtered if `selectAllWhileFiltered` is set to `"whenLoaded"` and the PickList does not have a complete data set loaded on the client.
      Parameters:
        `deselectAllWhileFiltered_partialCachePrompt` - New deselectAllWhileFiltered_partialCachePrompt value. Default value is "Unable to Clear All as the full set of options has not been fetched from the server."
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getDeselectAllWhileFiltered_partialCachePrompt

          public java.lang.String getDeselectAllWhileFiltered_partialCachePrompt()

      Disabled prompt for the `deselectAllButton` while filtered if `selectAllWhileFiltered` is set to `"whenLoaded"` and the PickList does not have a complete data set loaded on the client.
      Returns:
        Current deselectAllWhileFiltered_partialCachePrompt value. Default value is "Unable to Clear All as the full set of options has not been fetched from the server."

    - #### setDisplayField

          public MultiPickerItem setDisplayField(java.lang.String displayField)

      If set, this item will display a value from another field to the user instead of showing the underlying data value for the `field name`.

      This property is used in two ways:

      The item will display the displayField value from the `record currently being edited` if `FormItem.useLocalDisplayFieldValue` is true, (or if unset and the conditions outlined in the documentation for that property are met).

      If this field has an `FormItem.optionDataSource`, this property is used by default to identify which value to use as a display value in records from this related dataSource. In this usage the specified displayField must be explicitly defined in the optionDataSource to be used - see `getDisplayFieldName()` for more on this behavior.
      If not using `local display values`, the display value for this item will be derived by performing a fetch against the `option dataSource` to find a record where the `value field` matches this item's value, and use the `displayField` value from that record.
      In addition to this, PickList-based form items that provide a list of possible options such as the `SelectItem` or `ComboBoxItem` will show the `displayField` values to the user by default, allowing them to choose a new data value (see `FormItem.valueField`) from a list of user-friendly display values.

      This essentially allows the specified `optionDataSource` to be used as a server based `valueMap`.

      If `local display values` are being used and `FormItem.storeDisplayValues` is true, selecting a new value will update both the value for this field and the associated display-field value on the record being edited.

      Note: Developers may specify the `FormItem.foreignDisplayField` property in addition to `displayField`. This is useful for cases where the display field name in the local dataSource differs from the display field name in the optionDataSource. See the documentation for `DataSourceField.foreignDisplayField` for more on this.
      If a foreignDisplayField is specified, as with just displayField, if `local display values` are being used and `FormItem.storeDisplayValues` is true, when the user chooses a value the associated display-field value on the record being edited will be updated. In this case it would be set to the foreignDisplayField value from the related record. This means foreignDisplayField is always expected to be set to the equivalent field in the related dataSources.
      Developers looking to display some other arbitrary field(s) from the related dataSource during editing should consider using custom PickList.pickListFields instead of setting a foreignDisplayField.

      Note that if `optionDataSource` is set and no valid display field is specified, `FormItem.getDisplayFieldName()` will return the dataSource title field by default.

      If a displayField is specified for a freeform text based item (such as a `ComboBoxItem`), any user-entered value will be treated as a display value. In this scenario, items will derive the data value for the item from the first record where the displayField value matches the user-entered value. To avoid ambiguity, developers may wish to avoid this usage if display values are not unique.

      Overrides:
        `setDisplayField` in class `FormItem`
      Parameters:
        `displayField` - New displayField value. Default value is null
      Returns:
        `MultiPickerItem` instance, for chaining setter calls
      See Also:
        `FormItem.getDisplayFieldName()`, `FormItem.invalidateDisplayValueCache()`, `DataBinding`

    - #### getDisplayField

          public java.lang.String getDisplayField()

      If set, this item will display a value from another field to the user instead of showing the underlying data value for the `field name`.

      This property is used in two ways:

      The item will display the displayField value from the `record currently being edited` if `FormItem.useLocalDisplayFieldValue` is true, (or if unset and the conditions outlined in the documentation for that property are met).

      If this field has an `FormItem.optionDataSource`, this property is used by default to identify which value to use as a display value in records from this related dataSource. In this usage the specified displayField must be explicitly defined in the optionDataSource to be used - see `getDisplayFieldName()` for more on this behavior.
      If not using `local display values`, the display value for this item will be derived by performing a fetch against the `option dataSource` to find a record where the `value field` matches this item's value, and use the `displayField` value from that record.
      In addition to this, PickList-based form items that provide a list of possible options such as the `SelectItem` or `ComboBoxItem` will show the `displayField` values to the user by default, allowing them to choose a new data value (see `FormItem.valueField`) from a list of user-friendly display values.

      This essentially allows the specified `optionDataSource` to be used as a server based `valueMap`.

      If `local display values` are being used and `FormItem.storeDisplayValues` is true, selecting a new value will update both the value for this field and the associated display-field value on the record being edited.

      Note: Developers may specify the `FormItem.foreignDisplayField` property in addition to `displayField`. This is useful for cases where the display field name in the local dataSource differs from the display field name in the optionDataSource. See the documentation for `DataSourceField.foreignDisplayField` for more on this.
      If a foreignDisplayField is specified, as with just displayField, if `local display values` are being used and `FormItem.storeDisplayValues` is true, when the user chooses a value the associated display-field value on the record being edited will be updated. In this case it would be set to the foreignDisplayField value from the related record. This means foreignDisplayField is always expected to be set to the equivalent field in the related dataSources.
      Developers looking to display some other arbitrary field(s) from the related dataSource during editing should consider using custom PickList.pickListFields instead of setting a foreignDisplayField.

      Note that if `optionDataSource` is set and no valid display field is specified, `FormItem.getDisplayFieldName()` will return the dataSource title field by default.

      If a displayField is specified for a freeform text based item (such as a `ComboBoxItem`), any user-entered value will be treated as a display value. In this scenario, items will derive the data value for the item from the first record where the displayField value matches the user-entered value. To avoid ambiguity, developers may wish to avoid this usage if display values are not unique.

      Overrides:
        `getDisplayField` in class `FormItem`
      Returns:
        Current displayField value. Default value is null
      See Also:
        `FormItem.getDisplayFieldName()`, `FormItem.invalidateDisplayValueCache()`, `DataBinding`

    - #### setExpandedPickListFields

          public MultiPickerItem setExpandedPickListFields(ListGridField... expandedPickListFields)

      If `canExpand` is true, this is the list of fields to display in the PickList or `pickTree` when the picker is expanded
      Parameters:
        `expandedPickListFields` - New expandedPickListFields value. Default value is null
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getExpandedPickListFields

          public ListGridField[] getExpandedPickListFields()

      If `canExpand` is true, this is the list of fields to display in the PickList or `pickTree` when the picker is expanded
      Returns:
        Current expandedPickListFields value. Default value is null

    - #### setExpandIconSrc

          public MultiPickerItem setExpandIconSrc(java.lang.String expandIconSrc)

      `SCImgURL` for the `expansionIcon` while not in expanded mode
      Parameters:
        `expandIconSrc` - New expandIconSrc value. Default value is "[SKINIMG]/actions/expand_right.png"
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getExpandIconSrc

          public java.lang.String getExpandIconSrc()

      `SCImgURL` for the `expansionIcon` while not in expanded mode
      Returns:
        Current expandIconSrc value. Default value is "[SKINIMG]/actions/expand_right.png"

    - #### setExpansionHeight

          public MultiPickerItem setExpansionHeight(java.lang.Integer expansionHeight)

      Height for the `pickerLayout` in expanded mode when `canExpand` is true
      Parameters:
        `expansionHeight` - New expansionHeight value. Default value is 500
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getExpansionHeight

          public java.lang.Integer getExpansionHeight()

      Height for the `pickerLayout` in expanded mode when `canExpand` is true
      Returns:
        Current expansionHeight value. Default value is 500

    - #### getExpansionIcon

          public ToolStripButton getExpansionIcon()

      Automatically generated expand / collapse icon when `canExpand` is true

      This component is an AutoChild named "expansionIcon". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        Current expansionIcon value. Default value is null

    - #### setExpansionWidth

          public MultiPickerItem setExpansionWidth(java.lang.Integer expansionWidth)

      Width for the `pickerLayout` in expanded mode when `canExpand` is true
      Parameters:
        `expansionWidth` - New expansionWidth value. Default value is 500
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getExpansionWidth

          public java.lang.Integer getExpansionWidth()

      Width for the `pickerLayout` in expanded mode when `canExpand` is true
      Returns:
        Current expansionWidth value. Default value is 500

    - #### getFilterForm

          public DynamicForm getFilterForm()

      Dynamic form showing a single text item for filtering the PickList while `SelectionStyle` is "pickList".

      May be hidden by setting `showFilterForm` to false.

      If `canExpand` is true, the filter form will not be displayed in the expanded view, as it would be unclear to the user which of the expanded fields would be filtered by it.

      Instead if `showFilterForm` is true, the pickList will show the `filterEditor` by default, allowing the user to filter by `field`

      Instead of the filterForm, developers may display the standard filterEditor for the pickList in non-expanded view via `pickList autoChild properties`. If you do this the filterForm will not be displayed even if`showFilterForm` is true.

      This component is an AutoChild named "filterForm". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        Current filterForm value. Default value is null

    - #### setFilterHint

          public MultiPickerItem setFilterHint(java.lang.String filterHint)

      `Hint` for the `filterForm` text item.

      This will be shown inside the field via `TextItem.showHintInField`

      Parameters:
        `filterHint` - New filterHint value. Default value is "Filter"
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getFilterHint

          public java.lang.String getFilterHint()

      `Hint` for the `filterForm` text item.

      This will be shown inside the field via `TextItem.showHintInField`

      Returns:
        Current filterHint value. Default value is "Filter"

    - #### getFilterIcon

          public FormItemIcon getFilterIcon()

      Automatically generated right-aligned inline filter indicator icon for the `filterForm` text box.

      This icon may be customized using the standard AutoChild pattern as well as via `filterIconSrc`, `filterIconWidth`, `filterIconHeight`

      This component is an AutoChild named "filterIcon". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        Current filterIcon value. Default value is null

    - #### setFilterIconHeight

          public MultiPickerItem setFilterIconHeight(java.lang.Integer filterIconHeight)

      `height` for the `filterIcon`
      Parameters:
        `filterIconHeight` - New filterIconHeight value. Default value is 16
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getFilterIconHeight

          public java.lang.Integer getFilterIconHeight()

      `height` for the `filterIcon`
      Returns:
        Current filterIconHeight value. Default value is 16

    - #### setFilterIconSrc

          public MultiPickerItem setFilterIconSrc(java.lang.String filterIconSrc)

      `src` for the `filterIcon`
      Parameters:
        `filterIconSrc` - New filterIconSrc value. Default value is "[SKINIMG]actions/view.png"
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getFilterIconSrc

          public java.lang.String getFilterIconSrc()

      `src` for the `filterIcon`
      Returns:
        Current filterIconSrc value. Default value is "[SKINIMG]actions/view.png"

    - #### setFilterIconWidth

          public MultiPickerItem setFilterIconWidth(java.lang.Integer filterIconWidth)

      `width` for the `filterIcon`
      Parameters:
        `filterIconWidth` - New filterIconWidth value. Default value is 16
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getFilterIconWidth

          public java.lang.Integer getFilterIconWidth()

      `width` for the `filterIcon`
      Returns:
        Current filterIconWidth value. Default value is 16

    - #### setFilterPickListOnKeypress

          public MultiPickerItem setFilterPickListOnKeypress(boolean filterPickListOnKeypress)

      Should `filterOnKeypress` be active for the pickList?

      This behavior applies to filter values entered in the `filterForm` as well as the the standard filterEditor for the picklist in `expanded view`.

      Parameters:
        `filterPickListOnKeypress` - New filterPickListOnKeypress value. Default value is true
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getFilterPickListOnKeypress

          public boolean getFilterPickListOnKeypress()

      Should `filterOnKeypress` be active for the pickList?

      This behavior applies to filter values entered in the `filterForm` as well as the the standard filterEditor for the picklist in `expanded view`.

      Returns:
        Current filterPickListOnKeypress value. Default value is true

    - #### setIncludeSelectedParents

          public MultiPickerItem setIncludeSelectedParents(java.lang.Boolean includeSelectedParents)

      For multiPickerItems with `selectionStyle:"pickTree"`, and `canSelectFolders:true`, should selected parent nodes be included in the item's value?

      When `cascading selection` is enabled for a tree, the selected state of parent nodes always reflects the selected state of their children, and it may not be necessary or desirable to explicitly record the parents' selected state in the item's value.

      Some specific use cases where this is the case might include:

      - Creating filter criteria for a target TreeGrid where `TreeGrid.keepParentsOnFilter` is true. In this case filter criteria would not need to include selected parent nodes for the children to be visible in the target tree.
      - Trees where leaves are of a different logical type than their parents. If a tree structure is being used to categorize data, `cascading selection` may be useful to allow the user to easily select all items within a category but application code may not want to include the categories as part of a MultiPickerItem's value

      This property only applies when `cascadeSelection` is true. If cascadeSelection is false, all selected nodes will be present in the items value regardless of their parent/child relationships.

      Parameters:
        `includeSelectedParents` - New includeSelectedParents value. Default value is false
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getIncludeSelectedParents

          public java.lang.Boolean getIncludeSelectedParents()

      For multiPickerItems with `selectionStyle:"pickTree"`, and `canSelectFolders:true`, should selected parent nodes be included in the item's value?

      When `cascading selection` is enabled for a tree, the selected state of parent nodes always reflects the selected state of their children, and it may not be necessary or desirable to explicitly record the parents' selected state in the item's value.

      Some specific use cases where this is the case might include:

      - Creating filter criteria for a target TreeGrid where `TreeGrid.keepParentsOnFilter` is true. In this case filter criteria would not need to include selected parent nodes for the children to be visible in the target tree.
      - Trees where leaves are of a different logical type than their parents. If a tree structure is being used to categorize data, `cascading selection` may be useful to allow the user to easily select all items within a category but application code may not want to include the categories as part of a MultiPickerItem's value

      This property only applies when `cascadeSelection` is true. If cascadeSelection is false, all selected nodes will be present in the items value regardless of their parent/child relationships.

      Returns:
        Current includeSelectedParents value. Default value is false

    - #### setInitialSort

          public MultiPickerItem setInitialSort(SortSpecifier... initialSort)

      `Initial sort specifiers` for this item's list of options. Will be applied to the `pickList`, `pickTree` or `shuttle` depending on the `selectionStyle` of this item.
      Parameters:
        `initialSort` - New initialSort value. Default value is null
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getInitialSort

          public SortSpecifier[] getInitialSort()

      `Initial sort specifiers` for this item's list of options. Will be applied to the `pickList`, `pickTree` or `shuttle` depending on the `selectionStyle` of this item.
      Returns:
        Current initialSort value. Default value is null

    - #### setMultiple

          public MultiPickerItem setMultiple(java.lang.Boolean multiple)

      MultiPickerItems always work with array values
      Overrides:
        `setMultiple` in class `FormItem`
      Parameters:
        `multiple` - New multiple value. Default value is true
      Returns:
        `MultiPickerItem` instance, for chaining setter calls
      See Also:
        `Appearance overview and related methods`

    - #### getMultiple

          public java.lang.Boolean getMultiple()

      MultiPickerItems always work with array values
      Overrides:
        `getMultiple` in class `FormItem`
      Returns:
        Current multiple value. Default value is true
      See Also:
        `Appearance overview and related methods`

    - #### setOptionDataSource

          public MultiPickerItem setOptionDataSource(DataSource optionDataSource)

      If set, this FormItem will map stored values to display values as though a `com.smartgwt.client.types.ValueMap` were specified, by fetching records from the specified `optionDataSource` and extracting the `valueField` and `displayField` in loaded records, to derive one valueMap entry per record loaded from the optionDataSource.

      With the default setting of `fetchMissingValues`, fetches will be initiated against the optionDataSource any time the FormItem has a non-null value and no corresponding display value is available. This includes when the form is first initialized, as well as any subsequent calls to `FormItem.setValue()`, such as may happen when `DynamicForm.editRecord()` is called. Retrieved values are automatically cached by the FormItem.

      Note that if a normal, static `valueMap` is also specified for the field (either directly in the form item or as part of the field definition in the dataSource), it will be preferred to the data derived from the optionDataSource for whatever mappings are present.

      In a databound form, if `FormItem.displayField` is specified for a FormItem and `optionDataSource` is unset, `optionDataSource` will default to the form's current DataSource

      Overrides:
        `setOptionDataSource` in class `FormItem`
      Parameters:
        `optionDataSource` - New optionDataSource value. Default value is null
      Returns:
        `MultiPickerItem` instance, for chaining setter calls
      See Also:
        `FormItem.invalidateDisplayValueCache()`, List - Combo Box Example

    - #### getOptionDataSource

          public DataSource getOptionDataSource()

      If set, this FormItem will map stored values to display values as though a `com.smartgwt.client.types.ValueMap` were specified, by fetching records from the specified `optionDataSource` and extracting the `valueField` and `displayField` in loaded records, to derive one valueMap entry per record loaded from the optionDataSource.

      With the default setting of `fetchMissingValues`, fetches will be initiated against the optionDataSource any time the FormItem has a non-null value and no corresponding display value is available. This includes when the form is first initialized, as well as any subsequent calls to `FormItem.setValue()`, such as may happen when `DynamicForm.editRecord()` is called. Retrieved values are automatically cached by the FormItem.

      Note that if a normal, static `valueMap` is also specified for the field (either directly in the form item or as part of the field definition in the dataSource), it will be preferred to the data derived from the optionDataSource for whatever mappings are present.

      In a databound form, if `FormItem.displayField` is specified for a FormItem and `optionDataSource` is unset, `optionDataSource` will default to the form's current DataSource

      Overrides:
        `getOptionDataSource` in class `FormItem`
      Returns:
        Current optionDataSource value. Default value is null
      See Also:
        `FormItem.invalidateDisplayValueCache()`, List - Combo Box Example

    - #### setOptionFilterContext

          public MultiPickerItem setOptionFilterContext(DSRequest optionFilterContext)

      If this item has a specified `optionDataSource`, and this property is not null, the context is passed to the dataSource as `RPCRequest` properties when performing fetch operations on the dataSource to obtain a data-value to display-value mapping, and when fetching for grid-based pickers.

      This attribute is a direct shortcut for setting fetch-request properties via `item.pickerProperties.dataProperties.requestProperties`.

      Parameters:
        `optionFilterContext` - New optionFilterContext value. Default value is null
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getOptionFilterContext

          public DSRequest getOptionFilterContext()

      If this item has a specified `optionDataSource`, and this property is not null, the context is passed to the dataSource as `RPCRequest` properties when performing fetch operations on the dataSource to obtain a data-value to display-value mapping, and when fetching for grid-based pickers.

      This attribute is a direct shortcut for setting fetch-request properties via `item.pickerProperties.dataProperties.requestProperties`.

      Overrides:
        `getOptionFilterContext` in class `FormItem`
      Returns:
        Current optionFilterContext value. Default value is null

    - #### setOptionOperationId

          public MultiPickerItem setOptionOperationId(java.lang.String optionOperationId)

      If this item has a specified `optionDataSource`, this attribute may be set to specify an explicit `DSRequest.operationId` when performing a fetch against the option dataSource to pick up display value mapping.
      Overrides:
        `setOptionOperationId` in class `FormItem`
      Parameters:
        `optionOperationId` - New optionOperationId value. Default value is null
      Returns:
        `MultiPickerItem` instance, for chaining setter calls
      See Also:
        `DataBinding`

    - #### getOptionOperationId

          public java.lang.String getOptionOperationId()

      If this item has a specified `optionDataSource`, this attribute may be set to specify an explicit `DSRequest.operationId` when performing a fetch against the option dataSource to pick up display value mapping.
      Overrides:
        `getOptionOperationId` in class `FormItem`
      Returns:
        Current optionOperationId value. Default value is null
      See Also:
        `DataBinding`

    - #### getPickerLayout

          public VLayout getPickerLayout()

      Main dropdown picker layout containing the PickList or `Shuttle`.

      This component is an AutoChild named "pickerLayout". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        Current pickerLayout value. Default value is null

    - #### getPickerToolbar

          public HLayout getPickerToolbar()

      Toolbar autoChild containing the `selectAllButton`, `deselectAllButton` and `expansionIcon`.

      Shown within the `pickerLayout` if `SelectionStyle` is `"pickList"`

      This component is an AutoChild named "pickerToolbar". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        Current pickerToolbar value. Default value is null

    - #### getPickList

          public ListGrid getPickList()

      The MultiPickerItem `pickList` is a filterable ListGrid `com.smartgwt.client.types.AutoChild` for viewing and selecting the list of available options when `SelectionStyle` is `"pickList"`.

      It is rendered inside the `pickerLayout` along with the optional `selectionList`

      This component is an AutoChild named "pickList". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        Current pickList value. Default value is null

    - #### setPickListFetchDelay

          public MultiPickerItem setPickListFetchDelay(java.lang.Integer pickListFetchDelay)

      If `filterPickListOnKeypress` is true, how long to wait in ms after the last keystroke from a user before filtering the pickList.

      If not explicitly specified, the default fetchDelay will be derived from `the pickList fetchDelay`.

      Parameters:
        `pickListFetchDelay` - New pickListFetchDelay value. Default value is null
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getPickListFetchDelay

          public java.lang.Integer getPickListFetchDelay()

      If `filterPickListOnKeypress` is true, how long to wait in ms after the last keystroke from a user before filtering the pickList.

      If not explicitly specified, the default fetchDelay will be derived from `the pickList fetchDelay`.

      Returns:
        Current pickListFetchDelay value. Default value is null

    - #### setPickListHeight

          public MultiPickerItem setPickListHeight(java.lang.Integer pickListHeight)

      Default height for the `pickerLayout` when `SelectionStyle` is `"pickList"`.
      Parameters:
        `pickListHeight` - New pickListHeight value. Default value is 400
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getPickListHeight

          public java.lang.Integer getPickListHeight()

      Default height for the `pickerLayout` when `SelectionStyle` is `"pickList"`.
      Returns:
        Current pickListHeight value. Default value is 400

    - #### setPickListWidth

          public MultiPickerItem setPickListWidth(java.lang.Integer pickListWidth)

      Default width for the `pickerLayout` when `SelectionStyle` is `"pickList"`.
      Parameters:
        `pickListWidth` - New pickListWidth value. Default value is 250
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getPickListWidth

          public java.lang.Integer getPickListWidth()

      Default width for the `pickerLayout` when `SelectionStyle` is `"pickList"`.
      Returns:
        Current pickListWidth value. Default value is 250

    - #### getPickTree

          public TreeGrid getPickTree()

      The MultiPickerItem `pickTree` is a TreeGrid `com.smartgwt.client.types.AutoChild` for viewing and selecting a tree of available options when `SelectionStyle` is `"pickTree"`.

      It is rendered inside the `pickerLayout` along with the optional `selectionList`

      This component is an AutoChild named "pickTree". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        Current pickTree value. Default value is null

    - #### getSelectAllButton

          public ToolStripButton getSelectAllButton()

      Select All button `com.smartgwt.client.types.AutoChild`

      This component is an AutoChild named "selectAllButton". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        Current selectAllButton value. Default value is null

    - #### setSelectAllButtonTitle

          public MultiPickerItem setSelectAllButtonTitle(java.lang.String selectAllButtonTitle)

      Title for the `selectAllButton`
      Parameters:
        `selectAllButtonTitle` - New selectAllButtonTitle value. Default value is "Select All"
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getSelectAllButtonTitle

          public java.lang.String getSelectAllButtonTitle()

      Title for the `selectAllButton`
      Returns:
        Current selectAllButtonTitle value. Default value is "Select All"

    - #### setSelectAllWhileFiltered

          public MultiPickerItem setSelectAllWhileFiltered(FilteredSelectAllAction selectAllWhileFiltered)

      If the user has filtered the set of options available in this item, how should the "Select All" and "Clear All" buttons work?

      Note : This is an advanced setting

      Parameters:
        `selectAllWhileFiltered` - New selectAllWhileFiltered value. Default value is "whenLoaded"
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getSelectAllWhileFiltered

          public FilteredSelectAllAction getSelectAllWhileFiltered()

      If the user has filtered the set of options available in this item, how should the "Select All" and "Clear All" buttons work?
      Returns:
        Current selectAllWhileFiltered value. Default value is "whenLoaded"

    - #### setSelectAllWhileFiltered_disabledPrompt

          public MultiPickerItem setSelectAllWhileFiltered_disabledPrompt(java.lang.String selectAllWhileFiltered_disabledPrompt)

      Disabled prompt for the `selectAllButton` while filtered if `selectAllWhileFiltered` is set to `"disable"`.
      Parameters:
        `selectAllWhileFiltered_disabledPrompt` - New selectAllWhileFiltered_disabledPrompt value. Default value is "Select All disabled while filtered"
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getSelectAllWhileFiltered_disabledPrompt

          public java.lang.String getSelectAllWhileFiltered_disabledPrompt()

      Disabled prompt for the `selectAllButton` while filtered if `selectAllWhileFiltered` is set to `"disable"`.
      Returns:
        Current selectAllWhileFiltered_disabledPrompt value. Default value is "Select All disabled while filtered"

    - #### setSelectAllWhileFiltered_partialCachePrompt

          public MultiPickerItem setSelectAllWhileFiltered_partialCachePrompt(java.lang.String selectAllWhileFiltered_partialCachePrompt)

      Disabled prompt for the `selectAllButton` while filtered if `selectAllWhileFiltered` is set to `"whenLoaded"` and the PickList does not have a complete data set loaded on the client.
      Parameters:
        `selectAllWhileFiltered_partialCachePrompt` - New selectAllWhileFiltered_partialCachePrompt value. Default value is "Unable to Select All as the full set of options has not been fetched from the server."
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getSelectAllWhileFiltered_partialCachePrompt

          public java.lang.String getSelectAllWhileFiltered_partialCachePrompt()

      Disabled prompt for the `selectAllButton` while filtered if `selectAllWhileFiltered` is set to `"whenLoaded"` and the PickList does not have a complete data set loaded on the client.
      Returns:
        Current selectAllWhileFiltered_partialCachePrompt value. Default value is "Unable to Select All as the full set of options has not been fetched from the server."

    - #### setSelectedSelectionListTitle

          public MultiPickerItem setSelectedSelectionListTitle(java.lang.String selectedSelectionListTitle)

      Default title for the `selectionList`.
      Parameters:
        `selectedSelectionListTitle` - New selectedSelectionListTitle value. Default value is "Included Items"
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getSelectedSelectionListTitle

          public java.lang.String getSelectedSelectionListTitle()

      Default title for the `selectionList`.
      Returns:
        Current selectedSelectionListTitle value. Default value is "Included Items"

    - #### getSelectionList

          public ListGrid getSelectionList()

      Automatically generated ListGrid displaying the current selection for `selectionStyle:"pickList"`.

      Has `canRemoveRecords` enabled as an alternative UI for deselecting records to unchecking the item in the PickList.

      This component is an AutoChild named "selectionList". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        Current selectionList value. Default value is null

    - #### getSelectionListLabel

          public Label getSelectionListLabel()

      AutoChild to show the `selectedSelectionListTitle`

      This component is an AutoChild named "selectionListLabel". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        Current selectionListLabel value. Default value is null

    - #### setSelectionStyle

          public MultiPickerItem setSelectionStyle(MultiPickerSelectionStyle selectionStyle)

      Should the MultiPickerItem use a `Shuttle` style interface to indicate the currently selected / unselected values?

      Note : This is an advanced setting

      Parameters:
        `selectionStyle` - New selectionStyle value. Default value is "pickList"
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getSelectionStyle

          public MultiPickerSelectionStyle getSelectionStyle()

      Should the MultiPickerItem use a `Shuttle` style interface to indicate the currently selected / unselected values?
      Returns:
        Current selectionStyle value. Default value is "pickList"

    - #### setShowFilterForm

          public MultiPickerItem setShowFilterForm(boolean showFilterForm)

      Should the `filterForm` be shown?

      This only applies to selectionStyle "pickList".

      Parameters:
        `showFilterForm` - New showFilterForm value. Default value is true
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getShowFilterForm

          public boolean getShowFilterForm()

      Should the `filterForm` be shown?

      This only applies to selectionStyle "pickList".

      Returns:
        Current showFilterForm value. Default value is true

    - #### setShowSelectionLabel

          public MultiPickerItem setShowSelectionLabel(java.lang.Boolean showSelectionLabel)

      Should we show a `selectionListLabel` for the `selectedSelectionListTitle` above the `selectionList`.

      Will never be shown if `showSelectionList` is false or if selectionStyle is not "pickList".

      Parameters:
        `showSelectionLabel` - New showSelectionLabel value. Default value is true
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getShowSelectionLabel

          public java.lang.Boolean getShowSelectionLabel()

      Should we show a `selectionListLabel` for the `selectedSelectionListTitle` above the `selectionList`.

      Will never be shown if `showSelectionList` is false or if selectionStyle is not "pickList".

      Returns:
        Current showSelectionLabel value. Default value is true

    - #### setShowSelectionList

          public MultiPickerItem setShowSelectionList(java.lang.Boolean showSelectionList)

      Should a `list of selected items` be displayed below the PickList if `SelectionStyle` is `"pickList"`?
      Parameters:
        `showSelectionList` - New showSelectionList value. Default value is true
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getShowSelectionList

          public java.lang.Boolean getShowSelectionList()

      Should a `list of selected items` be displayed below the PickList if `SelectionStyle` is `"pickList"`?
      Returns:
        Current showSelectionList value. Default value is true

    - #### getShuttle

          public Shuttle getShuttle()

      AutoChild `Shuttle` shown in the `pickerLayout` when `SelectionStyle` is set to `"shuttle"`.

      This component is an AutoChild named "shuttle". For an overview of how to use and configure AutoChildren, see `Using AutoChildren`.

      Returns:
        Current shuttle value. Default value is null

    - #### setShuttleHeight

          public MultiPickerItem setShuttleHeight(java.lang.Integer shuttleHeight)

      Height for the `pickerLayout` when `SelectionStyle` is `"shuttle"`.
      Parameters:
        `shuttleHeight` - New shuttleHeight value. Default value is 400
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getShuttleHeight

          public java.lang.Integer getShuttleHeight()

      Height for the `pickerLayout` when `SelectionStyle` is `"shuttle"`.
      Returns:
        Current shuttleHeight value. Default value is 400

    - #### setShuttleWidth

          public MultiPickerItem setShuttleWidth(java.lang.Integer shuttleWidth)

      Width for the `pickerLayout` when `SelectionStyle` is `"shuttle"`.
      Parameters:
        `shuttleWidth` - New shuttleWidth value. Default value is 500
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getShuttleWidth

          public java.lang.Integer getShuttleWidth()

      Width for the `pickerLayout` when `SelectionStyle` is `"shuttle"`.
      Returns:
        Current shuttleWidth value. Default value is 500

    - #### setSortDirection

          public MultiPickerItem setSortDirection(SortDirection sortDirection)

      `Sort direction` for this item's list of options. Will be applied to the +link{MultiPicke?rItem.pickList}, `pickTree` or `shuttle` depending on the `selectionStyle` of this item.
      Parameters:
        `sortDirection` - New sortDirection value. Default value is null
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getSortDirection

          public SortDirection getSortDirection()

      `Sort direction` for this item's list of options. Will be applied to the +link{MultiPicke?rItem.pickList}, `pickTree` or `shuttle` depending on the `selectionStyle` of this item.
      Returns:
        Current sortDirection value. Default value is null

    - #### setSortField

          public MultiPickerItem setSortField(java.lang.String sortField)

      `Sort field` for this item's list of options. Will be applied to the `pickList`, `pickTree` or `shuttle` depending on the `selectionStyle` of this item.
      Parameters:
        `sortField` - New sortField value. Default value is null
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getSortField

          public java.lang.String getSortField()

      `Sort field` for this item's list of options. Will be applied to the `pickList`, `pickTree` or `shuttle` depending on the `selectionStyle` of this item.
      Returns:
        Current sortField value. Default value is null

    - #### setSortField

          public MultiPickerItem setSortField(java.lang.String... sortField)

      `Sort field` for this item's list of options. Will be applied to the `pickList`, `pickTree` or `shuttle` depending on the `selectionStyle` of this item.
      Parameters:
        `sortField` - New sortField value. Default value is null
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getSortFieldAsStringArray

          public java.lang.String[] getSortFieldAsStringArray()

      `Sort field` for this item's list of options. Will be applied to the `pickList`, `pickTree` or `shuttle` depending on the `selectionStyle` of this item.
      Returns:
        Current sortField value. Default value is null

    - #### setSortField

          public MultiPickerItem setSortField(java.lang.Integer sortField)

      `Sort field` for this item's list of options. Will be applied to the `pickList`, `pickTree` or `shuttle` depending on the `selectionStyle` of this item.
      Parameters:
        `sortField` - New sortField value. Default value is null
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getSortFieldAsInt

          public java.lang.Integer getSortFieldAsInt()

      `Sort field` for this item's list of options. Will be applied to the `pickList`, `pickTree` or `shuttle` depending on the `selectionStyle` of this item.
      Returns:
        Current sortField value. Default value is null

    - #### setTextMatchStyle

          public MultiPickerItem setTextMatchStyle(TextMatchStyle textMatchStyle)

      textMatchStyle to apply to `option criteria` for this item
      Parameters:
        `textMatchStyle` - New textMatchStyle value. Default value is "substring"
      Returns:
        `MultiPickerItem` instance, for chaining setter calls

    - #### getTextMatchStyle

          public TextMatchStyle getTextMatchStyle()

      textMatchStyle to apply to `option criteria` for this item
      Returns:
        Current textMatchStyle value. Default value is "substring"

    - #### setValueField

          public MultiPickerItem setValueField(java.lang.String valueField)

      If this form item maps data values to display values by retrieving the `FormItem.displayField` values from an `optionDataSource`, this property denotes the the field to use as the underlying data value in records from the optionDataSource.
      If not explicitly supplied, the valueField name will be derived as described in `FormItem.getValueFieldName()`.
      Overrides:
        `setValueField` in class `FormItem`
      Parameters:
        `valueField` - New valueField value. Default value is null
      Returns:
        `MultiPickerItem` instance, for chaining setter calls
      See Also:
        `DataBinding`

    - #### getValueField

          public java.lang.String getValueField()

      If this form item maps data values to display values by retrieving the `FormItem.displayField` values from an `optionDataSource`, this property denotes the the field to use as the underlying data value in records from the optionDataSource.
      If not explicitly supplied, the valueField name will be derived as described in `FormItem.getValueFieldName()`.
      Overrides:
        `getValueField` in class `FormItem`
      Returns:
        Getter method to retrieve the `FormItem.valueField` for this item. For items with a specified `FormItem.optionDataSource`, this determines which field in that dataSource corresponds to the value for this item.

        If unset, if a `foreignKey relationship` exists between this field and the optionDataSource, this will be used, otherwise default behavior will return the `FormItem.name` of this field. Default value is null

      See Also:
        `DataBinding`

    - #### getValueFieldName

          public java.lang.String getValueFieldName()

      Getter method to retrieve the `FormItem.valueField` for this item. For items with a specified `FormItem.optionDataSource`, this determines which field in that dataSource corresponds to the value for this item.

      If unset, if a `foreignKey relationship` exists between this field and the optionDataSource, this will be used, otherwise default behavior will return the `FormItem.name` of this field.

      Overrides:
        `getValueFieldName` in class `FormItem`
      Returns:
        fieldName to use a "value field" in records from this items `FormItem.optionDataSource`

    - #### setDefaultProperties

          public static void setDefaultProperties(MultiPickerItem multiPickerItemProperties)

      Class level method to set the default properties of this class. If set, then all existing and subsequently created instances of this class will automatically have default properties corresponding to the properties of the class instance passed to this function. This is a powerful feature that eliminates the need for users to create a separate hierarchy of subclasses that only alter the default properties of this class. Can also be used for skinning / styling purposes.

      Note: This method is intended for setting default attributes only and will affect all instances of the underlying class (including those automatically generated in JavaScript). This method should not be used to apply standard EventHandlers or override methods for a class - use a custom subclass instead. Calling this method after instances have been created can result in undefined behavior, since it bypasses any setters and a class instance may have already examined a particular property and not be expecting any changes through this route.

      Parameters:
        `multiPickerItemProperties` - properties that should be used as new defaults when instances of this class are created
      See Also:
        `SGWTProperties`

    - #### setOptionCriteria

          public void setOptionCriteria(Criteria optionCriteria)

      If this MultiPickerItem is deriving its options from a dataSource, this property allows developers to specify criteria for the fetch.

      Note : This is an advanced setting

      Overrides:
        `setOptionCriteria` in class `FormItem`
      Parameters:
        `optionCriteria` - New optionCriteria value. Default value is null

    - #### getOptionCriteria

          public Criteria getOptionCriteria()

      If this MultiPickerItem is deriving its options from a dataSource, this property allows developers to specify criteria for the fetch.
      Overrides:
        `getOptionCriteria` in class `FormItem`
      Returns:
        Return the derived `optionCriteria` for this item. Default value is null