com.extjs.gxt.ui.client.widget.form
Class TimeField

java.lang.Object
  extended by com.google.gwt.user.client.ui.UIObject
      extended by com.google.gwt.user.client.ui.Widget
          extended by com.extjs.gxt.ui.client.widget.Component
              extended by com.extjs.gxt.ui.client.widget.BoxComponent
                  extended by com.extjs.gxt.ui.client.widget.form.Field<D>
                      extended by com.extjs.gxt.ui.client.widget.form.TextField<D>
                          extended by com.extjs.gxt.ui.client.widget.form.TriggerField<D>
                              extended by com.extjs.gxt.ui.client.widget.form.ComboBox<Time>
                                  extended by com.extjs.gxt.ui.client.widget.form.TimeField
All Implemented Interfaces:
Observable, SelectionProvider<Time>, com.google.gwt.event.logical.shared.HasAttachHandlers, com.google.gwt.event.shared.HasHandlers, com.google.gwt.user.client.EventListener, com.google.gwt.user.client.ui.IsWidget

public class TimeField
extends ComboBox<Time>

Provides a time input field with a time dropdown and automatic time validation.

The model used by TimeField is @link Time. An instance of Time is used with ComboBox.setValue(D) and ComboBox.getValue(). Use setDateValue(Date) and getDateValue() to work with Dates. When using dates, the Time instance will match exact matches of hours and Minutes and will match times between to entries. Code Snippet.

 TimeField field = new TimeField();
 
 DateWrapper wrap = new DateWrapper(1970, 1, 1);
 wrap = wrap.clearTime();
 wrap = wrap.addHours(4);
 
 field.setMinValue(wrap.asDate());
 field.setDateValue(new Date());
 
 Time time = field.getValue();
 Date d = time.getDate();
 
 Time match = field.findModel(new Date());
 field.setValue(match);
 
Events:
Expand : FieldEvent(field)
Fires when the dropdown list is expanded.
Collapse : FieldEvent(field)
Fires when the dropdown list is collapsed.
BeforeSelect : FieldEvent(field)
Fires before a list item is selected.
Select : FieldEvent(field)
Fires when a list item is selected.
Inherited Events:
Field Focus
Field Blur
Field Change
Field Invalid
Field Valid
Field KeyPress
Field SpecialKey
TriggerField TriggerClick

See Also:
Time

Nested Class Summary
 class TimeField.TimeFieldMessages
          TimeField error messages.
 
Nested classes/interfaces inherited from class com.extjs.gxt.ui.client.widget.form.ComboBox
ComboBox.ComboBoxMessages, ComboBox.TriggerAction
 
Nested classes/interfaces inherited from class com.extjs.gxt.ui.client.widget.form.TextField
TextField.TextFieldMessages
 
Nested classes/interfaces inherited from class com.extjs.gxt.ui.client.widget.form.Field
Field.FieldImages, Field.FieldMessages
 
Nested classes/interfaces inherited from class com.google.gwt.user.client.ui.UIObject
com.google.gwt.user.client.ui.UIObject.DebugIdImpl, com.google.gwt.user.client.ui.UIObject.DebugIdImplEnabled
 
Field Summary
 
Fields inherited from class com.extjs.gxt.ui.client.widget.form.ComboBox
autoComplete, delayedCheck, lastQuery, pageSize, pageTb, store
 
Fields inherited from class com.extjs.gxt.ui.client.widget.form.TriggerField
focusEventPreview, mimicing, trigger, triggerStyle
 
Fields inherited from class com.extjs.gxt.ui.client.widget.form.TextField
emptyStyle, impl, input, validator
 
Fields inherited from class com.extjs.gxt.ui.client.widget.form.Field
autoValidate, emptyText, errorIcon, fieldStyle, focusStyle, focusValue, forceInvalidText, hasFocus, images, invalidStyle, messages, name, originalValue, preventMark, propertyEditor, readOnly, readOnlyFieldStyle, validationDelay, validationTask, value
 
Fields inherited from class com.extjs.gxt.ui.client.widget.BoxComponent
adjustSize, cacheSizes, ensureVisibilityOnSizing, height, lastSize, layer, shim, width
 
Fields inherited from class com.extjs.gxt.ui.client.widget.Component
afterRender, attachables, baseStyle, disabled, disabledStyle, disableTextSelection, dummy, focusable, hidden, mask, maskMessage, maskMessageStyleName, monitorWindowResize, rendered, resizeHandler, setElementRender, stateId, swallowEvents, toolTip, windowResizeDelay, windowResizeTask
 
Fields inherited from class com.google.gwt.user.client.ui.UIObject
DEBUG_ID_PREFIX
 
Constructor Summary
TimeField()
          Creates a new time field.
 
Method Summary
 Time findModel(java.util.Date date)
          Returns the matching Time for the given date.
 Time findModel(int hours, int minutes)
          Return the matching Time for the given time.
 java.util.Date getDateValue()
          Returns the current date value.
 com.google.gwt.i18n.client.DateTimeFormat getFormat()
          Returns the date time format.
 int getIncrement()
          Returns the number of minutes between each time value.
 java.util.Date getMaxValue()
          Returns the field's max value.
 TimeField.TimeFieldMessages getMessages()
          Returns the field's messages.
 java.util.Date getMinValue()
          Returns the fields minimum value.
