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

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.TwinTriggerField<java.lang.Number>
                                  extended by com.extjs.gxt.ui.client.widget.form.SpinnerField
All Implemented Interfaces:
Observable, 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
Direct Known Subclasses:
NumberField

public class SpinnerField
extends TwinTriggerField<java.lang.Number>

Numeric text field that provides automatic keystroke filtering and numeric validation.

When the field wraps any thing other than Double, either setPropertyEditorType(Class) or Field.setPropertyEditor(PropertyEditor) should be called with the appropriate number type.

 SpinnerField field = new SpinnerField();
 field.setPropertyEditorType(Integer.class);
 
Inherited Events:
Field Focus
Field Blur
Field Change
Field Invalid
Field Valid
Field KeyPress
Field SpecialKey


Nested Class Summary
 class SpinnerField.SpinnerFieldMessages
          SpinnerField messages.
 
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
protected  java.util.List<java.lang.Character> allowed
           
protected  com.google.gwt.i18n.client.constants.NumberConstants constants
           
protected  java.lang.String decimalSeparator
           
protected  KeyNav<ComponentEvent> keyNav
           
 
Fields inherited from class com.extjs.gxt.ui.client.widget.form.TwinTriggerField
span, twinTrigger
 
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
SpinnerField()
          Creates a new number field.
 
Method Summary
protected  Size adjustInputSize()
           
protected  void afterRender()
          Called after the component has been rendered and is attached for the first time.
protected  void doSpin(boolean up)
           
 boolean getAllowDecimals()
          Returns true of decimal values are allowed.
 boolean getAllowNegative()
          Returns true if negative values are allowed.
 java.lang.String getBaseChars()
          Returns the base characters.
 com.google.gwt.i18n.client.NumberFormat getFormat()
          Returns the field's number format.
 java.lang.Number getIncrement()
          Sets the increment value.
 java.lang.Number getMaxValue()
          Returns the fields max value.
 SpinnerField.SpinnerFieldMessages getMessages()
          Returns the field's messages.
 java.lang.Number getMinValue()
          Returns the field's minimum value.
 NumberPropertyEditor getPropertyEditor()
          Returns the field's property editor.
 java.lang.Class<?> getPropertyEditorType()
          Returns the number property editor number type.
protected  void onKeyPress(FieldEvent fe)
           
protected  void onRender(com.google.gwt.user.client.Element target, int index)
          Subclasses must override and ensure setElement is called for lazy rendered components.
protected  void onTriggerClick(ComponentEvent ce)
           
protected  void onTwinTriggerClick(ComponentEvent ce)
           
 void setAllowDecimals(boolean allowDecimals)
          Sets whether decimal value are allowed (defaults to true).
 void setAllowNegative(boolean allowNegative)
          Sets whether negative value are allowed.
 void setBaseChars(java.lang.String baseChars)
          Sets the base set of characters to evaluate as valid numbers (defaults to '0123456789').
 void setFormat(com.google.gwt.i18n.client.NumberFormat format)
          Sets the cell's number formatter.
 void setIncrement(java.lang.Number increment)
          Sets the increment that should be used (defaults to 1d).
 void setMaxValue(java.lang.Number maxValue)
          Sets the field's max allowable value.
 void setMinValue(java.lang.Number minValue)
          Sets the field's minimum allowed value.
 void setPropertyEditorType(java.lang.Class<?> type)
          Specifies the number type used when converting a String to a Number instance (defaults to Double).
protected  boolean validateValue(java.lang.String value)
          Subclasses should provide the validation implementation by overriding this.
 
Methods inherited from class com.extjs.gxt.ui.client.widget.form.TwinTriggerField
getTwinTriggerStyle, onComponentEvent, setTwinTriggerStyle
 
Methods inherited from class com.extjs.gxt.ui.client.widget.form.TriggerField
beforeBlur, getTriggerStyle, isEditable, isHideTrigger, isMonitorTab, mimicBlur, onBlur, onClick, onDisable, onEnable, onFocus, onKeyDown, onResize, setEditable, setHideTrigger, setMonitorTab, setReadOnly, setTriggerStyle, triggerBlur, validateBlur
 
Methods inherited from class com.extjs.gxt.ui.client.widget.form.TextField
applyEmptyText, getAllowBlank, getCursorPos, getFocusEl, getInputEl, getMaxLength, getMinLength, getRegex, getSelectedText, getSelectionLength, getSelectOnFocus, getStyleEl, getValidator, isPassword, removeEmptyText, select, selectAll, setAllowBlank, setAriaState, setCursorPos, setEmptyText, setMaxLength, setMinLength, setPassword, setRegex, setSelectionRange, setSelectOnFocus, setValidator, setValue
 
