com.smartgwt.client.widgets.form.fields
Class DateItem

java.lang.Object
  extended by com.smartgwt.client.core.JsObject
      extended by com.smartgwt.client.core.DataClass
          extended by com.smartgwt.client.core.RefDataClass
              extended by com.smartgwt.client.widgets.form.fields.FormItem
                  extended by com.smartgwt.client.widgets.form.fields.DateItem
All Implemented Interfaces:
HasHandlers, HasBlurHandlers, HasChangedHandlers, HasChangeHandlers, HasClickHandlers, HasDoubleClickHandlers, HasEditorEnterHandlers, HasEditorExitHandlers, HasFocusHandlers, HasIconClickHandlers, HasIconKeyPressHandlers, HasItemHoverHandlers, HasKeyDownHandlers, HasKeyPressHandlers, HasKeyUpHandlers, HasPickerIconClickHandlers, HasTitleClickHandlers, HasTitleDoubleClickHandlers, HasTitleHoverHandlers
Direct Known Subclasses:
DateTimeItem

public class DateItem
extends FormItem

Item for manipulating Dates.

Can be rendered as a text field, or as 3 selects for day, month, year. Includes optional pop-up picker.


Field Summary
 
Fields inherited from class com.smartgwt.client.core.JsObject
jsObj
 
Constructor Summary
DateItem()
           
DateItem(JavaScriptObject jsObj)
           
DateItem(String name)
           
DateItem(String name, String title)
           
 
Method Summary
 void deselectValue()
          If useTextField is true, falls through to standard FormItem.deselectValue implementation on this items freeform text entry field.
 void deselectValue(Boolean start)
          If useTextField is true, falls through to standard FormItem.deselectValue implementation on this items freeform text entry field.
 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 getDaySelectorProperties()
          Custom properties to apply to this dateItem's generated daySelector.
 Date getDefaultChooserDate()
          Default date to show in the date chooser.
 Date getEndDate()
          Maximum date the selectors will allow the user to pick.
 Boolean getEnforceDate()
          Can this field be set to a non-date value [other than null]?
 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 DateChooser.
 String getInputFormat()
          If useTextField is true this property can be used to specify the input format for date strings.
 String getInvalidDateStringMessage()
          Validation error message to display if the user enters an invalid date
 SelectItem getMonthSelectorProperties()
          Custom properties to apply to this dateItem's generated monthSelector.
