/* 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 */ /* This is a compiled version of Dojo, built for deployment and not for development. To get an editable version, please visit: http://dojotoolkit.org for documentation and information on getting the source. */ if(!dojo._hasResource["dijit._base.focus"]){dojo._hasResource["dijit._base.focus"]=true;dojo.provide("dijit._base.focus");dojo.mixin(dijit,{_curFocus:null,_prevFocus:null,isCollapsed:function(){var _1=dojo.doc;if(_1.selection){var s=_1.selection;if(s.type=="Text"){return !s.createRange().htmlText.length;}else{return !s.createRange().length;}}else{var _3=dojo.global;var _4=_3.getSelection();if(dojo.isString(_4)){return !_4;}else{return !_4||_4.isCollapsed||!_4.toString();}}},getBookmark:function(){var _5,_6=dojo.doc.selection;if(_6){var _7=_6.createRange();if(_6.type.toUpperCase()=="CONTROL"){if(_7.length){_5=[];var i=0,_9=_7.length;while(i<_9){_5.push(_7.item(i++));}}else{_5=null;}}else{_5=_7.getBookmark();}}else{if(window.getSelection){_6=dojo.global.getSelection();if(_6){_7=_6.getRangeAt(0);_5=_7.cloneRange();}}else{console.warn("No idea how to store the current selection for this browser!");}}return _5;},moveToBookmark:function(_a){var _b=dojo.doc;if(_b.selection){var _c;if(dojo.isArray(_a)){_c=_b.body.createControlRange();dojo.forEach(_a,function(n){_c.addElement(n);});}else{_c=_b.selection.createRange();_c.moveToBookmark(_a);}_c.select();}else{var _e=dojo.global.getSelection&&dojo.global.getSelection();if(_e&&_e.removeAllRanges){_e.removeAllRanges();_e.addRange(_a);}else{console.warn("No idea how to restore selection for this browser!");}}},getFocus:function(_f,_10){return {node:_f&&dojo.isDescendant(dijit._curFocus,_f.domNode)?dijit._prevFocus:dijit._curFocus,bookmark:!dojo.withGlobal(_10||dojo.global,dijit.isCollapsed)?dojo.withGlobal(_10||dojo.global,dijit.getBookmark):null,openedForWindow:_10};},focus:function(_11){if(!_11){return;}var _12="node" in _11?_11.node:_11,_13=_11.bookmark,_14=_11.openedForWindow;if(_12){var _15=(_12.tagName.toLowerCase()=="iframe")?_12.contentWindow:_12;if(_15&&_15.focus){try{_15.focus();}catch(e){}}dijit._onFocusNode(_12);}if(_13&&dojo.withGlobal(_14||dojo.global,dijit.isCollapsed)){if(_14){_14.focus();}try{dojo.withGlobal(_14||dojo.global,dijit.moveToBookmark,null,[_13]);}catch(e){}}},_activeStack:[],registerIframe:function(_16){dijit.registerWin(_16.contentWindow,_16);},registerWin:function(_17,_18){dojo.connect(_17.document,"onmousedown",function(evt){dijit._justMouseDowned=true;setTimeout(function(){dijit._justMouseDowned=false;},0);dijit._onTouchNode(_18||evt.target||evt.srcElement);});var doc=_17.document;if(doc){if(dojo.isIE){doc.attachEvent("onactivate",function(evt){if(evt.srcElement.tagName.toLowerCase()!="#document"){dijit._onFocusNode(_18||evt.srcElement);}});doc.attachEvent("ondeactivate",function(evt){dijit._onBlurNode(_18||evt.srcElement);});}else{doc.addEventListener("focus",function(evt){dijit._onFocusNode(_18||evt.target);},true);doc.addEventListener("blur",function(evt){dijit._onBlurNode(_18||evt.target);},true);}}doc=null;},_onBlurNode:function(_1f){dijit._prevFocus=dijit._curFocus;dijit._curFocus=null;if(dijit._justMouseDowned){return;}if(dijit._clearActiveWidgetsTimer){clearTimeout(dijit._clearActiveWidgetsTimer);}dijit._clearActiveWidgetsTimer=setTimeout(function(){delete dijit._clearActiveWidgetsTimer;dijit._setStack([]);dijit._prevFocus=null;},100);},_onTouchNode:function(_20){if(dijit._clearActiveWidgetsTimer){clearTimeout(dijit._clearActiveWidgetsTimer);delete dijit._clearActiveWidgetsTimer;}var _21=[];try{while(_20){if(_20.dijitPopupParent){_20=dijit.byId(_20.dijitPopupParent).domNode;}else{if(_20.tagName&&_20.tagName.toLowerCase()=="body"){if(_20===dojo.body()){break;}_20=dijit.getDocumentWindow(_20.ownerDocument).frameElement;}else{var id=_20.getAttribute&&_20.getAttribute("widgetId");if(id){_21.unshift(id);}_20=_20.parentNode;}}}}catch(e){}dijit._setStack(_21);},_onFocusNode:function(_23){if(!_23){return;}if(_23.nodeType==9){return;}dijit._onTouchNode(_23);if(_23==dijit._curFocus){return;}if(dijit._curFocus){dijit._prevFocus=dijit._curFocus;}dijit._curFocus=_23;dojo.publish("focusNode",[_23]);},_setStack:function(_24){var _25=dijit._activeStack;dijit._activeStack=_24;for(var _26=0;_26=_26;i--){var _28=dijit.byId(_25[i]);if(_28){_28._focused=false;_28._hasBeenBlurred=true;if(_28._onBlur){_28._onBlur();}if(_28._setStateClass){_28._setStateClass();}dojo.publish("widgetBlur",[_28]);}}for(i=_26;i<_24.length;i++){_28=dijit.byId(_24[i]);if(_28){_28._focused=true;if(_28._onFocus){_28._onFocus();}if(_28._setStateClass){_28._setStateClass();}dojo.publish("widgetFocus",[_28]);}}}});dojo.addOnLoad(function(){dijit.registerWin(window);});}if(!dojo._hasResource["dijit._base.manager"]){dojo._hasResource["dijit._base.manager"]=true;dojo.provide("dijit._base.manager");dojo.declare("dijit.WidgetSet",null,{constructor:function(){this._hash={};},add:function(_29){if(this._hash[_29.id]){throw new Error("Tried to register widget with id=="+_29.id+" but that id is already registered");}this._hash[_29.id]=_29;},remove:function(id){delete this._hash[id];},forEach:function(_2b){for(var id in this._hash){_2b(this._hash[id]);}},filter:function(_2d){var res=new dijit.WidgetSet();this.forEach(function(_2f){if(_2d(_2f)){res.add(_2f);}});return res;},byId:function(id){return this._hash[id];},byClass:function(cls){return this.filter(function(_32){return _32.declaredClass==cls;});}});dijit.registry=new dijit.WidgetSet();dijit._widgetTypeCtr={};dijit.getUniqueId=function(_33){var id;do{id=_33+"_"+(_33 in dijit._widgetTypeCtr?++dijit._widgetTypeCtr[_33]:dijit._widgetTypeCtr[_33]=0);}while(dijit.byId(id));return id;};dijit.findWidgets=function(_35){var _36=[];function _37(_38){var _39=dojo.isIE?_38.children:_38.childNodes,i=0,_3b;while(_3b=_39[i++]){if(_3b.nodeType!=1){continue;}var _3c=_3b.getAttribute("widgetId");if(_3c){var _3d=dijit.byId(_3c);_36.push(_3d);}else{_37(_3b);}}};_37(_35);return _36;};if(dojo.isIE){dojo.addOnWindowUnload(function(){dojo.forEach(dijit.findWidgets(dojo.body()),function(_3e){if(_3e.destroyRecursive){_3e.destroyRecursive();}else{if(_3e.destroy){_3e.destroy();}}});});}dijit.byId=function(id){return (dojo.isString(id))?dijit.registry.byId(id):id;};dijit.byNode=function(_40){return dijit.registry.byId(_40.getAttribute("widgetId"));};dijit.getEnclosingWidget=function(_41){while(_41){if(_41.getAttribute&&_41.getAttribute("widgetId")){return dijit.registry.byId(_41.getAttribute("widgetId"));}_41=_41.parentNode;}return null;};dijit._tabElements={area:true,button:true,input:true,object:true,select:true,textarea:true};dijit._isElementShown=function(_42){var _43=dojo.style(_42);return (_43.visibility!="hidden")&&(_43.visibility!="collapsed")&&(_43.display!="none")&&(dojo.attr(_42,"type")!="hidden");};dijit.isTabNavigable=function(_44){if(dojo.hasAttr(_44,"disabled")){return false;}var _45=dojo.hasAttr(_44,"tabindex");var _46=dojo.attr(_44,"tabindex");if(_45&&_46>=0){return true;}var _47=_44.nodeName.toLowerCase();if(((_47=="a"&&dojo.hasAttr(_44,"href"))||dijit._tabElements[_47])&&(!_45||_46>=0)){return true;}return false;};dijit._getTabNavigable=function(_48){var _49,_4a,_4b,_4c,_4d,_4e;var _4f=function(_50){dojo.query("> *",_50).forEach(function(_51){var _52=dijit._isElementShown(_51);if(_52&&dijit.isTabNavigable(_51)){var _53=dojo.attr(_51,"tabindex");if(!dojo.hasAttr(_51,"tabindex")||_53==0){if(!_49){_49=_51;}_4a=_51;}else{if(_53>0){if(!_4b||_53<_4c){_4c=_53;_4b=_51;}if(!_4d||_53>=_4e){_4e=_53;_4d=_51;}}}}if(_52&&_51.nodeName.toUpperCase()!="SELECT"){_4f(_51);}});};if(dijit._isElementShown(_48)){_4f(_48);}return {first:_49,last:_4a,lowest:_4b,highest:_4d};};dijit.getFirstInTabbingOrder=function(_54){var _55=dijit._getTabNavigable(dojo.byId(_54));return _55.lowest?_55.lowest:_55.first;};dijit.getLastInTabbingOrder=function(_56){var _57=dijit._getTabNavigable(dojo.byId(_56));return _57.last?_57.last:_57.highest;};dijit.defaultDuration=dojo.config["defaultDuration"]||200;}if(!dojo._hasResource["dojo.AdapterRegistry"]){dojo._hasResource["dojo.AdapterRegistry"]=true;dojo.provide("dojo.AdapterRegistry");dojo.AdapterRegistry=function(_58){this.pairs=[];this.returnWrappers=_58||false;};dojo.extend(dojo.AdapterRegistry,{register:function(_59,_5a,_5b,_5c,_5d){this.pairs[((_5d)?"unshift":"push")]([_59,_5a,_5b,_5c]);},match:function(){for(var i=0;i0&&_9e[pi].parent===_9e[pi-1].widget;pi--){}return _9e[pi];};_ac.push(dojo.connect(_a8,"onkeypress",this,function(evt){if(evt.charOrCode==dojo.keys.ESCAPE&&_a3.onCancel){dojo.stopEvent(evt);_a3.onCancel();}else{if(evt.charOrCode===dojo.keys.TAB){dojo.stopEvent(evt);var _b0=_ad();if(_b0&&_b0.onCancel){_b0.onCancel();}}}}));if(_a4.onCancel){_ac.push(dojo.connect(_a4,"onCancel",null,_a3.onCancel));}_ac.push(dojo.connect(_a4,_a4.onExecute?"onExecute":"onChange",null,function(){var _b1=_ad();if(_b1&&_b1.onExecute){_b1.onExecute();}}));_9e.push({wrapper:_a8,iframe:_aa,widget:_a4,parent:_a3.parent,onExecute:_a3.onExecute,onCancel:_a3.onCancel,onClose:_a3.onClose,handlers:_ac});if(_a4.onOpen){_a4.onOpen(_ab);}return _ab;};this.close=function(_b2){while(dojo.some(_9e,function(_b3){return _b3.widget==_b2;})){var top=_9e.pop(),_b5=top.wrapper,_b6=top.iframe,_b7=top.widget,_b8=top.onClose;if(_b7.onClose){_b7.onClose();}dojo.forEach(top.handlers,dojo.disconnect);if(!_b7||!_b7.domNode){return;}this.prepare(_b7.domNode);_b6.destroy();dojo.destroy(_b5);if(_b8){_b8();}}};}();dijit._frames=new function(){var _b9=[];this.pop=function(){var _ba;if(_b9.length){_ba=_b9.pop();_ba.style.display="";}else{if(dojo.isIE){var _bb=dojo.config["dojoBlankHtmlUrl"]||(dojo.moduleUrl("dojo","resources/blank.html")+"")||"javascript:\"\"";var _bc="