Methods inherited from class com.extjs.gxt.ui.client.widget.form.Field
addInputStyleName, addKeyListener, alignErrorIcon, clear, clearInvalid, createComponentEvent, doDetachChildren, findLabelElement, fireChangeEvent, fireKey, focus, forceInvalid, getAutoValidate, getEmptyText, getErrorMessage, getFieldLabel, getImages, getLabelSeparator, getLabelStyle, getMessageTarget, getName, getOriginalValue, getRawValue, getValidateOnBlur, getValidationDelay, getValue, initValue, isDirty, isFireChangeEventOnSetValue, isHideLabel, isInEditor, isReadOnly, isValid, isValid, markInvalid, onDetach, onHide, onKeyUp, onShow, removeInputStyleName, removeKeyListener, reset, setAutoValidate, setFieldLabel, setFireChangeEventOnSetValue, setHideLabel, setImages, setInEditor, setInputStyleAttribute, setLabelSeparator, setLabelStyle, setMessages, setMessageTarget, setName, setOriginalValue, setPropertyEditor, setRawValue, 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, onWindowResize, 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
 

Field Detail

allowed

protected java.util.List<java.lang.Character> allowed

constants

protected com.google.gwt.i18n.client.constants.NumberConstants constants

decimalSeparator

protected java.lang.String decimalSeparator

keyNav

protected KeyNav<ComponentEvent> keyNav
Constructor Detail

SpinnerField

public SpinnerField()
Creates a new number field.

Method Detail

getAllowDecimals

public boolean getAllowDecimals()
Returns true of decimal values are allowed.

Returns:
the allow decimal state

getAllowNegative

public boolean getAllowNegative()
Returns true if negative values are allowed.

Returns:
the allow negative value state

getBaseChars

public java.lang.String getBaseChars()
Returns the base characters.

Returns:
the base characters

getFormat

public com.google.gwt.i18n.client.NumberFormat getFormat()
Returns the field's number format.

Returns:
the number format

getIncrement

public java.lang.Number getIncrement()
Sets the increment value.

Returns:
the increment

getMaxValue

public java.lang.Number getMaxValue()
Returns the fields max value.

Returns:
the max value

getMessages

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

Overrides:
getMessages in class TextField<java.lang.Number>
Returns:
the messages

getMinValue

public java.lang.Number getMinValue()
Returns the field's minimum value.

Returns:
the min value

getPropertyEditor

public NumberPropertyEditor getPropertyEditor()
Description copied from class: Field
Returns the field's property editor.

Overrides:
getPropertyEditor in class Field<java.lang.Number>
Returns:
the property editor

getPropertyEditorType

public java.lang.Class<?> getPropertyEditorType()
Returns the number property editor number type.

Returns:
the number type
See Also:
NumberPropertyEditor.setType(Class)

setAllowDecimals

public void setAllowDecimals(boolean allowDecimals)
Sets whether decimal value are allowed (defaults to true).

Parameters:
allowDecimals - true to allow negative values

setAllowNegative

public void setAllowNegative(boolean allowNegative)
Sets whether negative value are allowed.

Parameters:
allowNegative - true to allow negative values

setBaseChars

public void setBaseChars(java.lang.String baseChars)
Sets the base set of characters to evaluate as valid numbers (defaults to '0123456789').

Parameters:
baseChars - the base character

setFormat

public void setFormat(com.google.gwt.i18n.client.NumberFormat format)
Sets the cell's number formatter.

Parameters:
format - the format

setIncrement

public void setIncrement(java.lang.Number increment)
Sets the increment that should be used (defaults to 1d).

Parameters:
increment - the increment to set.

setMaxValue

public void setMaxValue(java.lang.Number maxValue)
Sets the field's max allowable value.

Parameters:
maxValue - the max value

setMinValue

public void setMinValue(java.lang.Number minValue)
Sets the field's minimum allowed value.

Parameters:
minValue - the minimum value

setPropertyEditorType

public void setPropertyEditorType(java.lang.Class<?> type)
Specifies the number type used when converting a String to a Number instance (defaults to Double).

Parameters:
type - the number type (Short, Integer, Long, Float, Double).

adjustInputSize

protected Size adjustInputSize()
Overrides:
adjustInputSize in class TwinTriggerField<java.lang.Number>

afterRender

protected void afterRender()
Description copied from class: Component
Called after the component has been rendered and is attached for the first time. At this time, the component will be part of the DOM which is required when retrieving location and offsets.

Overrides:
afterRender in class TriggerField<java.lang.Number>

doSpin

protected void doSpin(boolean up)

onKeyPress

protected void onKeyPress(FieldEvent fe)
Overrides:
onKeyPress in class Field<java.lang.Number>

onRender

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

Overrides:
onRender in class TwinTriggerField<java.lang.Number>
Parameters:
target - the target element
index - the insert location

onTriggerClick

protected void onTriggerClick(ComponentEvent ce)
Overrides:
onTriggerClick in class TriggerField<java.lang.Number>

onTwinTriggerClick

protected void onTwinTriggerClick(ComponentEvent ce)
Overrides:
onTwinTriggerClick in class TwinTriggerField<java.lang.Number>

validateValue

protected boolean validateValue(java.lang.String value)
Description copied from class: Field
Subclasses should provide the validation implementation by overriding this.

Overrides:
validateValue in class TextField<java.lang.Number>
Parameters:
value - the value to validate
Returns:
true for valid