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.
 
 
 
 
 
 

42 lines
1.3 KiB

define([
"dojo/_base/kernel",
"dojo/_base/lang",
"dojo/_base/declare",
"dijit/form/HorizontalSlider",
"./_Plugin"
], function(dojo){
dojo.getObject("sketch", true, dojox);
dojo.declare("dojox.sketch.Slider", dojox.sketch._Plugin,{
_initButton: function(){
this.slider=new dijit.form.HorizontalSlider({minimum:5,maximum:100,style:"width:100px;",baseClass:'dijitInline dijitSlider'});
this.slider._movable.node.title='Double Click to "Zoom to Fit"'; //I18N
this.connect(this.slider,'onChange','_setZoom');
this.connect(this.slider.sliderHandle,'ondblclick','_zoomToFit');
},
_zoomToFit: function(){
var r=this.figure.getFit();
this.slider.attr('value',this.slider.maximum<r?this.slider.maximum:(this.slider.minimum>r?this.slider.minimum:r));
},
_setZoom: function(v){
if(v && this.figure){
this.figure.zoom(v);
}
},
reset: function(){
//reset slider to maximum so that onChange will be fired when _zoomToFit is called
this.slider.attr('value',this.slider.maximum);
this._zoomToFit();
},
setToolbar: function(t){
this._initButton();
t.addChild(this.slider);
if(!t._reset2Zoom){
t._reset2Zoom=true;
this.connect(t,'reset','reset');
}
}
});
dojox.sketch.registerTool("Slider", dojox.sketch.Slider);
return dojox.sketch.Slider;
});