source: Dev/trunk/src/client/dojox/widget/_CalendarYearView.js @ 485

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

Added Dojo 1.9.3 release.

File size: 1.5 KB
Line 
1define([
2        "dojo/_base/declare",
3        "./_CalendarView",
4        "dijit/_TemplatedMixin",
5        "dojo/date",
6        "dojo/dom-class",
7        "dojo/_base/event",
8        "dojo/text!./Calendar/CalendarYear.html",
9        "./_CalendarMonthYearView"
10], function(declare, _CalendarView, _TemplatedMixin, dojoDate, domClass, event, template, _CalendarMonthYearView){
11        return declare("dojox.widget._CalendarYearView", [_CalendarView, _TemplatedMixin], {
12                // summary:
13                //              A Calendar view listing 12 years
14
15                // templateString: String
16                //              The template to be used to construct the widget.
17                templateString: template,
18
19                displayedYears: 6,
20
21                postCreate: function(){
22                        // summary:
23                        //              Constructs the view
24                        this.cloneClass(".dojoxCalendarYearTemplate", 3);
25                        this.cloneClass(".dojoxCalendarYearGroupTemplate", 2);
26                        this._populateYears();
27                        this.addFx(".dojoxCalendarYearLabel", this.domNode);
28                },
29
30                _setValueAttr: function(value){
31                        this._populateYears(value.getFullYear());
32                },
33
34                _populateYears: _CalendarMonthYearView.prototype._populateYears,
35
36                adjustDate: function(date, amount){
37                        // summary:
38                        //              Adjusts the value of a date. It moves it by 12 years each time.
39                        return dojoDate.add(date, "year", amount * 12);
40                },
41
42                onClick: function(evt){
43                        // summary:
44                        //              Handles clicks on year values.
45                        if(!domClass.contains(evt.target, "dojoxCalendarYearLabel")){event.stop(evt); return;}
46                        var year = Number(evt.target.innerHTML);
47                        var date = this.get("value");
48                        date.setYear(year);
49                        this.onValueSelected(date, year);
50                }
51        });
52});
Note: See TracBrowser for help on using the repository browser.