com.smartgwt.client.widgets.form.fields

## Class MultiFileItem

- 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.CanvasItem
            - - com.smartgwt.client.widgets.form.fields.MultiFileItem

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

      public class MultiFileItem
      extends CanvasItem

  The MultiFileItem provides an interface for a user to save one or more files that are related to a DataSource record, where each file is represented by a record in a related DataSource.

  Use MultiFileItem when a record may have one or more files associated with it (such as attachments to an email message) where no information about the files needs to be stored other than the files themselves. If you have several fields associated with each file (such as an uploaded document with a version, comments and processes associated with it), consider instead an ordinary DataSource with on field of type "binary", and using the `FileItem` for upload.

  See the `Uploading Files` overview for more information on upload.

  DataSource Setup

  In a relationship sometimes called a "master-detail" relationship, the MultiFileItem stores files in a "detail" DataSource which are related to a "master" DataSource record being edited by the form which contains the MultiFileItem.

  To use a MultiFileItem:

  - declare a "detail" DataSource to store the related files. At a minimum, this DataSource must have:
    - a `primaryKey` field
    - a field declaring a `foreignKey` relationship to the primaryKey of the "master" DataSource
    - a field of type "binary"
  - `bind` a DynamicForm to the "master" DataSource
  - in the DynamicForm bound to the "master" DataSource, declare a field with `editorType`:"MultiFileItem" and a `dataSource` property set to the ID of the "detail" DataSource
  An example "detail" DataSource for storing files is shown below. This "detail" DataSource assumes a "master" DataSource with `DataSource.ID` "masterRecord" and with a primaryKey field "id".

          <DataSource ID="uploadedFiles" serverType="sql">
            <fields>
               <field name="fileId" type="sequence" primaryKey="true" hidden="true"/>
               <field name="masterRecordId" type="number" foreignKey="masterRecord.id" hidden="true"/>
               <field name="file" type="binary" title="File"/>
            </fields>
          </DataSource>

  Aside from a single "binary" field, the "detail" DataSource should generally have only hidden fields, as shown above. Additional internal fields (such as a "lastUpdated" field) may be added, but will not be editable via MultiFileItem.

  Display

  The MultiFileItem appears as a list of files related to the current record. An optional button, the `removeButton` allows removing files. A second optional button, the `editButton`, launches a picker for uploading further files.

  Saving

  In all cases, uploading a new file is an "add" DSRequest against the `dataSource`.

  The MultiFileItem has two modes, according to whether the "master" record is being newly created via an "add" operation or whether the master record is pre-existing ("update" operation).

  If the master record is pre-existing, each file added by the user is uploaded as soon as the user exits the picker launched from the edit button, and the list of files shown in the main form reflects the actual list of stored files.

  If the master record is being newly created, files are not actually uploaded until after the master record is confirmed saved, and the list of fields shown in the main form reflects files which will be uploaded after the master record is saved.

  In both cases, if there are multiple files to upload, they are uploaded one at a time, as a series of separate "add" DSRequests against the `dataSource`.

  Also in both cases, deletion of any file is immediate. In the case of a pre-existing master record, all files shown actually exist as DataSource records, and deletion is performed as a "remove" DSRequest against the `dataSource`.

  See Also:
    `Uploading Files`

