summaryrefslogtreecommitdiff
path: root/js/dojo/dojox/sketch/Slider.js
diff options
context:
space:
mode:
authorTristan Zur <tzur@web.web.ccwn.org>2014-03-27 22:27:47 +0100
committerTristan Zur <tzur@web.web.ccwn.org>2014-03-27 22:27:47 +0100
commitb62676ca5d3d6f6ba3f019ea3f99722e165a98d8 (patch)
tree86722cb80f07d4569f90088eeaea2fc2f6e2ef94 /js/dojo/dojox/sketch/Slider.js
Initial commit of intern.ccwn.org contentsHEADmaster
Diffstat (limited to 'js/dojo/dojox/sketch/Slider.js')
-rw-r--r--js/dojo/dojox/sketch/Slider.js43
1 files changed, 43 insertions, 0 deletions
diff --git a/js/dojo/dojox/sketch/Slider.js b/js/dojo/dojox/sketch/Slider.js
new file mode 100644
index 0000000..4c4b433
--- /dev/null
+++ b/js/dojo/dojox/sketch/Slider.js
@@ -0,0 +1,43 @@
+//>>built
+define("dojox/sketch/Slider", [
+ "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;
+});