Packagefeathers.controls
Classpublic class DateTimeSpinner
InheritanceDateTimeSpinner Inheritance FeathersControl Inheritance starling.display.Sprite

Product Version : Feathers 2.3.0

A set of SpinnerList components that allow you to select the date, the time, or the date and time.

The following example sets the date spinner's range and listens for when the value changes:

var spinner:DateTimeSpinner = new DateTimeSpinner();
spinner.editingMode = DateTimeMode.DATE;
spinner.minimum = new Date(1970, 0, 1);
spinner.maximum = new Date(2050, 11, 31);
spinner.value = new Date();
spinner.addEventListener( Event.CHANGE, spinner_changeHandler );
this.addChild( spinner );

See also

How to use the Feathers DateTimeSpinner component


Public Properties
 PropertyDefined By
 InheriteddefaultTextEditorFactory : Function
[static] A function used by all UI controls that support text editor to create an ITextEditor instance.
FeathersControl
 InheriteddefaultTextRendererFactory : Function
[static] A function used by all UI controls that support text renderers to create an ITextRenderer instance.
FeathersControl
 Inheriteddepth : int
[read-only] The component's depth in the display list, relative to the stage.
FeathersControl
  editingMode : String
Determines which parts of the Date value may be edited.
DateTimeSpinner
 InheritedexplicitHeight : Number
[read-only] The height value explicitly set by passing a value to the height setter or by calling the setSize() function.
FeathersControl
 InheritedexplicitMaxHeight : Number
[read-only] The maximum height value explicitly set by passing a value to the maxHeight setter.
FeathersControl
 InheritedexplicitMaxWidth : Number
[read-only] The maximum width value explicitly set by passing a value to the maxWidth setter.
FeathersControl
 InheritedexplicitMinHeight : Number
[read-only] The minimum height value explicitly set by passing a value to the minHeight setter.
FeathersControl
 InheritedexplicitMinWidth : Number
[read-only] The minimum width value explicitly set by passing a value to the minWidth setter.
FeathersControl
 InheritedexplicitWidth : Number
[read-only] The width value explicitly set by passing a value to the width setter or to the setSize() method.
FeathersControl
 InheritedfocusManager : IFocusManager
The implementation of this property is provided for convenience, but it cannot be used unless a subclass implements the IFocusDisplayObject interface. The current focus manager for this component.
FeathersControl
 InheritedfocusOwner : IFocusDisplayObject
The implementation of this property is provided for convenience, but it cannot be used unless a subclass implements the IFocusDisplayObject interface. Used for associating focusable display objects that are not direct children with an "owner" focusable display object, such as pop-ups.
FeathersControl
  globalStyleProvider : IStyleProvider
[static] The default IStyleProvider for all DateTimeSpinner components.
DateTimeSpinner
 Inheritedheight : Number
[override] The height of the component, in pixels.
FeathersControl
 InheritedincludeInLayout : Boolean
Determines if the ILayout should use this object or ignore it.
FeathersControl
 InheritedisCreated : Boolean
[read-only] Determines if the component has been initialized and validated for the first time.
FeathersControl
 InheritedisEnabled : Boolean
Indicates whether the control is interactive or not.
FeathersControl
 InheritedisFocusEnabled : Boolean
The implementation of this property is provided for convenience, but it cannot be used unless a subclass implements the IFocusDisplayObject interface. Determines if this component can receive focus.
FeathersControl
 InheritedisInitialized : Boolean
[read-only] Determines if the component has been initialized yet.
FeathersControl
 InheritedisQuickHitAreaEnabled : Boolean
Similar to mouseChildren on the classic display list.
FeathersControl
 InheritedisShowingFocus : Boolean
[read-only] The implementation of this method is provided for convenience, but it cannot be used unless a subclass implements the IFocusDisplayObject interface. Indicates if the showFocus() method has been called on the object when it has focus.
FeathersControl
  itemRendererFactory : Function
A function used to instantiate the date time spinner's item renderer sub-components.
DateTimeSpinner
 InheritedlayoutData : ILayoutData
Extra parameters associated with this display object that will be used by the layout algorithm.
FeathersControl
  listFactory : Function
A function used to instantiate the date time spinner's list sub-components.
DateTimeSpinner
  locale : String
The locale used to display the date.
DateTimeSpinner
 InheritedmaintainTouchFocus : Boolean