static DateItem getOrCreateRef(JavaScriptObject jsObj)
           
 String getPickerIconPrompt()
          Prompt to show when the user hovers the mouse over the picker icon for this DateItem.
 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.
 Boolean getShowChooserFiscalYearPicker()
          When set to true, show a button that allows the calendar to be navigated by fiscal year.
 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.
 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 getTextFieldProperties()
          Custom properties to apply to this dateItem's generated textField.
 Boolean getUseSharedPicker()
          When set to true (the default), use a single shared date-picker across all widgets that use one.
 Boolean getUseTextField()
          Should we show the date in a text field, or as 3 select boxes?
 Date getValueAsDate()
          Return the value tracked by this form item.
 SelectItem getYearSelectorProperties()
          Custom properties to apply to this dateItem's generated yearSelector.
 void selectValue()
          If useTextField is true, falls through to standard FormItem.selectValue implementation on this items freeform text entry field.
 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(Date defaultChooserDate)
          Default date to show in the date chooser.
 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 setEndDate(Date endDate)
          Maximum date the selectors will allow the user to pick.
 void setEnforceDate(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(String inputFormat)
          If useTextField is true this property can be used to specify the input format for date strings.
 void setInvalidDateStringMessage(String invalidDateStringMessage)
          Validation error message to display if the user enters an invalid date
 void setJavaScriptObject(JavaScriptObject jsObj)
           
 void setMaskDateSeparator(String maskDateSeparator)
          If useTextField and useMask are both true this value is the separator between date components.
 void setMonthSelectorProperties(SelectItem monthSelectorProperties)
          Custom properties to apply to this dateItem's generated monthSelector.
 void setPickerIconPrompt(String pickerIconPrompt)
          Prompt to show when the user hovers the mouse over the picker icon for this DateItem.
 void setSelectionRange(int start, int end)
          If useTextField is true, falls through to standard FormItem.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(Boolean showChooserFiscalYearPicker)
          When set to true, show a button that allows the calendar to be navigated by fiscal year.
 void setShowChooserWeekPicker(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 setStartDate(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 setUseMask(Boolean useMask)
          If useTextField is not false this property determines if an input mask should be used.
 void setUseSharedPicker(Boolean useSharedPicker)
          When set to true (the default), use a single shared date-picker across all widgets that use one.
 void setUseTextField(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.
 
Methods inherited from class com.smartgwt.client.widgets.form.fields.FormItem
_getValue, addBlurHandler, addChangedHandler, addChangeHandler, addClickHandler, addDoubleClickHandler, addEditorEnterHandler, addEditorExitHandler, addFocusHandler, addIconClickHandler, addIconKeyPressHandler, addItemHoverHandler, addKeyDownHandler, addKeyPressHandler, addKeyUpHandler, addPickerIconClickHandler, addTitleClickHandler, addTitleDoubleClickHandler, addTitleHoverHandler, blurItem, canEditCriterion, clearValue, convertToFormItemArray, disable, enable, focusInItem, getAccessKey, getAlign, getAllowExpressions, getAlwaysFetchMissingValues, getAttribute, getAttributeAsBoolean, getAttributeAsDate, getAttributeAsDouble, getAttributeAsFloat, getAttributeAsInt, getAttributeAsJavaScriptObject, getAttributeAsString, getBrowserSpellCheck, getCanEdit, getCanFocus, getCellHeight, getCellStyle, getClassName, getConfig, getContainerWidget, getCriteriaField, getCriterion, getCriterion, getDataPath, getDecimalPad, getDecimalPrecision, getDefaultIconSrc, getDisabled, getDisableIconsOnReadOnly, getDisplayField, getDisplayFieldName, getDisplayValue, getDisplayValue, getEditorTypeConfig, getEditPendingCSSText, getEmptyDisplayValue, getEmptyValueIcon, getEndRow, getErrorIconHeight, getErrorIconSrc, getErrorIconWidth, getErrorMessageWidth, getFetchMissingValues, getFieldName, getFilterLocally, getForm, getFullDataPath, getGlobalTabIndex, getHeight, getHint, getHintStyle, getHoverAlign, getHoverDelay, getHoverHeight, getHoverOpacity, getHoverStyle, getHoverVAlign, getHoverWidth, getIcon, getIconHeight, getIconPageRect, getIconPrompt, getIconRect, getIconVAlign, getIconWidth, getImageURLPrefix, getImageURLSuffix, getImplicitSave, getImplicitSaveOnBlur, getLeft, getLocateItemBy, getMultipleValueSeparator, getName, getOperator, getOptionCriteria, getOptionFilterContext, getOptionOperationId, getPageLeft, getPageRect, getPageTop, getPickerIconHeight, getPickerIconName, getPickerIconSrc, getPickerIconWidth, getPrintTextBoxStyle, getPrintTitleStyle, getPrompt, getRect, getRedrawOnChange, getRejectInvalidValueOnChange, getRequired, getRequiredMessage, getRowSpan, getSaveOnEnter, getSelectedRecord, getSelectOnFocus, getShouldSaveValue, getShowDisabled, getShowErrorIcon, getShowErrorStyle, getShowErrorText, getShowFocused, getShowFocusedIcons, getShowFocusedPickerIcon, getShowHint, getShowIcons, getShowOverIcons, getShowPickerIcon, getShowTitle, getShowValueIconOnly, getStartRow, getStopOnError, getSuppressValueIcon, getSynchronousValidation, getTabIndex, getTextBoxStyle, getTimeFormatter, getTitle, getTitleAlign, getTitleColSpan, getTitleOrientation, getTitleStyle, getTitleVAlign, getTooltip, getTop, getType, getValidateOnChange, getValidateOnExit, getValidOperators, getVAlign, getValue, getValueField, getValueFieldName, getValueIconHeight, getValueIconLeftPadding, getValueIconRightPadding, getValueIconSize, getValueIconWidth, getVisible, getVisibleHeight, getVisibleWidth, getWidth, getWrapTitle, hasAdvancedCriteria, hide, hideIcon, invalidateDisplayValueCache, isCreated, isDisabled, isDrawn, isVisible, redraw, setAccessKey, setAlign, setAllowExpressions, setAlwaysFetchMissingValues, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setBrowserSpellCheck, setCanEdit, setCanEditCriterionPredicate, setCanFocus, setCellHeight, setCellStyle, setColSpan, setColSpan, setCriteriaField, setCriterion, setCriterionGetter, setCriterionSetter, setDataPath, setDecimalPad, setDecimalPrecision, setDefaultIconSrc, setDefaultValue, setDefaultValue, setDefaultValue, setDefaultValue, setDefaultValue, setDisabled, setDisableIconsOnReadOnly, setDisplayField, setDisplayFormat, setDisplayFormat, setEditorType, setEditPendingCSSText, setEmptyDisplayValue, setEmptyValueIcon, setEndRow, setErrorFormatter, setErrorIconHeight, setErrorIconSrc, setErrorIconWidth, setErrorMessageWidth, setErrorOrientation, setFetchMissingValues, setFilterLocally, setGlobalTabIndex, setHeight, setHeight, setHint, setHintStyle, setHoverAlign, setHoverDelay, setHoverHeight, setHoverOpacity, setHoverStyle, setHoverVAlign, setHoverWidth, setIconHeight, setIconPrompt, setIcons, setIconVAlign, setIconWidth, setImageURLPrefix, setImageURLSuffix, setImplicitSave, setImplicitSaveOnBlur, setInitHandler, setInputTransformer, setItemHoverFormatter, setItemTitleHoverFormatter, setLeft, setLocateItemBy, setMultipleValueSeparator, setName, setOperator, setOptionCriteria, setOptionDataSource, setOptionFilterContext, setOptionOperationId, setPickerIconHeight, setPickerIconName, setPickerIconSrc, setPickerIconWidth, setPrintTextBoxStyle, setPrintTitleStyle, setPrompt, setProperty, setProperty, setProperty, setProperty, setProperty, setRedrawOnChange, setRedrawOnChange, setRejectInvalidValueOnChange, setRequired, setRequiredMessage, setRowSpan, setSaveOnEnter, setSelectOnFocus, setShouldSaveValue, setShowDisabled, setShowErrorIcon, setShowErrorStyle, setShowErrorText, setShowFocused, setShowFocusedIcons, setShowFocusedPickerIcon, setShowHint, setShowIcons, setShowIfCondition, setShowOverIcons, setShowPickerIcon, setShowTitle, setShowValueIconOnly, setStartRow, setStopOnError, setSuppressValueIcon, setSynchronousValidation, setTabIndex, setTextBoxStyle, setTimeFormatter, setTitle, setTitleAlign, setTitleColSpan, setTitleOrientation, setTitleStyle, setTitleVAlign, setTooltip, setTop, setType, setValidateOnChange, setValidateOnExit, setValidators, setValidOperators, setVAlign, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValueField, setValueFormatter, setValueIconHeight, setValueIconLeftPadding, setValueIconMapper, setValueIconRightPadding, setValueIcons, setValueIconSize, setValueIconWidth, setValueMap, setValueMap, setVisible, setWidth, setWidth, setWrapTitle, shouldFetchMissingValue, shouldSaveOnEnter, show, showIcon, showPicker, stopHover, updateState, validate
 
Methods inherited from class com.smartgwt.client.core.RefDataClass
getRef, getRef
 
Methods inherited from class com.smartgwt.client.core.DataClass
doAddHandler, fireEvent, getAttributeAsDoubleArray, getAttributeAsIntArray, getAttributeAsLong, getAttributeAsMap, getAttributeAsObject, getAttributeAsRecord, getAttributeAsStringArray, getAttributes, getHandlerCount, getJsObj, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute
 
Methods inherited from class com.smartgwt.client.core.JsObject
setJsObj
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.google.gwt.event.shared.HasHandlers
fireEvent
 

Constructor Detail

DateItem

public DateItem()

DateItem

public DateItem(JavaScriptObject jsObj)

DateItem

public DateItem(String name)

DateItem

public DateItem(String name,
                String title)
Method Detail

getOrCreateRef

public static DateItem getOrCreateRef(JavaScriptObject jsObj)

setJavaScriptObject

public void setJavaScriptObject(JavaScriptObject jsObj)
Overrides:
setJavaScriptObject in class FormItem

setCenturyThreshold

public void setCenturyThreshold(int centuryThreshold)
Only used if we're showing the date in a text field. When parsing a date, if the year is specified with 1 or 2 digits and is less than the centuryThreshold, then the year will be assumed to be 20xx; otherwise it will be interpreted according to default browser behaviour, which will consider it to be 19xx.

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.

Parameters:
centuryThreshold - centuryThreshold Default value is 25
See Also:
Appearance overview and related methods

getCenturyThreshold

public int getCenturyThreshold()
Only used if we're showing the date in a text field. When parsing a date, if the year is specified with 1 or 2 digits and is less than the centuryThreshold, then the year will be assumed to be 20xx; otherwise it will be interpreted according to default browser behaviour, which will consider it to be 19xx.

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.

Returns:
int
See Also:
Appearance overview and related methods

setDateFormatter

public 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.

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 editorValuePaser

Overrides:
setDateFormatter in class FormItem
Parameters:
dateFormatter - dateFormatter Default value is null
See Also:
FormItem.setTimeFormatter(com.smartgwt.client.types.TimeDisplayFormat), Appearance overview and related methods

getDateFormatter

public 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.

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 editorValuePaser

Overrides:
getDateFormatter in class FormItem
Returns:
DateDisplayFormat
See Also:
FormItem.getTimeFormatter(), Appearance overview and related methods

setDaySelectorProperties

public void setDaySelectorProperties(SelectItem daySelectorProperties)
Custom properties to apply to this dateItem's generated daySelector.

Note : This is an advanced setting

Parameters:
daySelectorProperties - daySelectorProperties Default value is null

getDaySelectorProperties

public SelectItem getDaySelectorProperties()
Custom properties to apply to this dateItem's generated daySelector.

Returns:
SelectItem

setDefaultChooserDate

public void setDefaultChooserDate(Date defaultChooserDate)
Default date to show in the date chooser. If this items value is currently unset, this property may be specified to set a default date to highlight in the dateChooser for this item. If unset, the date chooser will highlight the current date by default. Note that this has no effect if the item as a whole currently has a value - in that case the date chooser will always highlight the current value for the item.

Parameters:
defaultChooserDate - defaultChooserDate Default value is null

getDefaultChooserDate

public Date getDefaultChooserDate()
Default date to show in the date chooser. If this items value is currently unset, this property may be specified to set a default date to highlight in the dateChooser for this item. If unset, the date chooser will highlight the current date by default. Note that this has no effect if the item as a whole currently has a value - in that case the date chooser will always highlight the current value for the item.

Returns:
Returns the default date to display in the date chooser if this form items value is currently unset.

Default implementation returns defaultChooserDate


setEndDate

public void setEndDate(Date endDate)
Maximum date the selectors will allow the user to pick.

See startDate for details on how this restriction works.

Parameters:
endDate - endDate Default value is 12/31/2015
See Also:
Appearance overview and related methods

getEndDate

public Date getEndDate()
Maximum date the selectors will allow the user to pick.

See startDate for details on how this restriction works.

Returns:
java.util.Date
See Also:
Appearance overview and related methods

setEnforceDate

public void setEnforceDate(Boolean enforceDate)
Can this field be set to a non-date value [other than null]?

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 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.

Note : This is an advanced setting

Parameters:
enforceDate - enforceDate Default value is false

getEnforceDate

public Boolean getEnforceDate()
Can this field be set to a non-date value [other than null]?

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 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.

Returns:
Boolean

setInputFormat

public void setInputFormat(String inputFormat)
If 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 dateFormtter 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 implement a custom DateItem.parseEditorValue method. apply a custom editorValueParser function.

Overrides:
setInputFormat in class FormItem
Parameters:
inputFormat - . See DateInputFormat. Default value is null
See Also:
FormItem.setDisplayFormat(com.smartgwt.client.types.DateDisplayFormat)

getInputFormat

public String getInputFormat()
If 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 dateFormtter 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 implement a custom DateItem.parseEditorValue method. apply a custom editorValueParser function.

Overrides:
getInputFormat in class FormItem
Returns:
If 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, the input format will be automatically derived from the dateFormatter property.

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

See Also:
com.smartgwt.client.widgets.form.fields.DateItem#getDisplayFormat

setInvalidDateStringMessage

public void setInvalidDateStringMessage(String invalidDateStringMessage)
Validation error message to display if the user enters an invalid date

Parameters:
invalidDateStringMessage - . See String. Default value is "Invalid date"

getInvalidDateStringMessage

public String getInvalidDateStringMessage()
Validation error message to display if the user enters an invalid date

Returns:
. See String

setMaskDateSeparator

public void setMaskDateSeparator(String maskDateSeparator)
If useTextField and useMask are both true this value is the separator between date components. If unset getDefaultSeparator will be used.

Note : This is an advanced setting

Parameters:
maskDateSeparator - . See String. Default value is null
See Also:
Basics overview and related methods

setMonthSelectorProperties

public void setMonthSelectorProperties(SelectItem monthSelectorProperties)
Custom properties to apply to this dateItem's generated monthSelector.

Note : This is an advanced setting

Parameters:
monthSelectorProperties - monthSelectorProperties Default value is null

getMonthSelectorProperties

public SelectItem getMonthSelectorProperties()
Custom properties to apply to this dateItem's generated monthSelector.

Returns:
SelectItem

setPickerIconPrompt

public void setPickerIconPrompt(String pickerIconPrompt)
Prompt to show when the user hovers the mouse over the picker icon for this DateItem. May be overridden for localization of your application.

Overrides:
setPickerIconPrompt in class FormItem
Parameters:
pickerIconPrompt - . See String. Default value is "Show Date Chooser"

getPickerIconPrompt

public String getPickerIconPrompt()
Prompt to show when the user hovers the mouse over the picker icon for this DateItem. May be overridden for localization of your application.

Overrides:
getPickerIconPrompt in class FormItem
Returns:
. See String

setSelectorFormat

public 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. 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.

Parameters:
selectorFormat - selectorFormat Default value is null

getSelectorFormat

public 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. 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.

Returns:
DateItemSelectorFormat

setShowChooserFiscalYearPicker

public void setShowChooserFiscalYearPicker(Boolean showChooserFiscalYearPicker)
When set to true, show a button that allows the calendar to be navigated by fiscal year.

Parameters:
showChooserFiscalYearPicker - showChooserFiscalYearPicker Default value is false

getShowChooserFiscalYearPicker

public Boolean getShowChooserFiscalYearPicker()
When set to true, show a button that allows the calendar to be navigated by fiscal year.

Returns:
Boolean

setShowChooserWeekPicker

public void setShowChooserWeekPicker(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.

Parameters:
showChooserWeekPicker - showChooserWeekPicker Default value is false

getShowChooserWeekPicker

public 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.

Returns:
Boolean

setStartDate

public void setStartDate(Date startDate)
Minimum date the selectors will allow the user to pick.

NOTE: by design, setting startDate and endDate will not always prevent the user from picking invalid values. In particular:

  • the set of available days will only be restricted if the start and end dates fall within the same month
  • the set of available months will only be restricted if the start and end dates fall within the same year

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.

Parameters:
startDate - startDate Default value is 1/1/1995
See Also:
Appearance overview and related methods

getStartDate

public Date getStartDate()
Minimum date the selectors will allow the user to pick.

NOTE: by design, setting startDate and endDate will not always prevent the user from picking invalid values. In particular:

  • the set of available days will only be restricted if the start and end dates fall within the same month
  • the set of available months will only be restricted if the start and end dates fall within the same year

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.

Returns:
java.util.Date
See Also:
Appearance overview and related methods

setTextAlign

public void setTextAlign(Alignment textAlign)
If 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.

Overrides:
setTextAlign in class FormItem
Parameters:
textAlign - textAlign Default value is varies
See Also:
Appearance overview and related methods

getTextAlign

public Alignment getTextAlign()
If 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.

Overrides:
getTextAlign in class FormItem
Returns:
Alignment
See Also:
Appearance overview and related methods

setTextFieldProperties

public void setTextFieldProperties(TextItem textFieldProperties)
Custom properties to apply to this dateItem's generated textField. Only applies if useTextField is true.

Note : This is an advanced setting

Parameters:
textFieldProperties - textFieldProperties Default value is null

getTextFieldProperties

public TextItem getTextFieldProperties()
Custom properties to apply to this dateItem's generated textField. Only applies if useTextField is true.

Returns:
TextItem

setUseMask

public void setUseMask(Boolean useMask)
If 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).

Note : This is an advanced setting

Parameters:
useMask - useMask Default value is null
See Also:
setMaskDateSeparator(java.lang.String), Basics overview and related methods

setUseSharedPicker

public void setUseSharedPicker(Boolean useSharedPicker)
When set to true (the default), use a single shared date-picker across all widgets that use one. When false, create a new picker using the autoChild system. See picker and pickerProperties for details on setting up an unshared picker.

Parameters:
useSharedPicker - useSharedPicker Default value is true

getUseSharedPicker

public Boolean getUseSharedPicker()
When set to true (the default), use a single shared date-picker across all widgets that use one. When false, create a new picker using the autoChild system. See picker and pickerProperties for details on setting up an unshared picker.

Returns:
Boolean

setUseTextField

public void setUseTextField(Boolean useTextField)
Should we show the date in a text field, or as 3 select boxes?

Parameters:
useTextField - useTextField Default value is null
See Also:
Basics overview and related methods, Date Example

getUseTextField

public Boolean getUseTextField()
Should we show the date in a text field, or as 3 select boxes?

Returns:
Boolean
See Also:
Basics overview and related methods, Date Example

setYearSelectorProperties

public void setYearSelectorProperties(SelectItem yearSelectorProperties)
Custom properties to apply to this dateItem's generated yearSelector.

Note : This is an advanced setting

Parameters:
yearSelectorProperties - yearSelectorProperties Default value is null

getYearSelectorProperties

public SelectItem getYearSelectorProperties()
Custom properties to apply to this dateItem's generated yearSelector.

Returns:
SelectItem

deselectValue

public void deselectValue()
If useTextField is true, falls through to standard FormItem.deselectValue implementation on this items freeform text entry field. Otherwise has no effect.


deselectValue

public void deselectValue(Boolean start)
If useTextField is true, falls through to standard FormItem.deselectValue implementation on this items freeform text entry field. Otherwise has no effect.

Parameters:
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.

getEnteredValue

public String getEnteredValue()
Returns the raw text value typed into this items text field if useTextField is true (otherwise returns the result of this.getValue()).

Returns:
value the user entered

getFiscalCalendar

public FiscalCalendar getFiscalCalendar()
Returns the FiscalCalendar object that will be used by this DateChooser.

Returns:
the fiscal calendar for this chooser, if set, or the global one otherwise

selectValue

public void selectValue()
If useTextField is true, falls through to standard FormItem.selectValue implementation on this items freeform text entry field. Otherwise has no effect.


setFiscalCalendar

public void setFiscalCalendar()
Sets the FiscalCalendar object that will be used by this item's DateChooser. If unset, the _link{Date.getFiscalCalendar, global fiscal calendar} is used.


setFiscalCalendar

public void setFiscalCalendar(FiscalCalendar fiscalCalendar)
Sets the FiscalCalendar object that will be used by this item's DateChooser. If unset, the _link{Date.getFiscalCalendar, global fiscal calendar} is used.

Parameters:
fiscalCalendar - the fiscal calendar for this chooser, if set, or the global one otherwise

setSelectionRange

public void setSelectionRange(int start,
                              int end)
If useTextField is true, falls through to standard FormItem.setSelectionRange implementation on this items freeform text entry field. Otherwise has no effect.

Parameters:
start - character index for start of new selection
end - character index for end of new selection

getValueAsDate

public Date getValueAsDate()
Return the value tracked by this form item.

Returns:
value of this element

getSelectionRange

public 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. Otherwise has no effect.

Returns:
2 element array indicating start/end character index of current selection within our text entry field. Returns null if this item is undrawn or doesn't have focus.

setEditorValueFormatter

public void setEditorValueFormatter(FormItemValueFormatter formatter)
An optional 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.
  • System-wide custom date formatting and parsing may be achieved via methods on the DateUtil class.
  • When a custom formatter is specified, you may also need to modify the #setInputFormat() or supply a custom #setEditorValueParser()

When writing custom date formatting and parsing logic, developers may find the DateTimeFormat class helpful.

Overrides:
setEditorValueFormatter in class FormItem
Parameters:
formatter - the FormItemValueFormatter

setEditorValueParser

public void setEditorValueParser(FormItemValueParser valueParser)
An optional 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 setInputFormat(),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.

Overrides:
setEditorValueParser in class FormItem
Parameters:
valueParser - the FormItemValueParser