public class DateRangeItem extends CanvasItem
RelativeDateItem
s (if allowRelativeDates
is true) or two DateItems
. The item's data type
is expected to be one of "date" or "datetime" and
dictates whether the dates in the range include a time portion. If unset and the item's form is databound, the data
type is detected from the associated dataSource field
. If there is no
such field, or the form is not databound, the default data type value is "date".
DateRangeItem is just a
convenience relative to using two RelativeDateItem
or DateItem
controls in a form, then using operator
and criteriaField
to cause them to produce a date range.
If you need more control over layout, validation, event handling or any other aspect of appearance or behavior, stop
using DateRangeItem and use two DateItem/RelativeDateItem controls directly instead.
scClassName
id
factoryCreated, factoryProperties
Constructor and Description |
---|
DateRangeItem() |
DateRangeItem(JavaScriptObject jsObj) |
DateRangeItem(java.lang.String name) |
DateRangeItem(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) |
java.lang.String |
getAbsoluteDateTimeItemConstructor()
The
FormItem class to create when allowRelativeDates is false, and the DateRangeItem 's type is "datetime". |
java.lang.String |
getAbsoluteItemConstructor()
The
FormItem class to create when allowRelativeDates is false, but the DateRangeItem does not have type "datetime". |
java.lang.Boolean |
getAllowRelativeDates()
Whether to allow the user to specify relative dates (via
RelativeDateItem s) or whether dates are absolute (via DateItem s). |
DynamicForm |
getDateRangeForm()
DynamicForm com.smartgwt.client.types.AutoChild automatically created
by the dateRangeItem and applied to the item as this.canvas . |
DateFieldLayout |
getFieldLayout()
|
java.util.Date |
getFromDate()
Initial value for the "from" date.
|
FormItem |
getFromField()
|
java.lang.String |
getFromTitle()
The title for the
from part of the range. |
TitleOrientation |
getInnerTitleOrientation()
The title orientation for the to / from sub-items.
|
java.lang.String |
getInputFormat()
For fields of type
"date" , if this is an editable field such as a TextItem , this property allows you to specify the inputFormat applied to the item. |
java.lang.String |
getInvalidRangeErrorMessage()
Error message to display if the user enters a date range where the "To" field value is earlier than the "From" field
value.
|
static DateRangeItem |
getOrCreateRef(JavaScriptObject jsObj) |
java.lang.String |
getRelativeItemConstructor()
The
FormItem class to create when allowRelativeDates is true. |
java.lang.Boolean |
getShouldSaveValue()
Allow dateRangeItems' values to show up in the form's values array, or if
DynamicForm.getValuesAsCriteria() is called, for the
criterion to be included in the returned AdvancedCriteria object |
java.util.Date |
getToDate()
Initial value for the "to" date.
|
java.lang.String |
getToDateAsString()
Initial value for the "to" date.
|
TimeUnit |
getToDateAsTimeUnit()
Initial value for the "to" date.
|
FormItem |
getToField()
|
java.lang.String |
getToTitle()
The title for the
to part of the range. |
java.lang.Boolean |
getValidateCriteria()
If this attribute is set to
true when getCriteria() is called, the item will validate the
"to" and "from" fields and return null if either field fails validation. |
DateRange |
getValue()
Retrieves the current value of this dateRangeItem.
|
java.lang.Boolean |
hasAdvancedCriteria()
Overridden to return true: dateRangeItems always generate AdvancedCriteria.
|
void |
setAllowRelativeDates(java.lang.Boolean allowRelativeDates)
Whether to allow the user to specify relative dates (via
RelativeDateItem s) or whether dates are absolute (via DateItem s). |
void |
setCanEditCriterionPredicate(FormItemCanEditCriterionPredicate predicate)
The default
canEditCriterion() predicate returns true if the specified criterion contains:
A single "lessOrEqual" or "greaterOrEqual" criterion on this
field An "and" type criterion containing a "lessOrEqual" and a "greaterOrEqual" criterion on this
field A single "equals" criterion. |
void |
setCriterionSetter(FormItemCriterionSetter setter)
The default
setCriterion() implementation applies the specified criterion to this item for editing. |
static void |
setDefaultProperties(DateRangeItem dateRangeItemProperties)
Class level method to set the default properties of this class.
|
void |
setFieldLayout(DateFieldLayout fieldLayout)
|
void |
setFromDate(java.util.Date fromDate)
Initial value for the "from" date.
|
void |
setFromTitle(java.lang.String fromTitle)
The title for the
from part of the range. |
void |
setInnerTitleOrientation(TitleOrientation innerTitleOrientation)
The title orientation for the to / from sub-items.
|
void |
setInputFormat(java.lang.String inputFormat)
For fields of type
"date" , if this is an editable field such as a TextItem , this property allows you to specify the inputFormat applied to the item. |
void |
setInvalidRangeErrorMessage(java.lang.String invalidRangeErrorMessage)
Error message to display if the user enters a date range where the "To" field value is earlier than the "From" field
value.
|
void |
setShouldSaveValue(java.lang.Boolean shouldSaveValue)
Allow dateRangeItems' values to show up in the form's values array, or if
DynamicForm.getValuesAsCriteria() is called, for the
criterion to be included in the returned AdvancedCriteria object |
void |
setToDate(java.util.Date toDate)
Initial value for the "to" date.
|
void |
setToDate(java.lang.String toDate)
Initial value for the "to" date.
|
void |
setToDate(TimeUnit toDate)
Initial value for the "to" date.
|
void |
setToTitle(java.lang.String toTitle)
The title for the
to part of the range. |
void |
setValidateCriteria(java.lang.Boolean validateCriteria)
If this attribute is set to
true when getCriteria() is called, the item will validate the
"to" and "from" fields and return null if either field fails validation. |
void |
setValue(DateRange value)
Sets the value for this dateRangeItem.
|
java.lang.Boolean |
validateRange()
Validate both "to" and "from" date-fields.
|
addCanEditChangedHandler, addReadOnlyDisplayChangedHandler, addShowValueHandler, createCanvas, getApplyPromptToCanvas, getAutoDestroy, getCanvas, getEditCriteriaInInnerForm, getHeight, getHeightAsString, getMultiple, getOverflow, getPrompt, setApplyPromptToCanvas, setAutoDestroy, setCanvas, setCriterionGetter, setDefaultProperties, setEditCriteriaInInnerForm, setHeight, setHeight, setMultiple, 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, 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, getDateFormatter, getDecimalPad, getDecimalPrecision, getDefaultIconSrc, getDisabled, getDisableIconsOnReadOnly, getDisplayField, getDisplayFieldName, getDisplayValue, getDisplayValue, getEditorTypeConfig, getEditPendingCSSText, getEditProxyConstructor, getEmptyDisplayValue, getEmptyValueIcon, getEndRow, getErrorIconHeight, getErrorIconSrc, getErrorIconWidth, getErrorMessageWidth, getExportFormat, getFetchMissingValues, getFieldName, getFilterLocally, getForeignDisplayField, 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, 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, getStaticHeight, getStopOnError, getSuppressValueIcon, getSynchronousValidation, getTabIndex, getTextAlign, getTextBoxStyle, getTimeFormatter, getTitle, getTitleAlign, getTitleColSpan, getTitleOrientation, getTitleStyle, getTitleVAlign, getTooltip, getTop, getType, getValidateOnChange, getValidateOnExit, getValidOperators, getVAlign, getValueAsRecordList, getValueField, getValueFieldName, getValueIconHeight, getValueIconLeftPadding, getValueIconRightPadding, getValueIconSize, getValueIconWidth, getVisible, getVisibleHeight, getVisibleWidth, getWidth, getWidthAsString, getWrapTitle, 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, 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, setEditProxyConstructor, setEmptyDisplayValue, setEmptyValueIcon, setEndRow, setErrorFormatter, setErrorIconHeight, setErrorIconSrc, setErrorIconWidth, setErrorMessageWidth, setErrorOrientation, setExportFormat, setFetchMissingValues, setFilterLocally, setForeignDisplayField, setFormat, setGlobalTabIndex, 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, 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, setStaticHeight, 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
applyFactoryProperties, doAddHandler, fireEvent, getAttributeAsDoubleArray, getAttributeAsIntArray, getAttributeAsLong, getAttributeAsMap, getAttributeAsObject, getAttributeAsRecord, getAttributeAsStringArray, getAttributes, getHandlerCount, isFactoryCreated, setAttribute, setAttribute, setAttribute, setAttributeAsJavaObject, setFactoryCreated
equals, getJsObj, hashCode, setJavaScriptObject, setJsObj
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
fireEvent
public DateRangeItem()
public DateRangeItem(JavaScriptObject jsObj)
public DateRangeItem(java.lang.String name)
public DateRangeItem(java.lang.String name, java.lang.String title)
public static DateRangeItem getOrCreateRef(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 java.lang.String getAbsoluteDateTimeItemConstructor()
FormItem
class to create when allowRelativeDates
is false, and the DateRangeItem
's type is "datetime".FieldType
public java.lang.String getAbsoluteItemConstructor()
FormItem
class to create when allowRelativeDates
is false, but the DateRangeItem
does not have type "datetime".FieldType
public void setAllowRelativeDates(java.lang.Boolean allowRelativeDates)
RelativeDateItem
s) or whether dates are absolute (via DateItem
s).allowRelativeDates
- Default value is falsepublic java.lang.Boolean getAllowRelativeDates()
RelativeDateItem
s) or whether dates are absolute (via DateItem
s).public DynamicForm getDateRangeForm()
DynamicForm
com.smartgwt.client.types.AutoChild
automatically created
by the dateRangeItem and applied to the item as this.canvas
. This DynamicForm contains the "from" and "to" fields the user will interact with to actually select a
date-range. Note that as a standard autoChild, developers may customize this form by modifying
dateRangeProperties
.
For an overview of how to use and configure AutoChildren, see Using AutoChildren
.
public void setFieldLayout(DateFieldLayout fieldLayout)
toField
and
fromField
in the dateRangeForm
. Note that we don't recommend
"horizontal" placement for mobile, and we also don't recommend it for allowRelativeDates
mode, since RelativeDateItem
changes width drastically during editing, which causes a lot
of unpleasant side-to-side shifting of controls.
fieldLayout
- Default value is "vertical"public DateFieldLayout getFieldLayout()
toField
and
fromField
in the dateRangeForm
. Note that we don't recommend
"horizontal" placement for mobile, and we also don't recommend it for allowRelativeDates
mode, since RelativeDateItem
changes width drastically during editing, which causes a lot
of unpleasant side-to-side shifting of controls.
public FormItem getFromField()
RelativeDateItem
or DateItem
according to allowRelativeDates
.
For an overview of how to use and configure AutoChildren, see Using AutoChildren
.
public void setFromTitle(java.lang.String fromTitle)
from
part of the range.fromTitle
- Default value is "From"public java.lang.String getFromTitle()
from
part of the range.public void setInnerTitleOrientation(TitleOrientation innerTitleOrientation)
this.titleOrientation
or this.form.titleOrientation
.innerTitleOrientation
- Default value is nullpublic TitleOrientation getInnerTitleOrientation()
this.titleOrientation
or this.form.titleOrientation
.public void setInputFormat(java.lang.String inputFormat)
"date"
, if this is an editable field such as a TextItem
, this property allows you to specify the inputFormat
applied to the item.setInputFormat
in class FormItem
inputFormat
- See DateInputFormat
. Default value is nullFormItem.setDateFormatter(com.smartgwt.client.types.DateDisplayFormat)
public java.lang.String getInputFormat()
"date"
, if this is an editable field such as a TextItem
, this property allows you to specify the inputFormat
applied to the item.getInputFormat
in class FormItem
DateInputFormat
FormItem.getDateFormatter()
public void setInvalidRangeErrorMessage(java.lang.String invalidRangeErrorMessage)
invalidRangeErrorMessage
- Default value is '"To" field value cannot be earlier than "From" field value.'public java.lang.String getInvalidRangeErrorMessage()
public java.lang.String getRelativeItemConstructor()
FormItem
class to create when allowRelativeDates
is true.public void setShouldSaveValue(java.lang.Boolean shouldSaveValue)
DynamicForm.getValuesAsCriteria()
is called, for the
criterion to be included in the returned AdvancedCriteria objectsetShouldSaveValue
in class CanvasItem
shouldSaveValue
- Default value is truepublic java.lang.Boolean getShouldSaveValue()
DynamicForm.getValuesAsCriteria()
is called, for the
criterion to be included in the returned AdvancedCriteria objectgetShouldSaveValue
in class CanvasItem
public void setToDate(java.util.Date toDate)
toDate
for this DateRangeItem.toDate
- the date at which this item should end it's range. Default value is todaypublic java.util.Date getToDate()
public void setToDate(java.lang.String toDate)
toDate
for this DateRangeItem.toDate
- the date at which this item should end it's range See RelativeDateString
. Default value is todaypublic java.lang.String getToDateAsString()
RelativeDateString
public void setToDate(TimeUnit toDate)
toDate
for this DateRangeItem.toDate
- the date at which this item should end it's range. Default value is todaypublic TimeUnit getToDateAsTimeUnit()
public FormItem getToField()
RelativeDateItem
or DateItem
according to allowRelativeDates
.
For an overview of how to use and configure AutoChildren, see Using AutoChildren
.
public void setToTitle(java.lang.String toTitle)
to
part of the range.toTitle
- Default value is "To"public java.lang.String getToTitle()
to
part of the range.public void setValidateCriteria(java.lang.Boolean validateCriteria)
true
when getCriteria()
is called, the item will validate the
"to" and "from" fields and return null if either field fails validation. See DateRangeItem.validateRange()
validateCriteria
- Default value is falsepublic java.lang.Boolean getValidateCriteria()
true
when getCriteria()
is called, the item will validate the
"to" and "from" fields and return null if either field fails validation. See DateRangeItem.validateRange()
public java.lang.Boolean hasAdvancedCriteria()
hasAdvancedCriteria
in class CanvasItem
CriteriaEditing overview and related methods
public java.lang.Boolean validateRange()
public static void setDefaultProperties(DateRangeItem dateRangeItemProperties)
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.
dateRangeItemProperties
- properties that should be used as new defaults when instances of this class are createdpublic void setFromDate(java.util.Date fromDate)
fromDate
for this DateRangeItem.fromDate
- the date from which this item should start it's range. Default value is todaypublic java.util.Date getFromDate()
public DateRange getValue()
DateRange
object that excludes start and end values if they aren't set.public void setValue(DateRange value)
DateRange
object
that optionally includes both start and end values.value
- the new value for this itempublic void setCanEditCriterionPredicate(FormItemCanEditCriterionPredicate predicate)
canEditCriterion()
predicate returns true if the specified criterion contains:
FormItemCriterionGetter
's
getCriterion()
method will return this more complex criterion.setCanEditCriterionPredicate
in class CanvasItem
predicate
- the predicate to determine the form items that can edit the criterion in questionFormItem.setCanEditCriterionPredicate
,
CriteriaEditing overview and related methods
public void setCriterionSetter(FormItemCriterionSetter setter)
setCriterion()
implementation applies the specified criterion to this item for editing.
Applies any specified "greaterOrEqual" operator criterion or
sub-criterion to our fromField
and any
specified "lessOrEqual" operator criterion or sub-criterion to our toField
. Note that a single "equals" criterion can
also be passed. See setCanEditCriterionPredicate()
for more detail.
setCriterionSetter
in class CanvasItem
setter
- provides a method to update this field with the edited criterion