[read-only] The implementation of this method is provided for convenience, but it cannot be used unless a subclass implements the IFocusDisplayObject interface. If true, the display object should remain in focus, even if something else is touched.
FeathersControl
 InheritedmaxHeight : Number
The maximum recommended height to be used for self-measurement and, optionally, by any code that is resizing this component.
FeathersControl
  maximum : Date
The date time spinner's value will not go higher than the maximum.
DateTimeSpinner
 InheritedmaxWidth : Number
The maximum recommended width to be used for self-measurement and, optionally, by any code that is resizing this component.
FeathersControl
 InheritedminHeight : Number
The minimum recommended height to be used for self-measurement and, optionally, by any code that is resizing this component.
FeathersControl
  minimum : Date
The date time spinner's value will not go lower than the minimum.
DateTimeSpinner
 InheritedminTouchHeight : Number
If using isQuickHitAreaEnabled, and the hit area's height is smaller than this value, it will be expanded.
FeathersControl
 InheritedminTouchWidth : Number
If using isQuickHitAreaEnabled, and the hit area's width is smaller than this value, it will be expanded.
FeathersControl
  minuteStep : int
In the list that allows selection of minutes, customizes the number of minutes between each item.
DateTimeSpinner
 InheritedminWidth : Number
The minimum recommended width to be used for self-measurement and, optionally, by any code that is resizing this component.
FeathersControl
 InheritednextDownFocus : IFocusDisplayObject
The implementation of this property is provided for convenience, but it cannot be used unless a subclass implements the IFocusDisplayObject interface. The next object that will receive focus when Keyboard.DOWN is pressed at KeyLocation.D_PAD and a focus manager is enabled.
FeathersControl
 InheritednextLeftFocus : IFocusDisplayObject
The implementation of this property is provided for convenience, but it cannot be used unless a subclass implements the IFocusDisplayObject interface. The next object that will receive focus when Keyboard.LEFT is pressed at KeyLocation.D_PAD and a focus manager is enabled.
FeathersControl
 InheritednextRightFocus : IFocusDisplayObject
The implementation of this property is provided for convenience, but it cannot be used unless a subclass implements the IFocusDisplayObject interface. The next object that will receive focus when Keyboard.RIGHT is pressed at KeyLocation.D_PAD and a focus manager is enabled.
FeathersControl
 InheritednextTabFocus : IFocusDisplayObject
The implementation of this property is provided for convenience, but it cannot be used unless a subclass implements the IFocusDisplayObject interface. The next object that will receive focus when the tab key is pressed when a focus manager is enabled.
FeathersControl
 InheritednextUpFocus : IFocusDisplayObject
The implementation of this property is provided for convenience, but it cannot be used unless a subclass implements the IFocusDisplayObject interface. The next object that will receive focus when Keyboard.UP is pressed at KeyLocation.D_PAD and a focus manager is enabled.
FeathersControl
 InheritedpreviousTabFocus : IFocusDisplayObject
The implementation of this property is provided for convenience, but it cannot be used unless a subclass implements the IFocusDisplayObject interface. The previous object that will receive focus when the tab key is pressed while holding shift when a focus manager is enabled.
FeathersControl
 InheritedstyleName : String
The concatenated styleNameList, with values separated by spaces.
FeathersControl
 InheritedstyleNameList : TokenList
[read-only] Contains a list of all "styles" assigned to this control.
FeathersControl
 InheritedstyleProvider : IStyleProvider
When a component initializes, a style provider may be used to set properties that affect the component's visual appearance.
FeathersControl
  todayLabel : String
If not null, and the editingMode property is set to DateTimeMode.DATE_AND_TIME the date matching today's current date will display this label instead of the date.
DateTimeSpinner
 InheritedtoolTip : String
Text to display in a tool tip to when hovering over this component, if the ToolTipManager is enabled.
FeathersControl
  value : Date
The value of the date time spinner, between the minimum and maximum.
DateTimeSpinner
 Inheritedwidth : Number
[override] The width of the component, in pixels.
FeathersControl
Protected Properties
 PropertyDefined By
 InheritedactualHeight : Number = 0
The final height value that should be used for layout.
FeathersControl
 InheritedactualMinHeight : Number = 0
