public class FileItem extends CanvasItem
Editable mode
The editForm
will be automatically generated and displayed as
this.canvas
, allowing the user to select file(s) to
upload.
See the Upload Overview
for information on using this control.
Read-only mode
For fields of type "blob"
the raw data value will be displayed in the generated
displayForm
.
For other fields, the displayCanvas
will be displayed.
For
"imageFile"
fields with showFileInline
set to true, the image-file will be streamed and displayed inline within the displayCanvas.
Otherwise, the displayCanvas will render out View
and Download
icons and the fileName.
Upload overview and related methods
scClassName
id
Constructor and Description |
---|
FileItem() |
FileItem(com.google.gwt.core.client.JavaScriptObject jsObj) |
FileItem(java.lang.String name) |
FileItem(java.lang.String name,
java.lang.String title) |
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 |
getAccept()
A comma-separated list of valid MIME types, used as a filter for the file picker window.
|
Canvas |
getDisplayCanvas()
|
DynamicForm |
getDisplayForm()
The
DynamicForm created automatically when canEdit is false and the field is of type "blob". |
StaticTextItem |
getDisplayItem()
The
StaticTextItem created automatically and displayed in the displayForm when canEdit is false and the field type is "blob". |
java.lang.String |
getDownloadIconSrc()
Returns the URL for an Icon that will allow the file to be downloaded
|
DynamicForm |
getEditForm()
The
DynamicForm created automatically when canEdit is true. |
java.lang.Boolean |
getMultiple()
When true, allow the file-selection dialog shelled by the browser to select multiple
files.
|
static FileItem |
getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj) |
java.lang.Boolean |
getShouldSaveValue()
Should this item's value be saved in the form's values and hence returned from
form.getValues() ? |
java.lang.Boolean |
getShowFileInline()
Indicates whether to stream the image and display it inline or to display the View and Download icons.
|
UploadItem |
getUploadItem()
|
java.lang.String |
getViewIconSrc()
Returns the URL for an Icon that will allow the file to be viewed.
|
void |
setAccept(java.lang.String accept)
A comma-separated list of valid MIME types, used as a filter for the file picker window.
|
static void |
setDefaultProperties(FileItem fileItemProperties)
Class level method to set the default properties of this class.
|
void |
setDownloadIconSrc(java.lang.String downloadIconSrc)
Returns the URL for an Icon that will allow the file to be downloaded
|
void |
setMultiple(java.lang.Boolean multiple)
When true, allow the file-selection dialog shelled by the browser to select multiple
files.
|
void |
setShouldSaveValue(java.lang.Boolean shouldSaveValue)
Should this item's value be saved in the form's values and hence returned from
form.getValues() ? |
void |
setShowFileInline(java.lang.Boolean showFileInline)
Indicates whether to stream the image and display it inline or to display the View and Download icons.
|
void |
setViewIconSrc(java.lang.String viewIconSrc)
Returns the URL for an Icon that will allow the file to be viewed.
|
addCanEditChangedHandler, addReadOnlyDisplayChangedHandler, addShowValueHandler, createCanvas, getApplyPromptToCanvas, getAutoDestroy, getCanvas, getEditCriteriaInInnerForm, getHeight, getHeightAsString, getOverflow, getPrompt, hasAdvancedCriteria, setApplyPromptToCanvas, setAutoDestroy, setCanEditCriterionPredicate, setCanvas, setCriterionGetter, setCriterionSetter, setDefaultProperties, setEditCriteriaInInnerForm, setHeight, setHeight, setOverflow, setPrompt, setShouldDisableCanvasCustomizer, setupCanvasConstructor, storeValue, storeValue, storeValue
_getValue, addBlurHandler, addChangedHandler, addChangeHandler, addClickHandler, addDoubleClickHandler, addEditorEnterHandler, addEditorExitHandler, addFocusHandler, addIconClickHandler, addIconKeyPressHandler, addItemHoverHandler, addKeyDownHandler, addKeyPressHandler, addKeyUpHandler, addPickerIconClickHandler, addTitleClickHandler, addTitleDoubleClickHandler, addTitleHoverHandler, addValueHoverHandler, asSGWTComponent, blurItem, canEditCriterion, clearValue, disable, enable, error, error, errorIfNotCreated, focusInItem, getAccessKey, getAlign, getAllowExpressions, getAlwaysFetchMissingValues, getApplyHeightToTextBox, getAriaRole, getAttribute, getAttributeAsBoolean, getAttributeAsBoolean, getAttributeAsDate, getAttributeAsDouble, getAttributeAsFloat, getAttributeAsInt, getAttributeAsJavaScriptObject, getAttributeAsObject, getAttributeAsString, getBrowserSpellCheck, getCanEdit, getCanEditOpaqueValues, getCanFocus, getCanSelectText, getCanvasAutoChild, getCellHeight, getCellStyle, getChangeOnKeypress, getClassName, getClipStaticValue, getClipTitle, getConfig, getContainerWidget, getControlStyle, getCriteriaField, getCriterion, getCriterion, getDataPath, getDateFormatter, getDecimalPad, getDecimalPrecision, getDefaultIconSrc, getDisabled, getDisableIconsOnReadOnly, getDisplayField, getDisplayFieldName, getDisplayValue, getDisplayValue, getEditorTypeConfig, getEditPendingCSSText, getEmptyDisplayValue, getEmptyValueIcon, getEndRow, getErrorIconHeight, getErrorIconSrc, getErrorIconWidth, getErrorMessageWidth, getExportFormat, getFetchMissingValues, getFieldName, getFilterLocally, getForm, getFormat, getFormItemAutoChild, getFullDataPath, getGlobalTabIndex, getHint, getHintStyle, getHoverAlign, getHoverDelay, getHoverHeight, getHoverOpacity, getHoverStyle, getHoverVAlign, getHoverWidth, getIcon, getIconHeight, getIconHSpace, getIconPageRect, getIconPrompt, getIconRect, getIconVAlign, getIconWidth, getImageURLPrefix, getImageURLSuffix, getImplicitSave, getImplicitSaveOnBlur, getInputFormat, getLeft, getLoadingDisplayValue, getLocateItemBy, getMultipleValueSeparator, getName, getOperator, getOptionCriteria, getOptionFilterContext, getOptionOperationId, getPageLeft, getPageRect, getPageTop, getPicker, getPickerIconHeight, getPickerIconName, getPickerIconPrompt, getPickerIconProperties, getPickerIconSrc, getPickerIconStyle, getPickerIconWidth, getPixelHeight, getPixelWidth, getPrintTextBoxStyle, getPrintTitleStyle, getReadOnlyDisplay, getReadOnlyTextBoxStyle, getRect, getRedrawOnChange, getRejectInvalidValueOnChange, getRequired, getRequiredMessage, getRowSpan, getSaveOnEnter, getScClassName, getSelectedRecord, getSelectOnClick, getSelectOnFocus, getShowClippedTitleOnHover, getShowClippedValueOnHover, getShowDisabled, getShowErrorIcon, getShowErrorStyle, getShowErrorText, getShowFocused, getShowFocusedErrorState, getShowFocusedIcons, getShowFocusedPickerIcon, getShowHint, getShowIcons, getShowOverIcons, getShowPickerIcon, getShowRTL, getShowTitle, getShowValueIconOnly, getStartRow, getStopOnError, getSuppressValueIcon, getSynchronousValidation, getTabIndex, getTextAlign, getTextBoxStyle, getTimeFormatter, getTitle, getTitleAlign, getTitleColSpan, getTitleOrientation, getTitleStyle, getTitleVAlign, getTooltip, getTop, getType, getValidateOnChange, getValidateOnExit, getValidOperators, getVAlign, getValue, getValueAsRecordList, getValueField, getValueFieldName, getValueIconHeight, getValueIconLeftPadding, getValueIconRightPadding, getValueIconSize, getValueIconWidth, getVisible, getVisibleHeight, getVisibleWidth, getWidth, getWidthAsString, getWrapTitle, hide, hideIcon, invalidateDisplayValueCache, isCreated, isDisabled, isDrawn, isVisible, redraw, setAccessKey, setAlign, setAllowExpressions, setAlwaysFetchMissingValues, 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, setAutoChildVisibility, setBrowserSpellCheck, setCanEdit, setCanEditOpaqueValues, setCanFocus, setCanSelectText, setCellHeight, setCellStyle, setChangeOnKeypress, setClipStaticValue, setClipTitle, setColSpan, setColSpan, setControlStyle, setCriteriaField, setCriterion, setDataPath, setDateFormatter, setDecimalPad, setDecimalPrecision, setDefaultIconSrc, setDefaultProperties, setDefaultValue, setDefaultValue, setDefaultValue, setDefaultValue, setDefaultValue, setDefaultValue, setDefaultValue, setDisabled, setDisableIconsOnReadOnly, setDisplayField, setDisplayFormat, setDisplayFormat, setEditorProperties, setEditorType, setEditorType, setEditorType, setEditorValueFormatter, setEditorValueParser, setEditPendingCSSText, setEmptyDisplayValue, setEmptyValueIcon, setEndRow, setErrorFormatter, setErrorIconHeight, setErrorIconSrc, setErrorIconWidth, setErrorMessageWidth, setErrorOrientation, setExportFormat, setFetchMissingValues, setFilterLocally, setFormat, setGlobalTabIndex, setHint, setHintStyle, setHoverAlign, setHoverDelay, setHoverHeight, setHoverOpacity, setHoverStyle, setHoverVAlign, setHoverWidth, setIconHeight, setIconHSpace, setIconPrompt, setIcons, setIconVAlign, setIconWidth, setImageURLPrefix, setImageURLSuffix, setImplicitSave, setImplicitSaveOnBlur, setInitHandler, setInputFormat, setInputTransformer, setItemHoverFormatter, setItemTitleHoverFormatter, setItemValueHoverFormatter, setLeft, setLoadingDisplayValue, setLocateItemBy, setMultipleValueSeparator, setName, setNullProperty, setOperator, setOptionCriteria, setOptionDataSource, setOptionFilterContext, setOptionOperationId, setPickerIconHeight, setPickerIconName, setPickerIconPrompt, setPickerIconProperties, setPickerIconSrc, setPickerIconStyle, setPickerIconWidth, setPrintTextBoxStyle, setPrintTitleStyle, setProperty, setProperty, setProperty, setProperty, setProperty, setReadOnlyDisplay, setReadOnlyTextBoxStyle, setRedrawOnChange, setRejectInvalidValueOnChange, setRequired, setRequiredMessage, setRowSpan, setSaveOnEnter, setScClassName, setSelectOnClick, setSelectOnFocus, setShowClippedTitleOnHover, setShowClippedValueOnHover, setShowDisabled, setShowErrorIcon, setShowErrorStyle, setShowErrorText, setShowFocused, setShowFocusedErrorState, setShowFocusedIcons, setShowFocusedPickerIcon, setShowHint, setShowIcons, setShowIfCondition, setShowOverIcons, setShowPickerIcon, setShowRTL, setShowTitle, setShowValueIconOnly, setStartRow, setStopOnError, setSuppressValueIcon, setSynchronousValidation, setTabIndex, setTextAlign, setTextBoxStyle, setTimeFormatter, setTitle, setTitleAlign, setTitleColSpan, setTitleHoverFormatter, setTitleOrientation, setTitleStyle, setTitleVAlign, setTooltip, setTop, setType, setValidateOnChange, setValidateOnExit, setValidators, setValidOperators, setVAlign, setValue, setValue, setValue, setValue, setValue, setValue, setValueField, setValueFormatter, setValueHoverFormatter, setValueIconHeight, setValueIconLeftPadding, setValueIconMapper, setValueIconRightPadding, setValueIcons, setValueIconSize, setValueIconWidth, setValueMap, setValueMap, setVisible, setWidth, setWidth, setWrapTitle, shouldApplyHeightToTextBox, shouldFetchMissingValue, shouldSaveOnEnter, shouldStopKeyPressBubbling, show, showIcon, showPicker, stopHover, storeValue, updateState, validate, valueClipped
getRef, getRef, internalSetID
doAddHandler, fireEvent, getAttributeAsDoubleArray, getAttributeAsIntArray, getAttributeAsLong, getAttributeAsMap, getAttributeAsObject, getAttributeAsRecord, getAttributeAsStringArray, getAttributes, getHandlerCount, setAttribute, setAttribute, setAttribute, setAttributeAsJavaObject
equals, getJsObj, hashCode, setJavaScriptObject, setJsObj
public FileItem()
public FileItem(com.google.gwt.core.client.JavaScriptObject jsObj)
public FileItem(java.lang.String name)
public FileItem(java.lang.String name, java.lang.String title)
public static FileItem getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj)
public static void changeAutoChildDefaults(java.lang.String autoChildName, Canvas defaults)
autoChildName
.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.AutoChildUsage
public static void changeAutoChildDefaults(java.lang.String autoChildName, FormItem defaults)
autoChildName
.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.AutoChildUsage
public static void changePickerIconDefaults(FormItemIcon defaults)
public void setAccept(java.lang.String accept)
accept
- Default value is nullpublic java.lang.String getAccept()
public Canvas getDisplayCanvas()
Canvas
created automatically when canEdit
is false and the field is of any type other than
"blob". If the field is of type "imageFile", and showFileInline
is true, the contents of the canvas
are set to HTML that streams the image file for display. Otherwise, the item renders icons that allow the file to be
viewed
or downloaded
.
This component is an com.smartgwt.client.types.AutoChild
and as such may be customized via fileItem.displayCanvasDefaults
and
fileItem.displayCanvasProperties
.
For an overview of how to use and configure AutoChildren, see Using AutoChildren
.
Upload overview and related methods
public DynamicForm getDisplayForm()
DynamicForm
created automatically when canEdit
is false and the field is of type "blob". Displays
a single item
for viewing the content of a blob
file. This component is an com.smartgwt.client.types.AutoChild
and as such may be customized via
fileItem.displayFormDefaults
and fileItem.displayFormProperties
.
For an overview of how to use and configure AutoChildren, see Using AutoChildren
.
Upload overview and related methods
public StaticTextItem getDisplayItem()
StaticTextItem
created automatically and displayed in the displayForm
when canEdit
is false and the field type is "blob". This
component is an com.smartgwt.client.types.AutoChild
and as such may be customized via
fileItem.displayItemDefaults
and fileItem.displayItemProperties
.
For an overview of how to use and configure AutoChildren, see Using AutoChildren
.
Upload overview and related methods
public void setDownloadIconSrc(java.lang.String downloadIconSrc)
downloadIconSrc
- See SCImgURL
. Default value is ?[SKIN]actions/download.png?Images overview and related methods
public java.lang.String getDownloadIconSrc()
SCImgURL
Images overview and related methods
public DynamicForm getEditForm()
DynamicForm
created automatically when canEdit
is true. Displays a single item
for manipulating a file. This component is an
com.smartgwt.client.types.AutoChild
and as such may be customized via fileItem.editFormDefaults
and fileItem.editFormProperties
.
For an overview of how to use and configure AutoChildren, see Using AutoChildren
.
Upload overview and related methods
public void setMultiple(java.lang.Boolean multiple)
Support is not full-cycle at the server - that is, there are server APIs for retrieving each file that was uploaded, but no built-in support for storing multiple files against a single DataSource field. However, you can write custom server DMI code to do something with the files - for instance, you could create multiple new DataSource records for each file via a server DMI like this below:
String fileNameStr = (String)dsRequest.getValues().get("image_filename").toString(); String[] fileNames = fileNameStr.split(", "); List files = dsRequest.getUploadedFiles(); for (int i = 0; i < files.size(); i++) { ISCFileItem file = (ISCFileItem)files.get(i); InputStream fileData = file.getInputStream(); DSRequest inner = new DSRequest("mediaLibrary", "add"); Map values = new HashMap(); values.put("title", dsRequest.getValues().get("title")); values.put("image", fileData); values.put("image_filename", fileNames[i]); values.put("image_filesize", file.getSize()); values.put("image_date_created", new Date()); inner.setValues(values); inner.execute(); } DSResponse dsResponse = new DSResponse(); dsResponse.setStatus(0); return dsResponse;
setMultiple
in class CanvasItem
multiple
- Default value is truepublic java.lang.Boolean getMultiple()
Support is not full-cycle at the server - that is, there are server APIs for retrieving each file that was uploaded, but no built-in support for storing multiple files against a single DataSource field. However, you can write custom server DMI code to do something with the files - for instance, you could create multiple new DataSource records for each file via a server DMI like this below:
String fileNameStr = (String)dsRequest.getValues().get("image_filename").toString(); String[] fileNames = fileNameStr.split(", "); List files = dsRequest.getUploadedFiles(); for (int i = 0; i < files.size(); i++) { ISCFileItem file = (ISCFileItem)files.get(i); InputStream fileData = file.getInputStream(); DSRequest inner = new DSRequest("mediaLibrary", "add"); Map values = new HashMap(); values.put("title", dsRequest.getValues().get("title")); values.put("image", fileData); values.put("image_filename", fileNames[i]); values.put("image_filesize", file.getSize()); values.put("image_date_created", new Date()); inner.setValues(values); inner.execute(); } DSResponse dsResponse = new DSResponse(); dsResponse.setStatus(0); return dsResponse;
getMultiple
in class CanvasItem
public void setShouldSaveValue(java.lang.Boolean shouldSaveValue)
form.getValues()
? shouldSaveValue:false
is used
to mark formItems which do not correspond to the underlying data model and should not save a value into the form's
values
. Example includes visual separators, password
re-type fields, or checkboxes used to show/hide other form items.
A shouldSaveValue:false
item should
be given a value either via defaultValue
or by
calling form.setValue(item, value)
or formItem.setValue(value)
. Providing a value via form.values
or form.setValues()
will automatically switch the item to
shouldSaveValue:true
.
Note that
setShouldSaveValue
in class CanvasItem
shouldSaveValue
- Default value is truepublic java.lang.Boolean getShouldSaveValue()
form.getValues()
? shouldSaveValue:false
is used
to mark formItems which do not correspond to the underlying data model and should not save a value into the form's
values
. Example includes visual separators, password
re-type fields, or checkboxes used to show/hide other form items.
A shouldSaveValue:false
item should
be given a value either via defaultValue
or by
calling form.setValue(item, value)
or formItem.setValue(value)
. Providing a value via form.values
or form.setValues()
will automatically switch the item to
shouldSaveValue:true
.
Note that
getShouldSaveValue
in class CanvasItem
public void setShowFileInline(java.lang.Boolean showFileInline)
showFileInline
- Default value is nullpublic java.lang.Boolean getShowFileInline()
public UploadItem getUploadItem()
UploadItem
created automatically and displayed in the editForm
when canEdit
is true. This component is an com.smartgwt.client.types.AutoChild
and as such may be customized via fileItem.uploadItemDefaults
and
fileItem.uploadItemProperties
.
For an overview of how to use and configure AutoChildren, see Using AutoChildren
.
Upload overview and related methods
public void setViewIconSrc(java.lang.String viewIconSrc)
viewIconSrc
- See SCImgURL
. Default value is ?[SKIN]actions/view.png?Images overview and related methods
public java.lang.String getViewIconSrc()
SCImgURL
Images overview and related methods
public static void setDefaultProperties(FileItem fileItemProperties)
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.
fileItemProperties
- properties that should be used as new defaults when instances of this class are created