Class SpinnerItem

All Implemented Interfaces:
HasHandlers, HasBlurHandlers, HasChangedHandlers, HasChangeHandlers, HasClickHandlers, HasDoubleClickHandlers, HasEditorEnterHandlers, HasEditorExitHandlers, HasFocusHandlers, HasIconClickHandlers, HasIconKeyPressHandlers, HasItemHoverHandlers, HasKeyDownHandlers, HasKeyPressHandlers, HasKeyUpHandlers, HasPendingStatusChangedHandlers, HasPickerIconClickHandlers, HasShowContextMenuHandlers, HasTitleClickHandlers, HasTitleDoubleClickHandlers, HasTitleHoverHandlers, HasValueHoverHandlers, HasValueIconClickHandlers

public class SpinnerItem extends TextItem
Item for picking a number. Includes arrow buttons to increase / decrease the value
  • Constructor Details

    • SpinnerItem

      public SpinnerItem()
    • SpinnerItem

      public SpinnerItem(JavaScriptObject jsObj)
    • SpinnerItem

      public SpinnerItem(String name)
    • SpinnerItem

      public SpinnerItem(String name, String title)
  • Method Details

    • getOrCreateRef

      public static SpinnerItem getOrCreateRef(JavaScriptObject jsObj)
    • changeAutoChildDefaults

      public static void changeAutoChildDefaults(String autoChildName, Canvas defaults)
      Changes the defaults for Canvas AutoChildren named autoChildName.
      Parameters:
      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. For usage tips on this param, see SGWTProperties.
      See Also:
    • changeAutoChildDefaults

      public static void changeAutoChildDefaults(String autoChildName, FormItem defaults)
      Changes the defaults for FormItem AutoChildren named autoChildName.
      Parameters:
      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. For usage tips on this param, see SGWTProperties.
      See Also:
    • changePickerIconDefaults

      public static void changePickerIconDefaults(FormItemIcon defaults)
    • getDecreaseIcon

      public FormItemIcon getDecreaseIcon()
      In stacked mode, the icon to decrease the spinner's value (a down arrow by default). This icon is generated automatically using the com.smartgwt.client.types.AutoChild pattern. For skinning purposes, decreaseIconDefaults may be modified using changeDefaults().

      If sizes for the increase and decrease icons are not explicitly specified in their autoChild configuration, they will be derived from the specified stackedIconsHeight and stackedIconsWidth properties.

      See the skinning overview for details on how to provide a sprited image for these icons.

      This component is an AutoChild named "decreaseIcon". For an overview of how to use and configure AutoChildren, see Using AutoChildren.

      Returns:
      Current decreaseIcon value. Default value is null
    • setDecreaseIconProperties

      public SpinnerItem setDecreaseIconProperties(FormItemIcon decreaseIconProperties)
      FormItemIcon properties applied to the decreaseIcon AutoChild of this SpinnerItem.
      Parameters:
      decreaseIconProperties - New decreaseIconProperties value. Default value is null
      Returns:
      SpinnerItem instance, for chaining setter calls
    • getIncreaseIcon

      public FormItemIcon getIncreaseIcon()
      In stacked mode, the icon to increase the spinner's value (an up arrow by default). This icon is generated automatically using the com.smartgwt.client.types.AutoChild pattern. For skinning purposes, increaseIconDefaults may be modified using changeDefaults().

      If sizes for the increase and decrease icons are not explicitly specified in their autoChild configuration, they will be derived from the specified stackedIconsHeight and stackedIconsWidth properties.

      See the skinning overview for details on how to provide a sprited image for these icons.

      This component is an AutoChild named "increaseIcon". For an overview of how to use and configure AutoChildren, see Using AutoChildren.

      Returns:
      Current increaseIcon value. Default value is null
    • setIncreaseIconProperties

      public SpinnerItem setIncreaseIconProperties(FormItemIcon increaseIconProperties)
      FormItemIcon properties applied to the increaseIcon AutoChild of this SpinnerItem.
      Parameters:
      increaseIconProperties - New increaseIconProperties value. Default value is null
      Returns:
      SpinnerItem instance, for chaining setter calls
    • setMask

      public SpinnerItem setMask(String mask)
      Not applicable to a SpinnerItem.

      Note : This is an advanced setting

      Overrides:
      setMask in class TextItem
      Parameters:
      mask - New mask value. Default value is null
      Returns:
      SpinnerItem instance, for chaining setter calls
      See Also:
    • getMask

      public String getMask()
      Not applicable to a SpinnerItem.
      Overrides:
      getMask in class TextItem
      Returns:
      Current mask value. Default value is null
      See Also:
    • setMaskOverwriteMode

      public SpinnerItem setMaskOverwriteMode(Boolean maskOverwriteMode)
      Not applicable to a SpinnerItem.

      Note : This is an advanced setting

      Overrides:
      setMaskOverwriteMode in class TextItem
      Parameters:
      maskOverwriteMode - New maskOverwriteMode value. Default value is null
      Returns:
      SpinnerItem instance, for chaining setter calls
    • getMaskOverwriteMode

      public Boolean getMaskOverwriteMode()
      Not applicable to a SpinnerItem.
      Overrides:
      getMaskOverwriteMode in class TextItem
      Returns:
      Current maskOverwriteMode value. Default value is null
    • setMaskPadChar

      public SpinnerItem setMaskPadChar(String maskPadChar)
      Not applicable to a SpinnerItem.

      Note : This is an advanced setting

      Overrides:
      setMaskPadChar in class TextItem
      Parameters:
      maskPadChar - New maskPadChar value. Default value is " "
      Returns:
      SpinnerItem instance, for chaining setter calls
    • getMaskPadChar

      public String getMaskPadChar()
      Not applicable to a SpinnerItem.
      Overrides:
      getMaskPadChar in class TextItem
      Returns:
      Current maskPadChar value. Default value is " "
    • setMaskPromptChar

      public SpinnerItem setMaskPromptChar(String maskPromptChar)
      Not applicable to a SpinnerItem.

      Note : This is an advanced setting

      Overrides:
      setMaskPromptChar in class TextItem
      Parameters:
      maskPromptChar - New maskPromptChar value. Default value is "_"
      Returns:
      SpinnerItem instance, for chaining setter calls
    • getMaskPromptChar

      public String getMaskPromptChar()
      Not applicable to a SpinnerItem.
      Overrides:
      getMaskPromptChar in class TextItem
      Returns:
      Current maskPromptChar value. Default value is "_"
    • setMaskSaveLiterals

      public SpinnerItem setMaskSaveLiterals(Boolean maskSaveLiterals)
      Not applicable to a SpinnerItem.

      Note : This is an advanced setting

      Overrides:
      setMaskSaveLiterals in class TextItem
      Parameters:
      maskSaveLiterals - New maskSaveLiterals value. Default value is null
      Returns:
      SpinnerItem instance, for chaining setter calls
    • getMaskSaveLiterals

      public Boolean getMaskSaveLiterals()
      Not applicable to a SpinnerItem.
      Overrides:
      getMaskSaveLiterals in class TextItem
      Returns:
      Current maskSaveLiterals value. Default value is null
    • setMax

      public SpinnerItem setMax(Double max)
      Maximum valid value for this item. If this and min are both null or unspecified, then the nextValueHandler and previousValueHandler are used to increase or decrease the value and these handlers are also used to determine the maximum value.
      Parameters:
      max - New max value. Default value is null
      Returns:
      SpinnerItem instance, for chaining setter calls
      See Also:
    • getMax

      public Double getMax()
      Maximum valid value for this item. If this and min are both null or unspecified, then the nextValueHandler and previousValueHandler are used to increase or decrease the value and these handlers are also used to determine the maximum value.
      Returns:
      Current max value. Default value is null
      See Also:
    • setMin

      public SpinnerItem setMin(Double min)
      Minimum valid value for this item. If this and max are both null or unspecified, then the nextValueHandler and previousValueHandler are used to increase or decrease the value and these handlers are also used to determine the minimum value.
      Parameters:
      min - New min value. Default value is null
      Returns:
      SpinnerItem instance, for chaining setter calls
      See Also:
    • getMin

      public Double getMin()
      Minimum valid value for this item. If this and max are both null or unspecified, then the nextValueHandler and previousValueHandler are used to increase or decrease the value and these handlers are also used to determine the minimum value.
      Returns:
      Current min value. Default value is null
      See Also:
    • setStackedIconsHeight

      public SpinnerItem setStackedIconsHeight(Integer stackedIconsHeight)
      In stacked icons mode this property can be used to specify the height of both the increase and decrease icon. Since the icons are stacked vertically, each icon will be sized to half this specified value. If a height property is explicitly set for the icon via increaseIconProperties, decreaseIconProperties, or related Defaults property blocks, that will take precedence over any specified stackedIconsHeight.

      See also stackedIconsWidth.

      Parameters:
      stackedIconsHeight - New stackedIconsHeight value. Default value is 18
      Returns:
      SpinnerItem instance, for chaining setter calls
    • getStackedIconsHeight

      public Integer getStackedIconsHeight()
      In stacked icons mode this property can be used to specify the height of both the increase and decrease icon. Since the icons are stacked vertically, each icon will be sized to half this specified value. If a height property is explicitly set for the icon via increaseIconProperties, decreaseIconProperties, or related Defaults property blocks, that will take precedence over any specified stackedIconsHeight.

      See also stackedIconsWidth.

      Returns:
      Current stackedIconsHeight value. Default value is 18
    • setStackedIconsWidth

      public SpinnerItem setStackedIconsWidth(Integer stackedIconsWidth)
      In stacked icons mode this property can be used to specify the width of both the increase and decrease icon. If a width property is explicitly set for the icon via increaseIconProperties, decreaseIconProperties, or related Defaults property blocks, that will take precedence over any specified stackedIconsWidth.

      See also stackedIconsHeight.

      Parameters:
      stackedIconsWidth - New stackedIconsWidth value. Default value is 16
      Returns:
      SpinnerItem instance, for chaining setter calls
    • getStackedIconsWidth

      public Integer getStackedIconsWidth()
      In stacked icons mode this property can be used to specify the width of both the increase and decrease icon. If a width property is explicitly set for the icon via increaseIconProperties, decreaseIconProperties, or related Defaults property blocks, that will take precedence over any specified stackedIconsWidth.

      See also stackedIconsHeight.

      Returns:
      Current stackedIconsWidth value. Default value is 16
    • setStep

      public SpinnerItem setStep(double step)
      How much should the value be incremented / decremented when the user hits the icons to increase / decrease the value?

      When providing a nextValueHandler and/or previousValueHandler, the sign of the step value determines whether these handlers are expected to induce monotonically increasing or decreasing functions.

      Parameters:
      step - New step value. Default value is 1
      Returns:
      SpinnerItem instance, for chaining setter calls
      See Also:
    • getStep

      public double getStep()
      How much should the value be incremented / decremented when the user hits the icons to increase / decrease the value?

      When providing a nextValueHandler and/or previousValueHandler, the sign of the step value determines whether these handlers are expected to induce monotonically increasing or decreasing functions.

      Returns:
      Current step value. Default value is 1
      See Also:
    • getUnstackedDecreaseIcon

      public FormItemIcon getUnstackedDecreaseIcon()
      In unstacked mode, the icon to decrease the SpinnerItem's value.

      By default, "[SKIN]/DynamicForm/Spinner_decrease_icon.png" is stretched to an 18x18 icon.

      When spriting is enabled, this property will not be used to locate an image, instead, the image is drawn via CSS based on the FormItemIcon.baseStyle property.

      This component is an AutoChild named "unstackedDecreaseIcon". For an overview of how to use and configure AutoChildren, see Using AutoChildren.

      Returns:
      Current unstackedDecreaseIcon value. Default value is null
    • getUnstackedIncreaseIcon

      public FormItemIcon getUnstackedIncreaseIcon()
      In unstacked mode, the icon to increase the SpinnerItem's value.

      By default, "[SKIN]/DynamicForm/Spinner_increase_icon.png" is stretched to an 18x18 icon.

      When spriting is enabled, this property will not be used to locate an image, instead, the image is drawn via CSS based on the FormItemIcon.baseStyle property.

      This component is an AutoChild named "unstackedIncreaseIcon". For an overview of how to use and configure AutoChildren, see Using AutoChildren.

      Returns:
      Current unstackedIncreaseIcon value. Default value is null
    • setUnstackedPrintTextBoxStyle

      public SpinnerItem setUnstackedPrintTextBoxStyle(String unstackedPrintTextBoxStyle)
      In unstacked mode, the base CSS class name for the SpinnerItem's text box element when printed. If unset, then unstackedTextBoxStyle is used.
      Parameters:
      unstackedPrintTextBoxStyle - New unstackedPrintTextBoxStyle value. Default value is null
      Returns:
      SpinnerItem instance, for chaining setter calls
      See Also:
    • getUnstackedPrintTextBoxStyle

      public String getUnstackedPrintTextBoxStyle()
      In unstacked mode, the base CSS class name for the SpinnerItem's text box element when printed. If unset, then unstackedTextBoxStyle is used.
      Returns:
      Current unstackedPrintTextBoxStyle value. Default value is null
      See Also:
    • setUnstackedReadOnlyTextBoxStyle

      public SpinnerItem setUnstackedReadOnlyTextBoxStyle(String unstackedReadOnlyTextBoxStyle)
      Parameters:
      unstackedReadOnlyTextBoxStyle - New unstackedReadOnlyTextBoxStyle value. Default value is null
      Returns:
      SpinnerItem instance, for chaining setter calls
      See Also:
    • getUnstackedReadOnlyTextBoxStyle

      public String getUnstackedReadOnlyTextBoxStyle()
      Returns:
      Current unstackedReadOnlyTextBoxStyle value. Default value is null
      See Also:
    • setUnstackedTextBoxStyle

      public SpinnerItem setUnstackedTextBoxStyle(String unstackedTextBoxStyle)
      In unstacked mode, the base CSS class name for the SpinnerItem's text box element.

      NOTE: See the CompoundFormItem_skinning discussion for special skinning considerations.

      Parameters:
      unstackedTextBoxStyle - New unstackedTextBoxStyle value. Default value is "textItem"
      Returns:
      SpinnerItem instance, for chaining setter calls
      See Also:
    • getUnstackedTextBoxStyle

      public String getUnstackedTextBoxStyle()
      In unstacked mode, the base CSS class name for the SpinnerItem's text box element.

      NOTE: See the CompoundFormItem_skinning discussion for special skinning considerations.

      Returns:
      Current unstackedTextBoxStyle value. Default value is "textItem"
      See Also:
    • setWriteStackedIcons

      public SpinnerItem setWriteStackedIcons(Boolean writeStackedIcons)
      When set to true, the increase and decrease icons are stacked on top of each other, also called stacked mode. When false, the increase and decrease icons are placed on the same line as the SpinnerItem's text box, also called unstacked mode. When null, a default setting depending on isTouch is used (for touch browsers, the default is false/unstacked mode).

      In stacked mode, increaseIcon and decreaseIcon control the appearance of the stacked icons.

      In unstacked mode, unstackedIncreaseIcon and unstackedDecreaseIcon control the appearance of the unstacked icons.

      Parameters:
      writeStackedIcons - New writeStackedIcons value. Default value is null
      Returns:
      SpinnerItem instance, for chaining setter calls
      See Also:
    • getWriteStackedIcons

      public Boolean getWriteStackedIcons()
      When set to true, the increase and decrease icons are stacked on top of each other, also called stacked mode. When false, the increase and decrease icons are placed on the same line as the SpinnerItem's text box, also called unstacked mode. When null, a default setting depending on isTouch is used (for touch browsers, the default is false/unstacked mode).

      In stacked mode, increaseIcon and decreaseIcon control the appearance of the stacked icons.

      In unstacked mode, unstackedIncreaseIcon and unstackedDecreaseIcon control the appearance of the unstacked icons.

      Returns:
      Current writeStackedIcons value. Default value is null
      See Also:
    • setDefaultProperties

      public static void setDefaultProperties(SpinnerItem spinnerItemProperties)
      Class level method to set the default properties of this class. If set, then all existing and subsequently created instances of this class will automatically have default properties corresponding to the properties of the class instance passed to this function. This is a powerful feature that eliminates the need for users to create a separate hierarchy of subclasses that only alter the default properties of this class. Can also be used for skinning / styling purposes.

      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.

      Parameters:
      spinnerItemProperties - properties that should be used as new defaults when instances of this class are created
      See Also:
    • setMax

      public final SpinnerItem setMax(Integer max)
    • setMin

      public final SpinnerItem setMin(Integer min)
    • setStep

      public final SpinnerItem setStep(Integer step)
    • setStep

      public final SpinnerItem setStep(Double step)
    • setMin

      public final SpinnerItem setMin(double min)
    • setMax

      public final SpinnerItem setMax(double max)
    • setNextValueHandler

      public void setNextValueHandler(NextValueHandler handler)
      When min and max are both null or unspecified, the nextValueHandler is used to get the next higher value from the currentValue. The default implementation returns (currentValue + step).

      To indicate that the given currentValue is the maximum value, return currentValue again.

      Implementations should expect to be passed any value for currentValue. Also, if step is non-negative, the nextValueHandler must induce a monotonically increasing (non-decreasing) function; otherwise, the nextValueHandler must induce a monotonically decreasing function.

    • setPreviousValueHandler

      public void setPreviousValueHandler(PreviousValueHandler handler)
      When min and max are both null or unspecified, the previousValueHandler is used to get the previous lower value from the currentValue. The default implementation returns (currentValue + step) because the step parameter is based on the opposite of this.step.

      To indicate that the given currentValue is the minimum value, return currentValue again.

      Implementations should expect to be passed any value for currentValue. Also, if step is non-negative, the previousValueHandler must induce a monotonically decreasing (non-increasing) function; otherwise, the previousValueHandler must induce a monotonically increasing function.