The final minimum height value that should be used for layout.
FeathersControl
 InheritedactualMinWidth : Number = 0
The final minimum width value that should be used for layout.
FeathersControl
 InheritedactualWidth : Number = 0
The final width value that should be used for layout.
FeathersControl
 InheriteddefaultStyleProvider : IStyleProvider
[read-only] When the FeathersControl constructor is called, the styleProvider property is set to this value.
FeathersControl
  listStyleName : String = "feathers-date-time-spinner-list"
The value added to the styleNameList of the lists.
DateTimeSpinner
Public Methods
 MethodDefined By
  
Constructor.
DateTimeSpinner
 Inherited
getBounds(targetSpace:DisplayObject, resultRect:Rectangle = null):Rectangle
[override] Feathers components use an optimized getBounds() implementation that may sometimes behave differently than regular Starling display objects.
FeathersControl
 Inherited
hideFocus():void
The implementation of this method is provided for convenience, but it cannot be used unless a subclass implements the IFocusDisplayObject interface.
FeathersControl
 Inherited
If the component has not yet initialized, initializes immediately.
FeathersControl
 Inherited
invalidate(flag:String):void
Call this function to tell the UI control that a redraw is pending.
FeathersControl
 Inherited
isInvalid(flag:String = null):Boolean
Indicates whether the control is pending validation or not.
FeathersControl
 Inherited
move(x:Number, y:Number):void
Sets both the x and the y positions of the control in a single function call.
FeathersControl
 Inherited
Resets the styleProvider property to its default value, which is usually the global style provider for the component.
FeathersControl
  
scrollToDate(date:Date, animationDuration:Number):void
After the next validation, animates the scroll positions of the lists to a specific date.
DateTimeSpinner
 Inherited
setSize(width:Number, height:Number):void
Sets both the width and the height of the control in a single function call.
FeathersControl
 Inherited
showFocus():void
The implementation of this method is provided for convenience, but it cannot be used unless a subclass implements the IFocusDisplayObject interface.
FeathersControl
 Inherited
validate():void
Immediately validates the display object, if it is invalid.
FeathersControl
Protected Methods
 MethodDefined By
 Inherited
clearInvalidationFlag(flag:String):void
Clears an invalidation flag.
FeathersControl
 Inherited
draw():void
Override to customize layout and to adjust properties of children.
FeathersControl
 Inherited
focusInHandler(event:Event):void
Default event handler for FeathersEventType.FOCUS_IN that may be overridden in subclasses to perform additional actions when the component receives focus.
FeathersControl
 Inherited
focusOutHandler(event:Event):void
Default event handler for FeathersEventType.FOCUS_OUT that may be overridden in subclasses to perform additional actions when the component loses focus.
FeathersControl
 Inherited
The next style that is set will not be restricted.
FeathersControl
 Inherited
initialize():void
Called the first time that the UI control is added to the stage, and you should override this function to customize the initialization process.
FeathersControl
 Inherited
processStyleRestriction(key:Object):Boolean
Used by setters for properties that are considered "styles" to determine if the setter has been called directly on the component or from a style provider.
FeathersControl
  
Choose the appropriate background skin based on the control's current state.
DateTimeSpinner
 Inherited
Updates the focus indicator skin by showing or hiding it and adjusting its position and dimensions.
FeathersControl
 Inherited
saveMeasurements(width:Number, height:Number, minWidth:Number = 0, minHeight:Number = 0):Boolean
Saves the dimensions and minimum dimensions calculated for the component.
FeathersControl
 Inherited
setInvalidationFlag(flag:String):void
Sets an invalidation flag.
FeathersControl
 Inherited
setSizeInternal(width:Number, height:Number, canInvalidate:Boolean):Boolean
Sets the width and height of the control, with the option of invalidating or not.
FeathersControl
Events
 Event Summary Defined By
  Dispatched when the spinner's value changes.DateTimeSpinner
 InheritedDispatched after the component has validated for the first time.FeathersControl
 InheritedDispatched after initialize() has been called, but before the first time that draw() has been called.FeathersControl
 InheritedDispatched when the width or height of the control changes.FeathersControl
Styles
 StyleDefined By
  
backgroundDisabledSkin : DisplayObject
The background to display behind all content when the date time spinner is disabled.
DateTimeSpinner
  
