sample skeleton application with dojo toolkit & arcgis js api v 4.30
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

52 lines
1.5 KiB

define([
"dojo/_base/declare",
"./_CalendarView",
"dijit/_TemplatedMixin",
"dojo/date",
"dojo/dom-class",
"dojo/_base/event",
"dojo/text!./Calendar/CalendarYear.html",
"./_CalendarMonthYearView"
], function(declare, _CalendarView, _TemplatedMixin, dojoDate, domClass, event, template, _CalendarMonthYearView){
return declare("dojox.widget._CalendarYearView", [_CalendarView, _TemplatedMixin], {
// summary:
// A Calendar view listing 12 years
// templateString: String
// The template to be used to construct the widget.
templateString: template,
displayedYears: 6,
postCreate: function(){
// summary:
// Constructs the view
this.cloneClass(".dojoxCalendarYearTemplate", 3);
this.cloneClass(".dojoxCalendarYearGroupTemplate", 2);
this._populateYears();
this.addFx(".dojoxCalendarYearLabel", this.domNode);
},
_setValueAttr: function(value){
this._populateYears(value.getFullYear());
},
_populateYears: _CalendarMonthYearView.prototype._populateYears,
adjustDate: function(date, amount){
// summary:
// Adjusts the value of a date. It moves it by 12 years each time.
return dojoDate.add(date, "year", amount * 12);
},
onClick: function(evt){
// summary:
// Handles clicks on year values.
if(!domClass.contains(evt.target, "dojoxCalendarYearLabel")){event.stop(evt); return;}
var year = Number(evt.target.innerHTML);
var date = this.get("value");
date.setYear(year);
this.onValueSelected(date, year);
}
});
});