public class DateItem extends FormItem
Can be rendered as a text field, or as 3 selects for day, month, year. Includes optional pop-up picker.
scClassName
id
factoryCreated, factoryProperties
Constructor and Description |
---|
DateItem() |
DateItem(com.google.gwt.core.client.JavaScriptObject jsObj) |
DateItem(java.lang.String name) |
DateItem(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,
DrawItem defaults)
Changes the defaults for DrawItem 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) |
void |
deselectValue()
If
useTextField is true, falls through to
standard deselectValue() implementation on this
items freeform text entry field. |
void |
deselectValue(java.lang.Boolean start)
If
useTextField is true, falls through to
standard deselectValue() implementation on this
items freeform text entry field. |
java.lang.String |
getBrowserInputType()
If
useTextField is true and browserInputType is
set to "date", then a native HTML5 date input is used in place of a text input. |
int |
getCenturyThreshold()
Only used if we're showing the date in a text field.
|
DateDisplayFormat |
getDateFormatter()
If
useTextField is true this
property can be used to customize the format in which dates are displayed for this item.Should be set to a standard DateDisplayFormat . |
SelectItem |
getDaySelector()
Select item to hold the day part of the date.
|
SelectItem |
getDaySelectorProperties()
Custom properties to apply to this dateItem's generated
daySelector . |
java.util.Date |
getDefaultChooserDate()
Default date to show in the date chooser.
|
java.lang.String |
getEditProxyConstructor()
Default class used to construct the
EditProxy for this component when the component is
first placed into edit mode . |
java.util.Date |
getEndDate()
Maximum date the selectors will allow the user to pick.
|
java.lang.Boolean |
getEnforceDate()
Can this field be set to a non-date value [other than null]?
|
java.lang.String |
getEnteredValue()
Returns the raw text value typed into this items text field if
useTextField is true (otherwise returns the result of
this.getValue()). |
FiscalCalendar |
getFiscalCalendar()
Returns the
FiscalCalendar object that will be used by this item's DateChooser. |
java.lang.String |
getInputFormat()
If
useTextField is true this
property can be used to specify the input format for date strings. |
java.lang.String |
getInvalidDateStringMessage()
Validation error message to display if the user enters an invalid date
|
SelectItem |
getMonthSelector()
Select item to hold the month part of the date.
|
SelectItem |
getMonthSelectorProperties()
Custom properties to apply to this dateItem's generated
monthSelector . |
static DateItem |
getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj) |
java.lang.String |
getPickerIconPrompt()
Prompt to show when the user hovers the mouse over the picker icon for this DateItem.
|
DateChooser |
getPickerProperties()
Properties for the
DateChooser created by this form item. |
TimeItem |
getPickerTimeItemProperties()
A set of properties to apply to the
TimeItem displayed in the picker
when showPickerTimeItem is true. |
int[] |
getSelectionRange()
If
useTextField is true, falls through to
standard com.smartgwt.client.widgets.form.fields.FormItem#getSelectionRange implementation on this items
freeform text entry field. |
DateItemSelectorFormat |
getSelectorFormat()
If showing date selectors rather than the date text field (so when
this.useTextField is false), this
property allows customization of the order of the day, month and year selector fields. |
java.lang.Boolean |
getShowChooserFiscalYearPicker()
When set to true, show a button that allows the calendar to be navigated by fiscal year.
|
java.lang.Boolean |
getShowChooserWeekPicker()
When set to true, show a button that allows the calendar to be navigated by week or fiscal week, depending on the value
of
showChooserFiscalYearPicker . |
java.lang.Boolean |
getShowHintInField()
If
useTextField is true and a hint is set, should the hint be shown within the field? |
java.lang.Boolean |
getShowPickerTimeItem()
If this field is of type
"datetime" , when showing the DateChooser ,
should the time field be displayed? |
java.util.Date |
getStartDate()
Minimum date the selectors will allow the user to pick.
|
Alignment |
getTextAlign()
If
useTextField is true this
property governs the alignment of text within the text field. |
TextItem |
getTextField()
Text field to hold the entire date in "type in" format, if
useTextField is true. |
TextItem |
getTextFieldProperties()
Custom properties to apply to this dateItem's generated
textField . |
java.lang.Boolean |
getUse24HourTime()
When showing the
DateChooser and the field is of type "datetime", whether the time field should be set to use 24-hour time. |
java.lang.Boolean |
getUseSharedPicker()
When set to true (the default), use a single shared date-picker across all widgets that use one.
|
java.lang.Boolean |
getUseTextField()
Should we show the date in a text field, or as 3 select boxes?
|
java.util.Date |
getValueAsDate()
Return the value tracked by this form item.
|
SelectItem |
getYearSelector()
Select item to hold the year part of the date.
|
SelectItem |
getYearSelectorProperties()
Custom properties to apply to this dateItem's generated
yearSelector . |
void |
selectValue()
If
useTextField is true, falls through to
standard selectValue() implementation on this items
freeform text entry field. |
void |
setBrowserInputType(java.lang.String browserInputType)
If
useTextField is true and browserInputType is
set to "date", then a native HTML5 date input is used in place of a text input. |
void |
setCenturyThreshold(int centuryThreshold)
Only used if we're showing the date in a text field.
|
void |
setDateFormatter(DateDisplayFormat dateFormatter)
If
useTextField is true this
property can be used to customize the format in which dates are displayed for this item.Should be set to a standard DateDisplayFormat . |
void |
setDaySelectorProperties(SelectItem daySelectorProperties)
Custom properties to apply to this dateItem's generated
daySelector . |
void |
setDefaultChooserDate(java.util.Date defaultChooserDate)
Default date to show in the date chooser.
|
static void |
setDefaultProperties(DateItem dateItemProperties)
Class level method to set the default properties of this class.
|
void |
setEditorValueFormatter(FormItemValueFormatter formatter)
An optional
FormItemValueFormatter to map this item's current data
value to a display value. |
void |
setEditorValueParser(FormItemValueParser valueParser)
An optional
FormItemValueParser to map a user-entered display value to a data
value for storage. |
void |
setEditProxyConstructor(java.lang.String editProxyConstructor)
Default class used to construct the
EditProxy for this component when the component is
first placed into edit mode . |
void |
setEndDate(java.util.Date endDate)
Maximum date the selectors will allow the user to pick.
|
void |
setEnforceDate(java.lang.Boolean enforceDate)
Can this field be set to a non-date value [other than null]?
|
void |
setFiscalCalendar()
Sets the
FiscalCalendar object that will be used by this item's DateChooser. |
void |
setFiscalCalendar(FiscalCalendar fiscalCalendar)
Sets the
FiscalCalendar object that will be used by this item's DateChooser. |
void |
setInputFormat(java.lang.String inputFormat)
If
useTextField is true this
property can be used to specify the input format for date strings. |
void |
setInvalidDateStringMessage(java.lang.String invalidDateStringMessage)
Validation error message to display if the user enters an invalid date
|
void |
setMaskDateSeparator(java.lang.String maskDateSeparator)
|
void |
setMonthSelectorProperties(SelectItem monthSelectorProperties)
Custom properties to apply to this dateItem's generated
monthSelector . |
void |
setPickerIconPrompt(java.lang.String pickerIconPrompt)
Prompt to show when the user hovers the mouse over the picker icon for this DateItem.
|
void |
setPickerProperties(DateChooser pickerProperties)
Properties for the
DateChooser created by this form item. |
void |
setPickerTimeItemProperties(TimeItem pickerTimeItemProperties)
A set of properties to apply to the
TimeItem displayed in the picker
when showPickerTimeItem is true. |
void |
setSelectionRange(int start,
int end)
If
useTextField is true, falls through to
standard setSelectionRange() implementation
on this items freeform text entry field. |
void |
setSelectorFormat(DateItemSelectorFormat selectorFormat)
If showing date selectors rather than the date text field (so when
this.useTextField is false), this
property allows customization of the order of the day, month and year selector fields. |
void |
setShowChooserFiscalYearPicker(java.lang.Boolean showChooserFiscalYearPicker)
When set to true, show a button that allows the calendar to be navigated by fiscal year.
|
void |
setShowChooserWeekPicker(java.lang.Boolean showChooserWeekPicker)
When set to true, show a button that allows the calendar to be navigated by week or fiscal week, depending on the value
of
showChooserFiscalYearPicker . |
void |
setShowHintInField(java.lang.Boolean showHintInField)
If
useTextField is true and a hint is set, should the hint be shown within the field? |
void |
setShowPickerTimeItem(java.lang.Boolean showPickerTimeItem)
If this field is of type
"datetime" , when showing the DateChooser ,
should the time field be displayed? |
void |
setStartDate(java.util.Date startDate)
Minimum date the selectors will allow the user to pick.
|
void |
setTextAlign(Alignment textAlign)
If
useTextField is true this
property governs the alignment of text within the text field. |
void |
setTextFieldProperties(TextItem textFieldProperties)
Custom properties to apply to this dateItem's generated
textField . |
void |
setUse24HourTime(java.lang.Boolean use24HourTime)
When showing the
DateChooser and the field is of type "datetime", whether the time field should be set to use 24-hour time. |
void |
setUseMask(java.lang.Boolean useMask)
If
useTextField is not false this
property determines if an input mask should be used. |
void |
setUseSharedPicker(java.lang.Boolean useSharedPicker)
When set to true (the default), use a single shared date-picker across all widgets that use one.
|
void |
setUseTextField(java.lang.Boolean useTextField)
Should we show the date in a text field, or as 3 select boxes?
|
void |
setYearSelectorProperties(SelectItem yearSelectorProperties)
Custom properties to apply to this dateItem's generated
yearSelector . |
_getValue, addBlurHandler, addChangedHandler, addChangeHandler, addClickHandler, addDoubleClickHandler, addEditorEnterHandler, addEditorExitHandler, addFocusHandler, addIconClickHandler, addIconKeyPressHandler, addItemHoverHandler, addKeyDownHandler, addKeyPressHandler, addKeyUpHandler, addPickerIconClickHandler, addTitleClickHandler, addTitleDoubleClickHandler, addTitleHoverHandler, addValueHoverHandler, addValueIconClickHandler, 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, getAutoComplete, getBrowserSpellCheck, getCanEdit, getCanEditOpaqueValues, getCanFocus, getCanSelectText, getCanvasAutoChild, getCellHeight, getCellStyle, getChangeOnKeypress, getClassName, getClipStaticValue, getClipTitle, getConfig, getContainerWidget, getControlStyle, getCriteriaField, getCriterion, getCriterion, getDataPath, getDecimalPad, getDecimalPrecision, getDefaultIconSrc, getDisabled, getDisableIconsOnReadOnly, getDisplayField, getDisplayFieldName, getDisplayValue, getDisplayValue, getEditorTypeConfig, getEditPendingCSSText, getEmptyDisplayValue, getEmptyValueIcon, getEndRow, getErrorIconHeight, getErrorIconSrc, getErrorIconWidth, getErrorMessageWidth, getExportFormat, getFetchMissingValues, getFieldName, getFilterLocally, getForeignDisplayField, getForm, getFormat, getFormItemAutoChild, getFullDataPath, getGlobalTabIndex, getHeight, getHeightAsString, getHint, getHintStyle, getHoverAlign, getHoverDelay, getHoverHeight, getHoverOpacity, getHoverStyle, getHoverVAlign, getHoverWidth, getIcon, getIconHeight, getIconHSpace, getIconPageRect, getIconPrompt, getIconRect, getIconVAlign, getIconWidth, getImageURLPrefix, getImageURLSuffix, getImplicitSave, getImplicitSaveOnBlur, getLeft, getLoadingDisplayValue, getLocateItemBy, getMultipleValueSeparator, getName, getOperator, getOptionCriteria, getOptionFilterContext, getOptionOperationId, getPageLeft, getPageRect, getPageTop, getPicker, getPickerIconHeight, getPickerIconName, getPickerIconProperties, getPickerIconSrc, getPickerIconStyle, getPickerIconWidth, getPixelHeight, getPixelWidth, getPrintTextBoxStyle, getPrintTitleStyle, getPrompt, getReadOnlyDisplay, getReadOnlyTextBoxStyle, getRect, getRedrawOnChange, getRejectInvalidValueOnChange, getRequired, getRequiredMessage, getRowSpan, getSaveOnEnter, getScClassName, getSelectedRecord, getSelectOnClick, getSelectOnFocus, getShouldSaveValue, getShowClippedTitleOnHover, getShowClippedValueOnHover, getShowDisabled, getShowErrorIcon, getShowErrorStyle, getShowErrorText, getShowFocused, getShowFocusedErrorState, getShowFocusedIcons, getShowFocusedPickerIcon, getShowHint, getShowIcons, getShowOverIcons, getShowPickerIcon, getShowRTL, getShowTitle, getShowValueIconOnly, getStartRow, getStaticHeight, getStopOnError, getSuppressValueIcon, getSynchronousValidation, getTabIndex, 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, hasAdvancedCriteria, hide, hideIcon, invalidateDisplayValueCache, isCreated, isDisabled, isDrawn, isVisible, redraw, 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, setAutoChildProperties, setAutoChildVisibility, setAutoComplete, setBrowserSpellCheck, setCanEdit, setCanEditCriterionPredicate, setCanEditOpaqueValues, setCanFocus, setCanSelectText, setCellHeight, setCellStyle, setChangeOnKeypress, setClipStaticValue, setClipTitle, setColSpan, setColSpan, setControlStyle, setCriteriaField, setCriterion, setCriterionGetter, setCriterionSetter, setDataPath, setDecimalPad, setDecimalPrecision, setDefaultIconSrc, setDefaultProperties, setDefaultValue, setDefaultValue, setDefaultValue, setDefaultValue, setDefaultValue, setDefaultValue, setDefaultValue, setDisabled, setDisableIconsOnReadOnly, setDisplayField, setDisplayFormat, setDisplayFormat, setEditorProperties, setEditorType, setEditorType, setEditorType, setEditPendingCSSText, setEmptyDisplayValue, setEmptyValueIcon, setEndRow, setErrorFormatter, setErrorIconHeight, setErrorIconSrc, setErrorIconWidth, setErrorMessageWidth, setErrorOrientation, setExportFormat, setFetchMissingValues, setFilterLocally, setForeignDisplayField, setFormat, setGlobalTabIndex, setHeight, setHeight, setHint, setHintStyle, setHoverAlign, setHoverDelay, setHoverHeight, setHoverOpacity, setHoverStyle, setHoverVAlign, setHoverWidth, setIconHeight, setIconHSpace, setIconPrompt, setIcons, setIconVAlign, setIconWidth, setImageURLPrefix, setImageURLSuffix, setImplicitSave, setImplicitSaveOnBlur, setInitHandler, setInputTransformer, setItemHoverFormatter, setItemTitleHoverFormatter, setItemValueHoverFormatter, setLeft, setLoadingDisplayValue, setLocateItemBy, setMultipleValueSeparator, setName, setNullProperty, setOperator, setOptionCriteria, setOptionDataSource, setOptionFilterContext, setOptionOperationId, setPickerIconHeight, setPickerIconName, setPickerIconProperties, setPickerIconSrc, setPickerIconStyle, setPickerIconWidth, setPrintTextBoxStyle, setPrintTitleStyle, setPrompt, setProperty, setProperty, setProperty, setProperty, setProperty, setReadOnlyDisplay, setReadOnlyTextBoxStyle, setRedrawOnChange, setRejectInvalidValueOnChange, setRequired, setRequiredMessage, setRowSpan, setSaveOnEnter, setScClassName, setSelectOnClick, setSelectOnFocus, setShouldSaveValue, setShowClippedTitleOnHover, setShowClippedValueOnHover, setShowDisabled, setShowErrorIcon, setShowErrorStyle, setShowErrorText, setShowFocused, setShowFocusedErrorState, setShowFocusedIcons, setShowFocusedPickerIcon, setShowHint, setShowIcons, setShowIfCondition, setShowOverIcons, setShowPickerIcon, setShowRTL, setShowTitle, setShowValueIconOnly, setStartRow, setStaticHeight, setStopOnError, setSuppressValueIcon, setSynchronousValidation, setTabIndex, 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, storeValue, updateState, validate, valueClipped
getRef, getRef, internalSetID
applyFactoryProperties, doAddHandler, fireEvent, getAttributeAsDoubleArray, getAttributeAsIntArray, getAttributeAsLong, getAttributeAsMap, getAttributeAsObject, getAttributeAsRecord, getAttributeAsStringArray, getAttributes, getHandlerCount, isFactoryCreated, setAttribute, setAttribute, setAttribute, setAttributeAsJavaObject, setFactoryCreated
equals, getJsObj, hashCode, setJavaScriptObject, setJsObj
public DateItem()
public DateItem(com.google.gwt.core.client.JavaScriptObject jsObj)
public DateItem(java.lang.String name)
public DateItem(java.lang.String name, java.lang.String title)
public static DateItem 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 changeAutoChildDefaults(java.lang.String autoChildName, DrawItem defaults)
autoChildName
.autoChildName
- name of an AutoChild to customize the defaults for.defaults
- DrawItem 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 setBrowserInputType(java.lang.String browserInputType)
useTextField
is true and browserInputType is
set to "date", then a native HTML5 date input is used in place of a text input. The use of a native HTML5 date input causes
certain features to be disabled. Input masks, the picker icon, and a custom dateFormatter
are not supported. In-field hints
are currently supported, but future
browser changes might force this support to be removed. Therefore, it is safest to not use in-field hints (set
showHintInField to false) in conjunction with a native HTML5 date input.
NOTE: This feature requires specific CSS changes. Currently these changes have been made to the Enterprise, EnterpriseBlue, and Graphite skins only.
Note : This is an advanced setting
browserInputType
- Default value is nullpublic java.lang.String getBrowserInputType()
useTextField
is true and browserInputType is
set to "date", then a native HTML5 date input is used in place of a text input. The use of a native HTML5 date input causes
certain features to be disabled. Input masks, the picker icon, and a custom dateFormatter
are not supported. In-field hints
are currently supported, but future
browser changes might force this support to be removed. Therefore, it is safest to not use in-field hints (set
showHintInField to false) in conjunction with a native HTML5 date input.
NOTE: This feature requires specific CSS changes. Currently these changes have been made to the Enterprise, EnterpriseBlue, and Graphite skins only.
public void setCenturyThreshold(int centuryThreshold)
If you need to allow 1 and 2 digit years,
set this attribute to null
to have the control retain your year-value as entered.
centuryThreshold
- Default value is 25Appearance overview and related methods
public int getCenturyThreshold()
If you need to allow 1 and 2 digit years,
set this attribute to null
to have the control retain your year-value as entered.
Appearance overview and related methods
public void setDateFormatter(DateDisplayFormat dateFormatter)
useTextField
is true
this
property can be used to customize the format in which dates are displayed for this item.DateDisplayFormat
. As with any formItem rendering out a date value, if no
explicit dateFormatter is supplied, dateFormatter will be derived from dateFormatter
or datetimeFormatter
, depending on the specified type
for this field, if set, otherwise from the standard
default Date.setShortDisplayFormat()
or Date.setShortDatetimeDisplayFormat()
.
NOTE: For
entirely custom formats, developers may apply a custom editorValueFormatter
. To ensure the DateItem is
able to parse user-entered date strings back into Dates, for most cases developers can specify an explicit inputFormat
, or if necessary a custom
editorValueParser
This attribute does not have an effect if a native HTML5 date or datetime input is
being used. See browserInputType
.
setDateFormatter
in class FormItem
dateFormatter
- Default value is nullFormItem.setTimeFormatter(com.smartgwt.client.types.TimeDisplayFormat)
,
FormItem.setFormat(java.lang.String)
,
Appearance overview and related methods
public DateDisplayFormat getDateFormatter()
useTextField
is true
this
property can be used to customize the format in which dates are displayed for this item.DateDisplayFormat
. As with any formItem rendering out a date value, if no
explicit dateFormatter is supplied, dateFormatter will be derived from dateFormatter
or datetimeFormatter
, depending on the specified type
for this field, if set, otherwise from the standard
default Date.setShortDisplayFormat()
or Date.setShortDatetimeDisplayFormat()
.
NOTE: For
entirely custom formats, developers may apply a custom editorValueFormatter
. To ensure the DateItem is
able to parse user-entered date strings back into Dates, for most cases developers can specify an explicit inputFormat
, or if necessary a custom
editorValueParser
This attribute does not have an effect if a native HTML5 date or datetime input is
being used. See browserInputType
.
getDateFormatter
in class FormItem
FormItem.getTimeFormatter()
,
FormItem.getFormat()
,
Appearance overview and related methods
public SelectItem getDaySelector()
For an overview of how to use and configure AutoChildren, see Using AutoChildren
.
public void setDaySelectorProperties(SelectItem daySelectorProperties)
daySelector
.
Note : This is an advanced setting
daySelectorProperties
- Default value is nullpublic SelectItem getDaySelectorProperties()
daySelector
.public void setDefaultChooserDate(java.util.Date defaultChooserDate)
defaultChooserDate
- Default value is nullpublic java.util.Date getDefaultChooserDate()
Default
implementation returns defaultChooserDate
public void setEditProxyConstructor(java.lang.String editProxyConstructor)
EditProxy
for this component when the component is
first placed into edit mode
.setEditProxyConstructor
in class FormItem
editProxyConstructor
- See SCClassName
. Default value is "DateItemEditProxy"public java.lang.String getEditProxyConstructor()
EditProxy
for this component when the component is
first placed into edit mode
.getEditProxyConstructor
in class FormItem
SCClassName
public void setEndDate(java.util.Date endDate)
See startDate
for details on how this restriction works.
If this method is called after the component has been drawn/initialized:
Setter for endDate
.
endDate
- the new endDate.. Default value is 12/31/2015Appearance overview and related methods
public java.util.Date getEndDate()
See startDate
for details on how this restriction works.
Appearance overview and related methods
public void setEnforceDate(java.lang.Boolean enforceDate)
When set to true, FormItem.setValue()
will return
false without setting the item value
and log a warning if passed something other than a valid date value.
If the dateItem is showing a free-form text
entry field
,
and a user enters a text value which cannot be parsed into a valid date, the item will
automatically redraw and display the invalidDateStringMessage
(though at this
point calling FormItem.getValue()
will return the
string entered by the user).
When set to false, a user may enter a value that is not a valid date (for example, "Not applicable") and the value will not immediately be flagged as an error. However note that for the value to actually pass validation you would need to declare the field as not of "date" type, for example:
{name:"startDate", type:"dateOrOther", editorType:"DateItem", useTextField:true },The type "dateOrOther" could be declared as a
SimpleType
, with validators that
will accept either a valid date or certain special Strings (like "Not Available").
Only applies to dateItems where useTextField
is
true. Non-Date values
are never supported in items where useTextField is false.
This attribute does not have an effect if a native HTML5 date input is being used.
See browserInputType
.
Note : This is an advanced setting
enforceDate
- Default value is falsepublic java.lang.Boolean getEnforceDate()
When set to true, FormItem.setValue()
will return
false without setting the item value
and log a warning if passed something other than a valid date value.
If the dateItem is showing a free-form text
entry field
,
and a user enters a text value which cannot be parsed into a valid date, the item will
automatically redraw and display the invalidDateStringMessage
(though at this
point calling FormItem.getValue()
will return the
string entered by the user).
When set to false, a user may enter a value that is not a valid date (for example, "Not applicable") and the value will not immediately be flagged as an error. However note that for the value to actually pass validation you would need to declare the field as not of "date" type, for example:
{name:"startDate", type:"dateOrOther", editorType:"DateItem", useTextField:true },The type "dateOrOther" could be declared as a
SimpleType
, with validators that
will accept either a valid date or certain special Strings (like "Not Available").
Only applies to dateItems where useTextField
is
true. Non-Date values
are never supported in items where useTextField is false.
This attribute does not have an effect if a native HTML5 date input is being used.
See browserInputType
.
public void setInputFormat(java.lang.String inputFormat)
useTextField
is true
this
property can be used to specify the input format for date strings. If unset, the input format will be determined based
on the specified dateFormatter
if possible
(see DateItem.getInputFormat()
), otherwise
picked up from the Date class (see Date.setInputFormat()
).
Should be set to a standard DateInputFormat
Note that the DateInputFormat
property is sufficient to parse date or datetime strings specified in most
standard date formats. However should an entirely custom parsing function be required developers can apply a custom
editorValueParser
function.
This attribute does not have an effect if a native HTML5 date input is
being used. See browserInputType
.
setInputFormat
in class FormItem
inputFormat
- See DateInputFormat
. Default value is nullFormItem.setDisplayFormat(com.smartgwt.client.types.DateDisplayFormat)
public java.lang.String getInputFormat()
useTextField
is true
this
property can be used to specify the input format for date strings. If unset, the input format will be determined based
on the specified dateFormatter
if possible
(see DateItem.getInputFormat()
), otherwise
picked up from the Date class (see Date.setInputFormat()
).
Should be set to a standard DateInputFormat
Note that the DateInputFormat
property is sufficient to parse date or datetime strings specified in most
standard date formats. However should an entirely custom parsing function be required developers can apply a custom
editorValueParser
function.
This attribute does not have an effect if a native HTML5 date input is
being used. See browserInputType
.
getInputFormat
in class FormItem
useTextField
is true
this
method returns a standard DateInputFormat
, determining how values entered by the user
are to be converted to Javascript Date objects. If an explicit inputFormat
has been specified it will be returned,
otherwise, if a custom dateFormatter
or format
are specified, the input format will be automatically
derived from that property.
Otherwise, the global inputFormat is used.
Note that the inputFormat will ignore
any separator characters and padding of values. However if necessary entirely custom date formatting and parsing may be
achieved via the setEditorValueFormatter()
and setEditorValueParser()
APIs. See DateInputFormat
com.smartgwt.client.widgets.form.fields.DateItem#getDisplayFormat
public void setInvalidDateStringMessage(java.lang.String invalidDateStringMessage)
invalidDateStringMessage
- Default value is "Invalid date"public java.lang.String getInvalidDateStringMessage()
public void setMaskDateSeparator(java.lang.String maskDateSeparator)
useTextField
and useMask
are both true
this value is the
separator between date components. If unset Date.getDefaultDateSeparator()
will be used.
Note : This is an advanced setting
maskDateSeparator
- Default value is nullBasics overview and related methods
public SelectItem getMonthSelector()
For an overview of how to use and configure AutoChildren, see Using AutoChildren
.
public void setMonthSelectorProperties(SelectItem monthSelectorProperties)
monthSelector
.
Note : This is an advanced setting
monthSelectorProperties
- Default value is nullpublic SelectItem getMonthSelectorProperties()
monthSelector
.public void setPickerIconPrompt(java.lang.String pickerIconPrompt)
setPickerIconPrompt
in class FormItem
pickerIconPrompt
- See HTMLString
. Default value is "Show Date Chooser"public java.lang.String getPickerIconPrompt()
getPickerIconPrompt
in class FormItem
HTMLString
public void setPickerProperties(DateChooser pickerProperties)
DateChooser
created by this form item.pickerProperties
- Default value is see belowpublic DateChooser getPickerProperties()
DateChooser
created by this form item.public void setPickerTimeItemProperties(TimeItem pickerTimeItemProperties)
TimeItem
displayed in the picker
when showPickerTimeItem
is true. Has
no effect for fields of type "date"
.
Note : This is an advanced setting
pickerTimeItemProperties
- Default value is nullpublic TimeItem getPickerTimeItemProperties()
TimeItem
displayed in the picker
when showPickerTimeItem
is true. Has
no effect for fields of type "date"
.
public void setSelectorFormat(DateItemSelectorFormat selectorFormat)
this.useTextField
is false), this
property allows customization of the order of the day, month and year selector fields. If unset these fields will
match the specified inputFormat for this item. Note: selectors may be ommitted entirely by setting selectorFormat to
(for example) "MD"
. In this case the value for the omitted selector will match the defaultValue
specified for the item. For example, if
the selector format is "MD" (month and day only), the year comes from the Date specified as the defaultValue.
selectorFormat
- Default value is nullpublic DateItemSelectorFormat getSelectorFormat()
this.useTextField
is false), this
property allows customization of the order of the day, month and year selector fields. If unset these fields will
match the specified inputFormat for this item. Note: selectors may be ommitted entirely by setting selectorFormat to
(for example) "MD"
. In this case the value for the omitted selector will match the defaultValue
specified for the item. For example, if
the selector format is "MD" (month and day only), the year comes from the Date specified as the defaultValue.
public void setShowChooserFiscalYearPicker(java.lang.Boolean showChooserFiscalYearPicker)
showChooserFiscalYearPicker
- Default value is falsepublic java.lang.Boolean getShowChooserFiscalYearPicker()
public void setShowChooserWeekPicker(java.lang.Boolean showChooserWeekPicker)
showChooserFiscalYearPicker
.showChooserWeekPicker
- Default value is falsepublic java.lang.Boolean getShowChooserWeekPicker()
showChooserFiscalYearPicker
.public void setShowHintInField(java.lang.Boolean showHintInField)
useTextField
is true and a hint
is set, should the hint be shown within the field?
Note that when using a native HTML5 date input (see browserInputType
), in-field hints are currently
supported, but future browser changes might not allow in-field hints to be supported. Therefore, it is safest to
not use in-field hints in conjunction with a native HTML5 date input.
To change this attribute after being
drawn, it is necessary to call FormItem.redraw()
or
redraw the form.
Note : This is an advanced setting
showHintInField
- Default value is nullFormItem.setHint(java.lang.String)
,
Appearance overview and related methods
public java.lang.Boolean getShowHintInField()
useTextField
is true and a hint
is set, should the hint be shown within the field?
Note that when using a native HTML5 date input (see browserInputType
), in-field hints are currently
supported, but future browser changes might not allow in-field hints to be supported. Therefore, it is safest to
not use in-field hints in conjunction with a native HTML5 date input.
To change this attribute after being
drawn, it is necessary to call FormItem.redraw()
or
redraw the form.
FormItem.getHint()
,
Appearance overview and related methods
public void setShowPickerTimeItem(java.lang.Boolean showPickerTimeItem)
"datetime"
, when showing the DateChooser
,
should the time field
be displayed? Has no effect
for fields of type "date"
.
This attribute does not have an effect if a native HTML5 date input is being
used. See browserInputType
.
showPickerTimeItem
- Default value is truepublic java.lang.Boolean getShowPickerTimeItem()
"datetime"
, when showing the DateChooser
,
should the time field
be displayed? Has no effect
for fields of type "date"
.
This attribute does not have an effect if a native HTML5 date input is being
used. See browserInputType
.
public void setStartDate(java.util.Date startDate)
NOTE: by design, setting startDate
and
endDate
will not always prevent the user from picking invalid values. In particular:
This is by design as it allows the user to set the day, month and year in whatever order is convenient, rather than forcing them to pick in a specific order.
For actual enforcement of a date being in correct range before data is submitted, a Validator
of type "dateRange" should always be declared.
If this method is called after the component has been drawn/initialized:
Setter for startDate
.
startDate
- the new startDate.. Default value is 1/1/1995Appearance overview and related methods
public java.util.Date getStartDate()
NOTE: by design, setting startDate
and
endDate
will not always prevent the user from picking invalid values. In particular:
This is by design as it allows the user to set the day, month and year in whatever order is convenient, rather than forcing them to pick in a specific order.
For actual enforcement of a date being in correct range before data is submitted, a Validator
of type "dateRange" should always be declared.
Appearance overview and related methods
public void setTextAlign(Alignment textAlign)
useTextField
is true
this
property governs the alignment of text within the text field. Defaults to "right"
by default or
"left"
if the page is in rtl mode
. This attribute does not
have an effect if a native HTML5 date input is being used. See browserInputType
.
setTextAlign
in class FormItem
textAlign
- Default value is variesAppearance overview and related methods
public Alignment getTextAlign()
useTextField
is true
this
property governs the alignment of text within the text field. Defaults to "right"
by default or
"left"
if the page is in rtl mode
. This attribute does not
have an effect if a native HTML5 date input is being used. See browserInputType
.
getTextAlign
in class FormItem
Appearance overview and related methods
public TextItem getTextField()
useTextField
is true.
For an overview of how to use and configure AutoChildren, see Using AutoChildren
.
public void setTextFieldProperties(TextItem textFieldProperties)
textField
. Only applies if useTextField
is true.
Note : This is an advanced setting
textFieldProperties
- Default value is nullpublic TextItem getTextFieldProperties()
textField
. Only applies if useTextField
is true.public void setUse24HourTime(java.lang.Boolean use24HourTime)
DateChooser
and the field is of type "datetime", whether the time field
should be set to use 24-hour time. The default is
true. Has no effect if showPickerTimeItem
is explicitly set to false
.
use24HourTime
- Default value is truepublic java.lang.Boolean getUse24HourTime()
DateChooser
and the field is of type "datetime", whether the time field
should be set to use 24-hour time. The default is
true. Has no effect if showPickerTimeItem
is explicitly set to false
.
public void setUseMask(java.lang.Boolean useMask)
useTextField
is not false
this
property determines if an input mask should be used. The format of the mask is determined by the inputFormat
or dateFormatter
(in that order). This attribute
does not have an effect if a native HTML5 date input is being used. See browserInputType
.
Note : This is an advanced setting
useMask
- Default value is nullsetMaskDateSeparator(java.lang.String)
,
Basics overview and related methods
public void setUseSharedPicker(java.lang.Boolean useSharedPicker)
picker
and pickerProperties
for details
on setting up an unshared picker.useSharedPicker
- Default value is truepublic java.lang.Boolean getUseSharedPicker()
picker
and pickerProperties
for details
on setting up an unshared picker.public void setUseTextField(java.lang.Boolean useTextField)
useTextField
- Default value is nullBasics overview and related methods
,
Date Examplepublic java.lang.Boolean getUseTextField()
Basics overview and related methods
,
Date Examplepublic SelectItem getYearSelector()
For an overview of how to use and configure AutoChildren, see Using AutoChildren
.
public void setYearSelectorProperties(SelectItem yearSelectorProperties)
yearSelector
.
Note : This is an advanced setting
yearSelectorProperties
- Default value is nullpublic SelectItem getYearSelectorProperties()
yearSelector
.public void deselectValue()
useTextField
is true, falls through to
standard deselectValue()
implementation on this
items freeform text entry field. Otherwise has no effect.public void deselectValue(java.lang.Boolean start)
useTextField
is true, falls through to
standard deselectValue()
implementation on this
items freeform text entry field. Otherwise has no effect.start
- If this parameter is passed, new cursor insertion position will be moved to the start, rather than the end of this
item's value.public java.lang.String getEnteredValue()
useTextField
is true (otherwise returns the result of
this.getValue()).public FiscalCalendar getFiscalCalendar()
FiscalCalendar
object that will be used by this item's DateChooser.public void selectValue()
useTextField
is true, falls through to
standard selectValue()
implementation on this items
freeform text entry field. Otherwise has no effect.public void setFiscalCalendar()
FiscalCalendar
object that will be used by this item's DateChooser. If
unset, the _link{Date.getFiscalCalendar, global fiscal calendar} is used.public void setFiscalCalendar(FiscalCalendar fiscalCalendar)
FiscalCalendar
object that will be used by this item's DateChooser. If
unset, the _link{Date.getFiscalCalendar, global fiscal calendar} is used.fiscalCalendar
- the fiscal calendar for this chooser, if set, or the global one otherwisepublic void setSelectionRange(int start, int end)
useTextField
is true, falls through to
standard setSelectionRange()
implementation
on this items freeform text entry field. Otherwise has no effect.start
- character index for start of new selectionend
- character index for end of new selectionpublic static void setDefaultProperties(DateItem dateItemProperties)
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.
dateItemProperties
- properties that should be used as new defaults when instances of this class are createdpublic java.util.Date getValueAsDate()
public int[] getSelectionRange()
useTextField
is true, falls through to
standard com.smartgwt.client.widgets.form.fields.FormItem#getSelectionRange
implementation on this items
freeform text entry field. Otherwise has no effect.public void setEditorValueFormatter(FormItemValueFormatter formatter)
FormItemValueFormatter
to map this item's current data
value to a display value. Only applies if setUseTextField(java.lang.Boolean)
is true.
Notes
#setDateFormatter()
already provides support for most standard "short date" formats, so
a completely custom formatter method is often not required.DateUtil
class.#setInputFormat()
or
supply a custom #setEditorValueParser()
When writing custom date formatting and parsing logic, developers may find the
DateTimeFormat
class helpful.
setEditorValueFormatter
in class FormItem
formatter
- the FormItemValueFormatterpublic void setEditorValueParser(FormItemValueParser valueParser)
FormItemValueParser
to map a user-entered display value to a data
value for storage. Only applies if #setUseTextField()
is set to true.
A custom parser function will typically only be required if
a custom formatter is specified via setEditorValueFormatter(FormItemValueFormatter)
. Even then,
you may be able to simply specify an inputFormat
that matches the custom display
format for this item.
System-wide custom date parsing and formatting may be achieved via methods on the DateUtil
class.
When writing custom date formatting and parsing logic, developers may find the
DateTimeFormat
class helpful.
setEditorValueParser
in class FormItem
valueParser
- the FormItemValueParser