backgroundSkin : DisplayObject
The default background to display behind all content.
DateTimeSpinner
  
A style name to add to the date time spinner's item renderer sub-components.
DateTimeSpinner
  
A style name to add to the date time spinner's list sub-components.
DateTimeSpinner
 Inherited
focusIndicatorSkin : DisplayObject
If this component supports focus, this optional skin will be displayed above the component when showFocus() is called.
FeathersControl
 Inherited
focusPadding : Number
Quickly sets all focus padding properties to the same value.
FeathersControl
 Inherited
The minimum space, in pixels, between the object's bottom edge and the bottom edge of the focus indicator skin.
FeathersControl
 Inherited
The minimum space, in pixels, between the object's left edge and the left edge of the focus indicator skin.
FeathersControl
 Inherited
The minimum space, in pixels, between the object's right edge and the right edge of the focus indicator skin.
FeathersControl
 Inherited
The minimum space, in pixels, between the object's top edge and the top edge of the focus indicator skin.
FeathersControl
  
padding : Number
Quickly sets all padding properties to the same value.
DateTimeSpinner
  
paddingBottom : Number
The minimum space, in pixels, between the date time spinner's bottom edge and the its content.
DateTimeSpinner
  
paddingLeft : Number
The minimum space, in pixels, between the date time spinner's left edge and the its content.
DateTimeSpinner
  
paddingRight : Number
The minimum space, in pixels, between the date time spinner's right edge and the its content.
DateTimeSpinner
  
paddingTop : Number
The minimum space, in pixels, between the date time spinner's top edge and the its content.
DateTimeSpinner
  
The duration, in seconds, of the animation when the scrollToDate() function is called, or when an invalid date is selected.
DateTimeSpinner
Public Constants
 ConstantDefined By
  DEFAULT_CHILD_STYLE_NAME_LIST : String = "feathers-date-time-spinner-list"
[static] The default name to use with lists.
DateTimeSpinner
 InheritedINVALIDATION_FLAG_ALL : String = "all"
[static] Flag to indicate that everything is invalid and should be redrawn.
FeathersControl
 InheritedINVALIDATION_FLAG_DATA : String = "data"
[static] Invalidation flag to indicate that the primary data displayed by the UI control has changed.
FeathersControl
 InheritedINVALIDATION_FLAG_FOCUS : String = "focus"
[static] Invalidation flag to indicate that the focus of the UI control has changed.
FeathersControl
 InheritedINVALIDATION_FLAG_LAYOUT : String = "layout"
[static] Invalidation flag to indicate that the layout of the UI control has changed.
FeathersControl
 InheritedINVALIDATION_FLAG_SCROLL : String = "scroll"
[static] Invalidation flag to indicate that the scroll position of the UI control has changed.
FeathersControl
 InheritedINVALIDATION_FLAG_SELECTED : String = "selected"
[static] Invalidation flag to indicate that the selection of the UI control has changed.
FeathersControl
 InheritedINVALIDATION_FLAG_SIZE : String = "size"
[static] Invalidation flag to indicate that the dimensions of the UI control have changed.
FeathersControl
 InheritedINVALIDATION_FLAG_SKIN : String = "skin"
[static] Invalidation flag to indicate that the skin of the UI control has changed.
FeathersControl
 InheritedINVALIDATION_FLAG_STATE : String = "state"
[static] Invalidation flag to indicate that the state has changed.
FeathersControl
 InheritedINVALIDATION_FLAG_STYLES : String = "styles"
[static] Invalidation flag to indicate that the styles or visual appearance of the UI control has changed.
FeathersControl
Property Detail
editingModeproperty
editingMode:String

Determines which parts of the Date value may be edited.

The default value is feathers.controls.DateTimeMode.DATE_AND_TIME.


Implementation
    public function get editingMode():String
    public function set editingMode(value:String):void

See also

globalStyleProviderproperty 
public static var globalStyleProvider:IStyleProvider

The default IStyleProvider for all DateTimeSpinner components.

The default value is null.

See also

itemRendererFactoryproperty 
itemRendererFactory:Function

A function used to instantiate the date time spinner's item renderer sub-components. A single factory will be shared by all SpinnerList sub-components displayed by the DateTimeSpinner. The item renderers must be instances of DefaultListItemRenderer. This factory can be used to change properties of the item renderer sub-components when they are first created. For instance, if you are skinning Feathers components without a theme, you might use this factory to style the item renderer sub-components.