protected  void initList()
           
protected  void onRender(com.google.gwt.user.client.Element parent, int index)
          Subclasses must override and ensure setElement is called for lazy rendered components.
 void setDateValue(java.util.Date date)
          Sets the field's value from a date.
 void setFormat(com.google.gwt.i18n.client.DateTimeFormat format)
          Sets the date time format used to format each entry (defaults to DateTimeFormat.getShortDateFormat().
 void setIncrement(int increment)
          Sets the number of minutes between each time value in the list (defaults to 15).
 void setMaxValue(java.util.Date value)
          Sets the field's max value.
 void setMinValue(java.util.Date value)
          The minimum allowed time (no default value).
 
Methods inherited from class com.extjs.gxt.ui.client.widget.form.ComboBox
addSelectionChangedListener, clear, clearSelections, collapse, collapseIf, createPagingToolBar, doForce, doQuery, expand, findModel, fireKey, getAlignElement, getAllQuery, getDisplayField, getFocusEl, getForceSelection, getItemSelector, getListAlign, getListStyle, getListView, getLoadingText, getMaxHeight, getMinChars, getMinListWidth, getPageSize, getPagingToolBar, getParams, getPropertyEditor, getQueryDelay, getSelectedStyle, getSelection, getStore, getTemplate, getTriggerAction, getTypeAheadDelay, getValue, getValueField, getView, hasFocus, initComponent, isExpanded, isLazyRender, isTypeAhead, isUseQueryCache, onBeforeLoad, onDetach, onEmptyResults, onKeyDown, onKeyUp, onLoad, onSelect, onTriggerClick, onTypeAhead, onUpdate, onViewClick, onWindowResize, removeSelectionListener, reset, restrict, select, select, selectByValue, setAllQuery, setDisplayField, setExpanded, setForceSelection, setItemSelector, setLazyRender, setListAlign, setListStyle, setLoadingText, setMaxHeight, setMinChars, setMinListWidth, setPageSize, setPropertyEditor, setQueryDelay, setRawValue, setSelectedStyle, setSelection, setSimpleTemplate, setStore, setTemplate, setTemplate, setTriggerAction, setTypeAhead, setTypeAheadDelay, setUseQueryCache, setValue, setValueField, setView, triggerBlur, unsetDelayCheck, validateBlur, validateValue
 
Methods inherited from class com.extjs.gxt.ui.client.widget.form.TriggerField
adjustInputSize, afterRender, beforeBlur, getTriggerStyle, isEditable, isHideTrigger, isMonitorTab, mimicBlur, onBlur, onClick, onDisable, onEnable, onFocus, onResize, setEditable, setHideTrigger, setMonitorTab, setReadOnly, setTriggerStyle
 
Methods inherited from class com.extjs.gxt.ui.client.widget.form.TextField
applyEmptyText, getAllowBlank, getCursorPos, getInputEl, getMaxLength, getMinLength, getRegex, getSelectedText, getSelectionLength, getSelectOnFocus, getStyleEl, getValidator, isPassword, onComponentEvent, removeEmptyText, select, selectAll, setAllowBlank, setAriaState, setCursorPos, setEmptyText, setMaxLength, setMinLength, setPassword, setRegex, setSelectionRange, setSelectOnFocus, setValidator
 
Methods inherited from class com.extjs.gxt.ui.client.widget.form.Field
addInputStyleName, addKeyListener, alignErrorIcon, clearInvalid, createComponentEvent, doDetachChildren, findLabelElement, fireChangeEvent, focus, forceInvalid, getAutoValidate, getEmptyText, getErrorMessage, getFieldLabel, getImages, getLabelSeparator, getLabelStyle, getMessageTarget, getName, getOriginalValue, getRawValue, getValidateOnBlur, getValidationDelay, initValue, isDirty, isFireChangeEventOnSetValue, isHideLabel, isInEditor, isReadOnly, isValid, isValid, markInvalid, onHide, onKeyPress, onShow, removeInputStyleName, removeKeyListener, setAutoValidate, setFieldLabel, setFireChangeEventOnSetValue, setHideLabel, setImages, setInEditor, setInputStyleAttribute, setLabelSeparator, setLabelStyle, setMessages, setMessageTarget, setName, setOriginalValue, setTabIndex, setValidateOnBlur, setValidationDelay, updateOriginalValue, validate, validate
 
Methods inherited from class com.extjs.gxt.ui.client.widget.BoxComponent
adjustPosition, adjustSize, getBounds, getHeight, getHeight, getPosition, getPositionEl, getResizeEl, getShadow, getShadowOffset, getShadowPosition, getSize, getWidth, getWidth, hideShadow, hideShim, hideUnders, isAutoHeight, isAutoWidth, isDeferHeight, isShim, onPosition, onUnload, setAutoHeight, setAutoWidth, setBounds, setBounds, setDeferHeight, setHeight, setHeight, setPagePosition, setPagePosition, setPixelSize, setPosition, setShadow, setShadowOffset, setShadowPosition, setShim, setSize, setSize, setWidth, setWidth, sync, syncSize
 
Methods inherited from class com.extjs.gxt.ui.client.widget.Component
addAttachable, addListener, addPlugin, addStyleName, addStyleOnOver, addWidgetListener, applyState, assertAfterRender, assertPreRender, beforeRender, blur, clearState, createObservable, createStyles, disable, disableContextMenu, disableEvents, disableTextSelection, doAttachChildren, el, enable, enableEvents, fireEvent, fireEvent, fireEvent, fly, frame, getAriaSupport, getBaseStyle, getBorders, getContextMenu, getData, getElement, getFocusSupport, getHideMode, getId, getItemId, getListeners, getModel, getObservable, getPlugins, getState, getStateId, getTabIndex, getTitle, getToolTip, getWindowResizeDelay, hasListeners, hasListeners, hide, hideToolTip, initState, isDisabledEvents, isDisableTextSelection, isEnabled, isMasked, isMonitorWindowResize, isRendered, isStateful, isVisible, isVisible, mask, mask, mask, notifyHide, notifyShow, onAttach, onBrowserEvent, onDetachHelper, onEnsureDebugId, onHideContextMenu, onLoad, onRightClick, onShowContextMenu, previewEvent, recalculate, removeAllListeners, removeAttachagle, removeFromParent, removeListener, removeStyleName, removeStyleOnOver, removeSwallow, removeToolTip, removeWidgetListener, render, render, repaint, saveState, setAriaRole, setAriaSupport, setBorders, setContextMenu, setData, setEl, setElement, setElement, setEnabled, setFiresEvents, setHideMode, setId, setIntStyleAttribute, setItemId, setModel, setMonitorWindowResize, setParent, setStateful, setStateId, setStyleAttribute, setStyleName, setTitle, setToolTip, setToolTip, setVisible, setWindowResizeDelay, setZIndex, show, sinkEvents, swallowEvent, swallowEvent, toString, unframe, unmask
 
Methods inherited from class com.google.gwt.user.client.ui.Widget
addAttachHandler, addBitlessDomHandler, addDomHandler, addHandler, asWidget, asWidgetOrNull, createHandlerManager, delegateEvent, fireEvent, getHandlerCount, getLayoutData, getParent, isAttached, isOrWasAttached, setLayoutData
 
Methods inherited from class com.google.gwt.user.client.ui.UIObject
addStyleDependentName, ensureDebugId, ensureDebugId, ensureDebugId, getAbsoluteLeft, getAbsoluteTop, getOffsetHeight, getOffsetWidth, getStyleElement, getStyleName, getStyleName, getStylePrimaryName, getStylePrimaryName, isVisible, removeStyleDependentName, setElement, setStyleDependentName, setStyleName, setStyleName, setStyleName, setStylePrimaryName, setStylePrimaryName, setVisible, sinkBitlessEvent, unsinkEvents
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

TimeField

public TimeField()
Creates a new time field.

Method Detail

findModel

public Time findModel(java.util.Date date)
Returns the matching Time for the given date.

Parameters:
date - the date
Returns:
the matching model or null if no match

findModel

public Time findModel(int hours,
                      int minutes)
Return the matching Time for the given time.

Parameters:
hours - the hours
minutes - the minutes
Returns:
the matching model or null if no match

getDateValue

public java.util.Date getDateValue()
Returns the current date value.

Returns:
the value

getFormat

public com.google.gwt.i18n.client.DateTimeFormat getFormat()
Returns the date time format.

Returns:
the date time format

getIncrement

public int getIncrement()
Returns the number of minutes between each time value.

Returns:
the increment

getMaxValue

public java.util.Date getMaxValue()
Returns the field's max value.

Returns:
the max value

getMessages

public TimeField.TimeFieldMessages getMessages()
Description copied from class: Field
Returns the field's messages.

Overrides:
getMessages in class ComboBox<Time>
Returns:
the messages

getMinValue

public java.util.Date getMinValue()
Returns the fields minimum value.

Returns:
the min value

setDateValue

public void setDateValue(java.util.Date date)
Sets the field's value from a date.

Parameters:
date - the date

setFormat

public void setFormat(com.google.gwt.i18n.client.DateTimeFormat format)
Sets the date time format used to format each entry (defaults to DateTimeFormat.getShortDateFormat().

Parameters:
format - the date time format

setIncrement

public void setIncrement(int increment)
Sets the number of minutes between each time value in the list (defaults to 15).

Parameters:
increment - the increment

setMaxValue

public void setMaxValue(java.util.Date value)
Sets the field's max value.

Parameters:
value - the max value

setMinValue

public void setMinValue(java.util.Date value)
The minimum allowed time (no default value).

Parameters:
value - the minimum date

initList

protected void initList()
Overrides:
initList in class ComboBox<Time>

onRender

protected void onRender(com.google.gwt.user.client.Element parent,
                        int index)
Description copied from class: Component
Subclasses must override and ensure setElement is called for lazy rendered components.

Overrides:
onRender in class ComboBox<Time>
Parameters:
parent - the target element
index - the insert location