source: Dev/trunk/src/client/dojox/mobile/SpinWheelDatePicker.js @ 532

Last change on this file since 532 was 483, checked in by hendrikvanantwerpen, 11 years ago

Added Dojo 1.9.3 release.

File size: 1.4 KB
Line 
1define([
2        "dojo/_base/array",
3        "dojo/_base/declare",
4        "dojo/dom-class",
5        "./_DatePickerMixin",
6        "./SpinWheel",
7        "./SpinWheelSlot"
8], function(array, declare, domClass, DatePickerMixin, SpinWheel, SpinWheelSlot){
9
10        // module:
11        //              dojox/mobile/SpinWheelDatePicker
12
13        return declare("dojox.mobile.SpinWheelDatePicker", [SpinWheel, DatePickerMixin], {
14                // summary:
15                //              A SpinWheel-based date picker widget.
16                // description:
17                //              SpinWheelDatePicker is a date picker widget. It is a subclass of
18                //              dojox/mobile/SpinWheel. It has three slots: year, month, and day.
19
20                slotClasses: [
21                        SpinWheelSlot,
22                        SpinWheelSlot,
23                        SpinWheelSlot
24                ],
25
26                slotProps: [
27                        {labelFrom:1970, labelTo:2038},
28                        {},
29                        {}
30                ],
31
32                buildRendering: function(){
33                        this.initSlots();
34                        this.inherited(arguments);
35                        domClass.add(this.domNode, "mblSpinWheelDatePicker");
36                        this._conn = [
37                                this.connect(this.slots[0], "onFlickAnimationEnd", "_onYearSet"),
38                                this.connect(this.slots[1], "onFlickAnimationEnd", "_onMonthSet"),
39                                this.connect(this.slots[2], "onFlickAnimationEnd", "_onDaySet")
40                        ];
41                },
42
43                disableValues: function(/*Number*/daysInMonth){
44                        // summary:
45                        //              Disables the end days of the month to match the specified
46                        //              number of days of the month.
47                        array.forEach(this.slots[2].panelNodes, function(panel){
48                                for(var i = 27; i < 31; i++){
49                                        domClass.toggle(panel.childNodes[i], "mblSpinWheelSlotLabelGray", i >= daysInMonth);
50                                }
51                        });
52                }
53        });
54});
Note: See TracBrowser for help on using the repository browser.