The factory should have the following function signature:

function():DefaultListItemRenderer

In the following example, the date time spinner uses a custom item renderer factory:

spinner.itemRendererFactory = function():DefaultListItemRenderer
{
    var itemRenderer:DefaultListItemRenderer = new DefaultListItemRenderer();
    // set properties
    return itemRenderer;
};

The default value is null.


Implementation
    public function get itemRendererFactory():Function
    public function set itemRendererFactory(value:Function):void

See also

listFactoryproperty 
listFactory:Function

A function used to instantiate the date time spinner's list sub-components. The lists must be instances of SpinnerList. This factory can be used to change properties of the list sub-components when they are first created. For instance, if you are skinning Feathers components without a theme, you might use this factory to style the list sub-components.

Warning: The itemRendererFactory and customItemRendererStyleName properties of the SpinnerList should not be set in the listFactory. Instead, set the itemRendererFactory and customItemRendererStyleName properties of the DateTimeSpinner.

The factory should have the following function signature:

function():SpinnerList

In the following example, the date time spinner uses a custom list factory:

spinner.listFactory = function():SpinnerList
{
    var list:SpinnerList = new SpinnerList();
    // set properties
    return list;
};

The default value is null.


Implementation
    public function get listFactory():Function
    public function set listFactory(value:Function):void

See also

listStyleNameproperty 
protected var listStyleName:String = "feathers-date-time-spinner-list"

The value added to the styleNameList of the lists. This variable is protected so that sub-classes can customize the list style name in their constructors instead of using the default style name defined by DEFAULT_CHILD_STYLE_NAME_LIST.

To customize the list style name without subclassing, see customListStyleName.

See also

localeproperty 
locale:String

The locale used to display the date. Supports values defined by Unicode Technical Standard #35, such as "en_US", "fr_FR" or "ru_RU".

The default value is flash.globalization.LocaleID.DEFAULT.


Implementation
    public function get locale():String
    public function set locale(value:String):void

See also

maximumproperty 
maximum:Date

The date time spinner's value will not go higher than the maximum.

In the following example, the maximum is changed:

spinner.maximum = new Date(2050, 11, 31);


Implementation
    public function get maximum():Date
    public function set maximum(value:Date):void

See also

minimumproperty 
minimum:Date

The date time spinner's value will not go lower than the minimum.

In the following example, the minimum is changed:

spinner.minimum = new Date(1970, 0, 1);


Implementation
    public function get minimum():Date
    public function set minimum(value:Date):void

See also

minuteStepproperty 
minuteStep:int

In the list that allows selection of minutes, customizes the number of minutes between each item. For instance, one might choose 15 or 30 minute increments.

In the following example, the spinner uses 15 minute increments:

spinner.minuteStep = 15;

The default value is 1.


Implementation
    public function get minuteStep():int
    public function set minuteStep(value:int):void
todayLabelproperty 
todayLabel:String

If not null, and the editingMode property is set to DateTimeMode.DATE_AND_TIME the date matching today's current date will display this label instead of the date.

In the following example, the label for today is set:

spinner.todayLabel = "Today";

The default value is null.


Implementation
    public function get todayLabel():String
    public function set todayLabel(value:String):void
valueproperty 
value:Date

The value of the date time spinner, between the minimum and maximum.

In the following example, the value is changed to a date:

stepper.minimum = new Date(1970, 0, 1);
stepper.maximum = new Date(2050, 11, 31);
stepper.value = new Date(1995, 2, 7);

The default value is 0.


Implementation
    public function get value():Date
    public function set value(value:Date):void

See also

Constructor Detail
DateTimeSpinner()Constructor
public function DateTimeSpinner()

Constructor.

Method Detail
refreshBackgroundSkin()method
protected function refreshBackgroundSkin():void

Choose the appropriate background skin based on the control's current state.

scrollToDate()method 
public function scrollToDate(date:Date, animationDuration:Number):void

After the next validation, animates the scroll positions of the lists to a specific date. If the animationDuration argument is NaN (the default value), the value of the scrollDuration property is used instead. The duration is measured in seconds.

Note: The value property will not be updated immediately when calling scrollToDate(). Similar to how the animation won't start until the next validation, the value property will be updated at the same time.