- - ### 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
    `MultiFileItem()`
    `MultiFileItem(com.google.gwt.core.client.JavaScriptObject jsObj)`
    `MultiFileItem(java.lang.String name)`
    `MultiFileItem(java.lang.String name, java.lang.String title)`

  - ### 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.String` | `getEditButtonPrompt()` The `prompt` of the `edit button`.
    `java.lang.String` | `getEmptyMessage()` Empty message to display when there are no files listed.
    `static MultiFileItem` | `getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj)`
    `java.lang.String` | `getPickerAddAnotherFileButtonTitle()` The contents of the "Add another" file button in the picker launched by the `edit button`.
    `java.lang.String` | `getPickerCancelButtonTitle()` The title of the cancel button in the picker lauched by the `edit button`.
    `java.lang.String` | `getPickerConstructor()` MultiFileItems use a `MultiFilePicker` instance as their picker.
    `java.lang.String` | `getPickerUploadButtonInitialTitle()` The initial title of the upload button in the picker lauched by the `edit button` that is used before the form is saved.
    `java.lang.String` | `getPickerUploadButtonTitle()` The title of the upload button in the picker lauched by the `edit button` that is used after the form is saved.
    `java.lang.String` | `getPickerUploadProgressLabel()` Specifies the label of the progress meter in the picker lauched by the `edit button`.
    `java.lang.String` | `getRemoveButtonPrompt()` The `prompt` of the `remove button`.
    `static void` | `setDefaultProperties(MultiFileItem multiFileItemProperties)` Class level method to set the default properties of this class.
    `MultiFileItem` | `setEditButtonPrompt(java.lang.String editButtonPrompt)` The `prompt` of the `edit button`.
    `MultiFileItem` | `setEmptyMessage(java.lang.String emptyMessage)` Empty message to display when there are no files listed.
    `MultiFileItem` | `setPickerAddAnotherFileButtonTitle(java.lang.String pickerAddAnotherFileButtonTitle)` The contents of the "Add another" file button in the picker launched by the `edit button`.
    `MultiFileItem` | `setPickerCancelButtonTitle(java.lang.String pickerCancelButtonTitle)` The title of the cancel button in the picker lauched by the `edit button`.
    `MultiFileItem` | `setPickerConstructor(java.lang.String pickerConstructor)` MultiFileItems use a `MultiFilePicker` instance as their picker.
    `MultiFileItem` | `setPickerUploadButtonInitialTitle(java.lang.String pickerUploadButtonInitialTitle)` The initial title of the upload button in the picker lauched by the `edit button` that is used before the form is saved.
    `MultiFileItem` | `setPickerUploadButtonTitle(java.lang.String pickerUploadButtonTitle)` The title of the upload button in the picker lauched by the `edit button` that is used after the form is saved.
    `MultiFileItem` | `setPickerUploadProgressLabel(java.lang.String pickerUploadProgressLabel)` Specifies the label of the progress meter in the picker lauched by the `edit button`.
    `MultiFileItem` | `setRemoveButtonPrompt(java.lang.String removeButtonPrompt)` The `prompt` of the `remove button`.

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

      `addCanEditChangedHandler, addReadOnlyDisplayChangedHandler, addShowValueHandler, createCanvas, getApplyPromptToCanvas, getAutoDestroy, getCanvas, getEditCriteriaInInnerForm, getHeight, getHeightAsString, getMaxHeight, getMinHeight, getMultiple, getOverflow, getPrompt, getShouldSaveValue, hasAdvancedCriteria, isFocused, setApplyPromptToCanvas, setAutoDestroy, setCanEditCriterionPredicate, setCanvas, setCriterionGetter, setCriterionSetter, setDefaultProperties, setEditCriteriaInInnerForm, setHeight, setHeight, setMaxHeight, setMinHeight, setMultiple, setOverflow, setPrompt, setShouldDisableCanvasCustomizer, setShouldSaveValue, setupCanvasConstructor, storeValue, storeValue, storeValue, updateCanvasTabPosition`

    - ### 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, getApplyAlignToText, getApplyHeightToTextBox, getAriaRole, getAttribute, getAttributeAsBoolean, getAttributeAsBoolean, getAttributeAsDate, getAttributeAsDouble, getAttributeAsFloat, getAttributeAsInt, getAttributeAsJavaScriptObject, getAttributeAsObject, getAttributeAsString, getAutoComplete, getAutoCompleteKeywords, getBrowserInputType, getBrowserSpellCheck, getCanEdit, getCanEditOpaqueValues, getCanFocus, getCanHover, getCanSelectText, getCanTabToIcons, getCanvasAutoChild, getCellHeight, getCellStyle, getChangeOnKeypress, getClassName, getClipStaticValue, getClipTitle, getConfig, getContainerWidget, getControlStyle, getCriteriaField, getCriterion, getCriterion, getCursorPosition, getCustomState, getDataPath, getDateFormatter, getDecimalPad, getDecimalPrecision, getDefaultIconSrc, getDefaultOperator, getDefaultValue, getDestroyed, getDisabled, getDisabledHover, getDisableIconsOnReadOnly, getDisplayField, getDisplayFieldName, getDisplayValue, getDisplayValue, getEditorTypeConfig, getEditPendingCSSText, getEditProxyConstructor, getEmptyDisplayValue, getEmptyValueIcon, getEndRow, getErrorIconHeight, getErrorIconProperties, getErrorIconSrc, getErrorIconWidth, getErrorMessageWidth, getErrors, getEscapeHTML, getExportFormat, getExtraControlTableCSS, getExtraTextBoxCSS, getFetchMissingValues, getFieldName, getFilterLocally, getForeignDisplayField, getForm, getFormat, getFormItemAutoChild, getFormula, getFullDataPath, getGlobalTabIndex, getGridColNum, getGridRowNum, 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, getOptionCriteria, getOptionDataSource, getOptionDataSourceAsString, getOptionFilterContext, getOptionOperationId, getOptionTextMatchStyle, getOriginalValueMessage, getPageLeft, getPageRect, getPageTop, getPaletteDefaults, getPicker, getPickerIcon, getPickerIcon, getPickerIconHeight, getPickerIconName, getPickerIconPrompt, getPickerIconProperties, getPickerIconSrc, getPickerIconStyle, getPickerIconTabPosition, getPickerIconWidth, getPixelHeight, getPixelWidth, getPrintReadOnlyTextBoxStyle, getPrintTextBoxStyle, getPrintTitleStyle, getReadOnlyCanSelectText, getReadOnlyControlStyle, getReadOnlyDisplay, getReadOnlyHover, getReadOnlyTextBoxStyle, getReadOnlyWhen, getRect, getRedrawOnChange, getRejectInvalidValueOnChange, getRequired, getRequiredMessage, getRequiredRightTitlePrefix, getRequiredRightTitleSuffix, getRequiredTitlePrefix, getRequiredTitleSuffix, getRequiredWhen, getRightTitlePrefix, getRightTitleSuffix, getRowSpan, getSaveOnEnter, getScClassName, getSelectedRecord, getSelectOnClick, getSelectOnFocus, 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, getTextBoxStyle, getTextFormula, getTimeFormatter, getTitle, getTitleAlign, getTitleColSpan, getTitleOrientation, getTitlePrefix, getTitleStyle, getTitleSuffix, getTitleVAlign, getTooltip, getTop, getType, getUpdateControlOnOver, getUpdatePickerIconOnOver, getUpdateTextBoxOnOver, getUseAdvancedCriteria, getUseDisabledHintStyleForReadOnly, getUseLocalDisplayFieldValue, getValidateOnChange, getValidateOnExit, getValidOperators, getVAlign, getValue, getValueAsFloat, getValueAsInteger, getValueAsLong, getValueAsRecordList, getValueDeselectedCSSText, getValueField, getValueFieldName, getValueIconHeight, getValueIconLeftPadding, getValueIconRightPadding, getValueIconSize, getValueIconWidth, getValueMap, getValueMapAsArray, getVisible, getVisibleHeight, getVisibleTitleWidth, getVisibleWhen, getVisibleWidth, getWarnOnEditorTypeConversion, getWarnOnEditorTypeConversionDefault, getWidth, getWidthAsString, getWrapHintText, getWrapStaticValue, getWrapTitle, handleWarnOnEditorTypeConversion, hasErrors, hide, hideIcon, invalidateDisplayValueCache, isAssignableFrom, isConfigOnly, isCreated, isCutEvent, isDisabled, isDrawn, isInGrid, isPasteEvent, isVisible, linkToInstanceUponCreate, mapDisplayToValue, mapValueToDisplay, mapValueToDisplay, mapValueToDisplay, redraw, redraw, removeIcon, selectedRecordChanged, setAccessKey, setAlign, setAllowExpressions, setAlwaysFetchMissingValues, setAlwaysShowControlBox, setApplyAlignToText, setApplyHeightToTextBox, 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, setCanEditOpaqueValues, setCanFocus, setCanHover, setCanSelectText, setCanTabToIcons, setCellHeight, setCellStyle, setChangeOnKeypress, setClipStaticValue, setClipTitle, setColSpan, setColSpan, setConfigOnly, setControlStyle, setCriteriaField, setCriterion, setCustomStateGetter, setDataPath, setDateFormatter, setDecimalPad, setDecimalPrecision, setDefaultIconSrc, setDefaultOperator, setDefaultProperties, setDefaultValue, setDefaultValue, setDefaultValue, setDefaultValue, setDefaultValue, setDefaultValue, setDefaultValue, setDisabled, setDisabledHover, setDisableIconsOnReadOnly, setDisplayField, setDisplayFormat, setDisplayFormat, setEditorProperties, setEditorType, setEditorType, setEditorType, setEditorValueFormatter, setEditorValueParser, setEditPendingCSSText, setEditProxyConstructor, setEmptyDisplayValue, setEmptyValueIcon, setEndRow, setErrorFormatter, setErrorIconHeight, setErrorIconProperties, setErrorIconSrc, setErrorIconWidth, setErrorMessageWidth, setErrorOrientation, setErrors, setErrors, setEscapeHTML, setExportFormat, setExtraControlTableCSS, setExtraTextBoxCSS, setFetchMissingValues, setFilterLocally, setForeignDisplayField, setFormat, setFormula, setGlobalTabIndex, 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, setOptionCriteria, setOptionDataSource, setOptionDataSource, setOptionFilterContext, setOptionOperationId, setOptionTextMatchStyle, setOriginalValueMessage, setPickerIconHeight, setPickerIconName, setPickerIconPrompt, setPickerIconProperties, setPickerIconSrc, setPickerIconStyle, setPickerIconWidth, setPrintReadOnlyTextBoxStyle, setPrintTextBoxStyle, setPrintTitleStyle, setProperty, setProperty, setProperty, setProperty, setProperty, setReadOnlyCanSelectText, setReadOnlyControlStyle, setReadOnlyDisplay, setReadOnlyHover, setReadOnlyTextBoxStyle, setReadOnlyWhen, setRedrawOnChange, setRejectInvalidValueOnChange, setRequired, setRequiredMessage, setRequiredRightTitlePrefix, setRequiredRightTitleSuffix, setRequiredTitlePrefix, setRequiredTitleSuffix, setRequiredWhen, setRightTitlePrefix, setRightTitleSuffix, setRowSpan, setSaveOnEnter, setScClassName, setSelectOnClick, setSelectOnFocus, 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, setTextBoxStyle, setTextFormula, setTimeFormatter, setTitle, setTitleAlign, setTitleColSpan, setTitleHoverFormatter, setTitleOrientation, setTitlePrefix, setTitleStyle, setTitleSuffix, setTitleVAlign, setTooltip, setTop, setType, setUpdateControlOnOver, setUpdatePickerIconOnOver, setUpdateTextBoxOnOver, setUseAdvancedCriteria, setUseDisabledHintStyleForReadOnly, setUseLocalDisplayFieldValue, setUseObjectFactoryForTypeFallback, setValidateOnChange, setValidateOnExit, setValidators, setValidOperators, setVAlign, setValue, setValue, setValue, setValue, setValue, setValue, setValueDeselectedCSSText, setValueField, 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, updateState, validate, valueClipped`

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

      `getCanExport, getExportTitle, getPrimaryKey, getSortByField, setCanExport, setExportTitle, setPrimaryKey, 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

    - #### MultiFileItem

          public MultiFileItem()

    - #### MultiFileItem

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

    - #### MultiFileItem

          public MultiFileItem(java.lang.String name)

    - #### MultiFileItem

          public MultiFileItem(java.lang.String name,
                               java.lang.String title)

  - ### Method Detail

    - #### getOrCreateRef

          public static MultiFileItem 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)

    - #### setEditButtonPrompt

          public MultiFileItem setEditButtonPrompt(java.lang.String editButtonPrompt)

      The `prompt` of the `edit button`.
      Parameters:
        `editButtonPrompt` - New editButtonPrompt value. Default value is "Add files"
      Returns:
        `MultiFileItem` instance, for chaining setter calls

    - #### getEditButtonPrompt

          public java.lang.String getEditButtonPrompt()

      The `prompt` of the `edit button`.
      Returns:
        Current editButtonPrompt value. Default value is "Add files"

    - #### setEmptyMessage

          public MultiFileItem setEmptyMessage(java.lang.String emptyMessage)

      Empty message to display when there are no files listed.
      Parameters:
        `emptyMessage` - New emptyMessage value. Default value is "Click icon to add..."
      Returns:
        `MultiFileItem` instance, for chaining setter calls

    - #### getEmptyMessage

          public java.lang.String getEmptyMessage()

      Empty message to display when there are no files listed.
      Returns:
        Current emptyMessage value. Default value is "Click icon to add..."

    - #### setPickerAddAnotherFileButtonTitle

          public MultiFileItem setPickerAddAnotherFileButtonTitle(java.lang.String pickerAddAnotherFileButtonTitle)

      The contents of the "Add another" file button in the picker launched by the `edit button`.
      Parameters:
        `pickerAddAnotherFileButtonTitle` - New pickerAddAnotherFileButtonTitle value. Default value is "<u>Add&nbsp;another</u>"
      Returns:
        `MultiFileItem` instance, for chaining setter calls
      See Also:
        `HTMLString`

    - #### getPickerAddAnotherFileButtonTitle

          public java.lang.String getPickerAddAnotherFileButtonTitle()

      The contents of the "Add another" file button in the picker launched by the `edit button`.
      Returns:
        Current pickerAddAnotherFileButtonTitle value. Default value is "<u>Add&nbsp;another</u>"
      See Also:
        `HTMLString`

    - #### setPickerCancelButtonTitle

          public MultiFileItem setPickerCancelButtonTitle(java.lang.String pickerCancelButtonTitle)

      The title of the cancel button in the picker lauched by the `edit button`.
      Parameters:
        `pickerCancelButtonTitle` - New pickerCancelButtonTitle value. Default value is "Cancel"
      Returns:
        `MultiFileItem` instance, for chaining setter calls

    - #### getPickerCancelButtonTitle

          public java.lang.String getPickerCancelButtonTitle()

      The title of the cancel button in the picker lauched by the `edit button`.
      Returns:
        Current pickerCancelButtonTitle value. Default value is "Cancel"

    - #### setPickerConstructor

          public MultiFileItem setPickerConstructor(java.lang.String pickerConstructor)

      MultiFileItems use a `MultiFilePicker` instance as their picker. The generated `picker` autoChild may be customized via the standard `com.smartgwt.client.types.AutoChild` pattern.
      Parameters:
        `pickerConstructor` - New pickerConstructor value. Default value is "MultiFilePicker"
      Returns:
        `MultiFileItem` instance, for chaining setter calls
      See Also:
        `SCClassName`

    - #### getPickerConstructor

          public java.lang.String getPickerConstructor()

      MultiFileItems use a `MultiFilePicker` instance as their picker. The generated `picker` autoChild may be customized via the standard `com.smartgwt.client.types.AutoChild` pattern.
      Returns:
        Current pickerConstructor value. Default value is "MultiFilePicker"
      See Also:
        `SCClassName`

    - #### setPickerUploadButtonInitialTitle

          public MultiFileItem setPickerUploadButtonInitialTitle(java.lang.String pickerUploadButtonInitialTitle)

      The initial title of the upload button in the picker lauched by the `edit button` that is used before the form is saved.
      Parameters:
        `pickerUploadButtonInitialTitle` - New pickerUploadButtonInitialTitle value. Default value is "OK"
      Returns:
        `MultiFileItem` instance, for chaining setter calls
      See Also:
        `setPickerUploadButtonTitle(java.lang.String)`

    - #### getPickerUploadButtonInitialTitle

          public java.lang.String getPickerUploadButtonInitialTitle()

      The initial title of the upload button in the picker lauched by the `edit button` that is used before the form is saved.
      Returns:
        Current pickerUploadButtonInitialTitle value. Default value is "OK"
      See Also:
        `getPickerUploadButtonTitle()`

    - #### setPickerUploadButtonTitle

          public MultiFileItem setPickerUploadButtonTitle(java.lang.String pickerUploadButtonTitle)

      The title of the upload button in the picker lauched by the `edit button` that is used after the form is saved.
      Parameters:
        `pickerUploadButtonTitle` - New pickerUploadButtonTitle value. Default value is "Save"
      Returns:
        `MultiFileItem` instance, for chaining setter calls
      See Also:
        `setPickerUploadButtonInitialTitle(java.lang.String)`

    - #### getPickerUploadButtonTitle

          public java.lang.String getPickerUploadButtonTitle()

      The title of the upload button in the picker lauched by the `edit button` that is used after the form is saved.
      Returns:
        Current pickerUploadButtonTitle value. Default value is "Save"
      See Also:
        `getPickerUploadButtonInitialTitle()`

    - #### setPickerUploadProgressLabel

          public MultiFileItem setPickerUploadProgressLabel(java.lang.String pickerUploadProgressLabel)

      Specifies the label of the progress meter in the picker lauched by the `edit button`. This property is a dynamic string, similar to the `Canvas.dynamicContents` feature, with the variables `fileName` and `formattedFileSize`.
      Parameters:
        `pickerUploadProgressLabel` - New pickerUploadProgressLabel value. Default value is "Saving ${fileName} ${formattedFileSize}"
      Returns:
        `MultiFileItem` instance, for chaining setter calls
      See Also:
        `HTMLString`

    - #### getPickerUploadProgressLabel

          public java.lang.String getPickerUploadProgressLabel()

      Specifies the label of the progress meter in the picker lauched by the `edit button`. This property is a dynamic string, similar to the `Canvas.dynamicContents` feature, with the variables `fileName` and `formattedFileSize`.
      Returns:
        Current pickerUploadProgressLabel value. Default value is "Saving ${fileName} ${formattedFileSize}"
      See Also:
        `HTMLString`

    - #### setRemoveButtonPrompt

          public MultiFileItem setRemoveButtonPrompt(java.lang.String removeButtonPrompt)

      The `prompt` of the `remove button`.
      Parameters:
        `removeButtonPrompt` - New removeButtonPrompt value. Default value is "Remove selected files"
      Returns:
        `MultiFileItem` instance, for chaining setter calls

    - #### getRemoveButtonPrompt

          public java.lang.String getRemoveButtonPrompt()

      The `prompt` of the `remove button`.
      Returns:
        Current removeButtonPrompt value. Default value is "Remove selected files"

    - #### setDefaultProperties

          public static void setDefaultProperties(MultiFileItem multiFileItemProperties)

      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:
        `multiFileItemProperties` - properties that should be used as new defaults when instances of this class are created
      See Also:
        `SGWTProperties`