diff options
Diffstat (limited to 'js/dojo/dojox/drawing/manager/StencilUI.js')
| -rw-r--r-- | js/dojo/dojox/drawing/manager/StencilUI.js | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/js/dojo/dojox/drawing/manager/StencilUI.js b/js/dojo/dojox/drawing/manager/StencilUI.js new file mode 100644 index 0000000..7fdaa14 --- /dev/null +++ b/js/dojo/dojox/drawing/manager/StencilUI.js @@ -0,0 +1,69 @@ +//>>built +// wrapped by build app +define("dojox/drawing/manager/StencilUI", ["dijit","dojo","dojox"], function(dijit,dojo,dojox){ +dojo.provide("dojox.drawing.manager.StencilUI"); + +(function(){ + var surface, surfaceNode; + dojox.drawing.manager.StencilUI = dojox.drawing.util.oo.declare( + // summary: + // Used for handling Stencils as UI components. + // description: + // Replaces manager.Stencil. Handles basic UI mouse + // events like onmouseover. Does not handle selections + // or support delete, etc. + // + function(options){ + // + // TODO: mixin props + // + surface = options.surface; + this.canvas = options.canvas; + + this.defaults = dojox.drawing.defaults.copy(); + this.mouse = options.mouse; + this.keys = options.keys; + this._mouseHandle = this.mouse.register(this); + this.stencils = {}; + }, + { + register: function(/*Object*/stencil){ + this.stencils[stencil.id] = stencil; + return stencil; + }, + onUiDown: function(/*EventObject*/obj){ + // summary: + // Event fired on mousedown on a stencil + // + if(!this._isStencil(obj)){ return; } + this.stencils[obj.id].onDown(obj); + }, + onUiUp: function(/*EventObject*/obj){ + // summary: + // Event fired on mousedown on a stencil + // + if(!this._isStencil(obj)){ return; } + this.stencils[obj.id].onUp(obj); + }, + onOver: function(/*EventObject*/obj){ + // summary: + // Event fired on mousedown on a stencil + // + if(!this._isStencil(obj)){ return; } + this.stencils[obj.id].onOver(obj); + }, + onOut: function(/*EventObject*/obj){ + // summary: + // Event fired on mousedown on a stencil + // + if(!this._isStencil(obj)){ return; } + this.stencils[obj.id].onOut(obj); + }, + _isStencil: function(/*EventObject*/obj){ + return !!obj.id && !!this.stencils[obj.id] && this.stencils[obj.id].type == "drawing.library.UI.Button"; + } + } + ); + +})(); +}); |