In the following example, we scroll to a specific date with animation of 1.5 seconds:

spinner.scrollToDate( new Date(2016, 0, 1), 1.5 );

Parameters

date:Date
 
animationDuration:Number (default = NaN)

See also

Event Detail
change Event
Event Object Type: starling.events.Event
Event.type property = starling.events.Event.CHANGE

Dispatched when the spinner's value changes.

The properties of the event object have the following values:

PropertyValue
bubblesfalse
currentTargetThe Object that defines the event listener that handles the event. For example, if you use myButton.addEventListener() to register an event listener, myButton is the value of the currentTarget.
datanull
targetThe Object that dispatched the event; it is not always the Object listening for the event. Use the currentTarget property to always access the Object listening for the event.

See also

Style Detail
scrollDurationstyle
scrollDuration:Number

The duration, in seconds, of the animation when the scrollToDate() function is called, or when an invalid date is selected.

In the following example, the duration of the animation that changes the page when thrown is set to 250 milliseconds:

spinner.scrollDuration = 0.25;

The default value is 0.5.

See also

paddingLeftstyle 
paddingLeft:Number

The minimum space, in pixels, between the date time spinner's left edge and the its content.

In the following example, the left padding is set to 20 pixels:

spinner.paddingLeft = 20;

The default value is 0.

See also

paddingBottomstyle 
paddingBottom:Number

The minimum space, in pixels, between the date time spinner's bottom edge and the its content.

In the following example, the bottom padding is set to 20 pixels:

spinner.paddingBottom = 20;

The default value is 0.

See also

paddingRightstyle 
paddingRight:Number

The minimum space, in pixels, between the date time spinner's right edge and the its content.

In the following example, the right padding is set to 20 pixels:

spinner.paddingRight = 20;

The default value is 0.

See also

paddingTopstyle 
paddingTop:Number

The minimum space, in pixels, between the date time spinner's top edge and the its content.

In the following example, the top padding is set to 20 pixels:

spinner.paddingTop = 20;

The default value is 0.

See also

paddingstyle 
padding:Number

Quickly sets all padding properties to the same value. The padding getter always returns the value of paddingTop, but the other padding values may be different.

In the following example, the padding is set to 20 pixels:

spinner.padding = 20;

The default value is 0.

See also

customListStyleNamestyle 
customListStyleName:String

A style name to add to the date time spinner's list sub-components. Typically used by a theme to provide different styles to different date time spinners.

In the following example, a custom list style name is passed to the date time spinner:

spinner.customListStyleName = "my-custom-spinner-list";

In your theme, you can target this sub-component style name to provide different styles than the default:

getStyleProviderForClass( SpinnerList ).setFunctionForStyleName( "my-custom-spinner-list", setCustomSpinnerListStyles );

The default value is null.

See also

customItemRendererStyleNamestyle 
customItemRendererStyleName:String

A style name to add to the date time spinner's item renderer sub-components. Typically used by a theme to provide different styles to different date time spinners.

In the following example, a custom item renderer style name is passed to the date time spinner:

spinner.customItemRendererStyleName = "my-custom-date-time-spinner-item-renderer";

In your theme, you can target this sub-component style name to provide different styles than the default:

getStyleProviderForClass( DefaultListItemRenderer ).setFunctionForStyleName( "my-custom-date-time-spinner-item-renderer", setCustomDateTimeSpinnerItemRendererStyles );

The default value is null.

See also

backgroundSkinstyle 
backgroundSkin:DisplayObject

The default background to display behind all content. The background skin is resized to fill the full width and height of the date time spinner, and the lists are centered.

In the following example, the spinner is given a background skin:

spinner.backgroundSkin = new Image( texture );

The default value is null.

See also

backgroundDisabledSkinstyle 
backgroundDisabledSkin:DisplayObject

The background to display behind all content when the date time spinner is disabled. The background skin is resized to fill the full width and height of the date time spinner, and the lists are centered.

In the following example, the spinner is given a background skin:

spinner.backgroundDisabledSkin = new Image( texture );

The default value is null.

See also

Constant Detail
DEFAULT_CHILD_STYLE_NAME_LISTConstant
public static const DEFAULT_CHILD_STYLE_NAME_LIST:String = "feathers-date-time-spinner-list"

The default name to use with lists.

See also