| /* |
| Copyright (c) 2004-2009, The Dojo Foundation All Rights Reserved. |
| Available via Academic Free License >= 2.1 OR the modified BSD license. |
| see: http://dojotoolkit.org/license for details |
| */ |
| |
| |
| if(!dojo._hasResource["dijit._base.typematic"]){ |
| dojo._hasResource["dijit._base.typematic"]=true; |
| dojo.provide("dijit._base.typematic"); |
| dijit.typematic={_fireEventAndReload:function(){ |
| this._timer=null; |
| this._callback(++this._count,this._node,this._evt); |
| this._currentTimeout=Math.max(this._currentTimeout<0?this._initialDelay:(this._subsequentDelay>1?this._subsequentDelay:Math.round(this._currentTimeout*this._subsequentDelay)),10); |
| this._timer=setTimeout(dojo.hitch(this,"_fireEventAndReload"),this._currentTimeout); |
| },trigger:function(_1,_2,_3,_4,_5,_6,_7){ |
| if(_5!=this._obj){ |
| this.stop(); |
| this._initialDelay=_7||500; |
| this._subsequentDelay=_6||0.9; |
| this._obj=_5; |
| this._evt=_1; |
| this._node=_3; |
| this._currentTimeout=-1; |
| this._count=-1; |
| this._callback=dojo.hitch(_2,_4); |
| this._fireEventAndReload(); |
| } |
| },stop:function(){ |
| if(this._timer){ |
| clearTimeout(this._timer); |
| this._timer=null; |
| } |
| if(this._obj){ |
| this._callback(-1,this._node,this._evt); |
| this._obj=null; |
| } |
| },addKeyListener:function(_8,_9,_a,_b,_c,_d){ |
| if(_9.keyCode){ |
| _9.charOrCode=_9.keyCode; |
| dojo.deprecated("keyCode attribute parameter for dijit.typematic.addKeyListener is deprecated. Use charOrCode instead.","","2.0"); |
| }else{ |
| if(_9.charCode){ |
| _9.charOrCode=String.fromCharCode(_9.charCode); |
| dojo.deprecated("charCode attribute parameter for dijit.typematic.addKeyListener is deprecated. Use charOrCode instead.","","2.0"); |
| } |
| } |
| return [dojo.connect(_8,"onkeypress",this,function(_e){ |
| if(_e.charOrCode==_9.charOrCode&&(_9.ctrlKey===undefined||_9.ctrlKey==_e.ctrlKey)&&(_9.altKey===undefined||_9.altKey==_e.altKey)&&(_9.metaKey===undefined||_9.metaKey==(_e.metaKey||false))&&(_9.shiftKey===undefined||_9.shiftKey==_e.shiftKey)){ |
| dojo.stopEvent(_e); |
| dijit.typematic.trigger(_9,_a,_8,_b,_9,_c,_d); |
| }else{ |
| if(dijit.typematic._obj==_9){ |
| dijit.typematic.stop(); |
| } |
| } |
| }),dojo.connect(_8,"onkeyup",this,function(_f){ |
| if(dijit.typematic._obj==_9){ |
| dijit.typematic.stop(); |
| } |
| })]; |
| },addMouseListener:function(_10,_11,_12,_13,_14){ |
| var dc=dojo.connect; |
| return [dc(_10,"mousedown",this,function(evt){ |
| dojo.stopEvent(evt); |
| dijit.typematic.trigger(evt,_11,_10,_12,_10,_13,_14); |
| }),dc(_10,"mouseup",this,function(evt){ |
| dojo.stopEvent(evt); |
| dijit.typematic.stop(); |
| }),dc(_10,"mouseout",this,function(evt){ |
| dojo.stopEvent(evt); |
| dijit.typematic.stop(); |
| }),dc(_10,"mousemove",this,function(evt){ |
| dojo.stopEvent(evt); |
| }),dc(_10,"dblclick",this,function(evt){ |
| dojo.stopEvent(evt); |
| if(dojo.isIE){ |
| dijit.typematic.trigger(evt,_11,_10,_12,_10,_13,_14); |
| setTimeout(dojo.hitch(this,dijit.typematic.stop),50); |
| } |
| })]; |
| },addListener:function(_15,_16,_17,_18,_19,_1a,_1b){ |
| return this.addKeyListener(_16,_17,_18,_19,_1a,_1b).concat(this.addMouseListener(_15,_18,_19,_1a,_1b)); |
| }}; |
| } |