/*
	Copyright (c) 2004-2007, The Dojo Foundation
	All Rights Reserved.

	Licensed under the Academic Free License version 2.1 or above OR the
	modified BSD license. For more information on Dojo licensing, see:

		http://dojotoolkit.org/book/dojo-book-0-9/introduction/licensing
*/


dojo._xdResourceLoaded({depends:[["provide","dijit.form.Button"],["require","dijit.form._FormWidget"],["require","dijit._Container"]],defineResource:function(_1){if(!_1._hasResource["dijit.form.Button"]){_1._hasResource["dijit.form.Button"]=true;_1.provide("dijit.form.Button");_1.require("dijit.form._FormWidget");_1.require("dijit._Container");_1.declare("dijit.form.Button",dijit.form._FormWidget,{label:"",showLabel:true,iconClass:"",type:"button",baseClass:"dijitButton",templateString:"<div class=\"dijit dijitLeft dijitInline dijitButton\"\n\tdojoAttachEvent=\"onclick:_onButtonClick,onmouseenter:_onMouse,onmouseleave:_onMouse,onmousedown:_onMouse\"\n\t><div class='dijitRight'\n\t\t><button class=\"dijitStretch dijitButtonNode dijitButtonContents\" dojoAttachPoint=\"focusNode,titleNode\"\n\t\t\ttype=\"${type}\" waiRole=\"button\" waiState=\"labelledby-${id}_label\"\n\t\t\t><span class=\"dijitInline ${iconClass}\" dojoAttachPoint=\"iconNode\" \n \t\t\t\t><span class=\"dijitToggleButtonIconChar\">&#10003</span \n\t\t\t></span\n\t\t\t><span class=\"dijitButtonText\" id=\"${id}_label\" dojoAttachPoint=\"containerNode\">${label}</span\n\t\t></button\n\t></div\n></div>\n",_onClick:function(e){if(this.disabled){return false;}this._clicked();return this.onClick(e);},_onButtonClick:function(e){_1.stopEvent(e);var _4=this._onClick(e)!==false;if(this.type=="submit"&&_4){for(var _5=this.domNode;_5;_5=_5.parentNode){var _6=dijit.byNode(_5);if(_6&&_6._onSubmit){_6._onSubmit(e);break;}if(_5.tagName.toLowerCase()=="form"){_5.submit();break;}}}},postCreate:function(){if(this.showLabel==false){var _7="";this.label=this.containerNode.innerHTML;_7=_1.trim(this.containerNode.innerText||this.containerNode.textContent);this.titleNode.title=_7;_1.addClass(this.containerNode,"dijitDisplayNone");}this.inherited(arguments);},onClick:function(e){return true;},_clicked:function(e){},setLabel:function(_a){this.containerNode.innerHTML=this.label=_a;if(_1.isMozilla){var _b=_1.getComputedStyle(this.domNode).display;this.domNode.style.display="none";var _c=this;setTimeout(function(){_c.domNode.style.display=_b;},1);}if(this.showLabel==false){this.titleNode.title=_1.trim(this.containerNode.innerText||this.containerNode.textContent);}}});_1.declare("dijit.form.DropDownButton",[dijit.form.Button,dijit._Container],{baseClass:"dijitDropDownButton",templateString:"<div class=\"dijit dijitLeft dijitInline\"\n\tdojoAttachEvent=\"onmouseenter:_onMouse,onmouseleave:_onMouse,onmousedown:_onMouse,onclick:_onDropDownClick,onkeydown:_onDropDownKeydown,onblur:_onDropDownBlur,onkeypress:_onKey\"\n\t><div class='dijitRight'>\n\t<button class=\"dijitStretch dijitButtonNode dijitButtonContents\" type=\"${type}\"\n\t\tdojoAttachPoint=\"focusNode,titleNode\" waiRole=\"button\" waiState=\"haspopup-true,labelledby-${id}_label\"\n\t\t><div class=\"dijitInline ${iconClass}\" dojoAttachPoint=\"iconNode\"></div\n\t\t><span class=\"dijitButtonText\" \tdojoAttachPoint=\"containerNode,popupStateNode\"\n\t\tid=\"${id}_label\">${label}</span\n\t\t><span class='dijitA11yDownArrow'>&#9660;</span>\n\t</button>\n</div></div>\n",_fillContent:function(){if(this.srcNodeRef){var _d=_1.query("*",this.srcNodeRef);dijit.form.DropDownButton.superclass._fillContent.call(this,_d[0]);this.dropDownContainer=this.srcNodeRef;}},startup:function(){if(!this.dropDown){var _e=_1.query("[widgetId]",this.dropDownContainer)[0];this.dropDown=dijit.byNode(_e);delete this.dropDownContainer;}_1.body().appendChild(this.dropDown.domNode);this.dropDown.domNode.style.display="none";},_onArrowClick:function(e){if(this.disabled){return;}this._toggleDropDown();},_onDropDownClick:function(e){var _11=_1.isFF&&_1.isFF<3&&navigator.appVersion.indexOf("Macintosh")!=-1;if(!_11||e.detail!=0||this._seenKeydown){this._onArrowClick(e);}this._seenKeydown=false;},_onDropDownKeydown:function(e){this._seenKeydown=true;},_onDropDownBlur:function(e){this._seenKeydown=false;},_onKey:function(e){if(this.disabled){return;}if(e.keyCode==_1.keys.DOWN_ARROW){if(!this.dropDown||this.dropDown.domNode.style.display=="none"){_1.stopEvent(e);return this._toggleDropDown();}}},_onBlur:function(){this._closeDropDown();},_toggleDropDown:function(){if(this.disabled){return;}dijit.focus(this.popupStateNode);var _15=this.dropDown;if(!_15){return false;}if(!_15.isShowingNow){if(_15.href&&!_15.isLoaded){var _16=this;var _17=_1.connect(_15,"onLoad",function(){_1.disconnect(_17);_16._openDropDown();});_15._loadCheck(true);return;}else{this._openDropDown();}}else{this._closeDropDown();}},_openDropDown:function(){var _18=this.dropDown;var _19=_18.domNode.style.width;var _1a=this;dijit.popup.open({parent:this,popup:_18,around:this.domNode,orient:this.isLeftToRight()?{"BL":"TL","BR":"TR","TL":"BL","TR":"BR"}:{"BR":"TR","BL":"TL","TR":"BR","TL":"BL"},onExecute:function(){_1a._closeDropDown(true);},onCancel:function(){_1a._closeDropDown(true);},onClose:function(){_18.domNode.style.width=_19;_1a.popupStateNode.removeAttribute("popupActive");this._opened=false;}});if(this.domNode.offsetWidth>_18.domNode.offsetWidth){var _1b=null;if(!this.isLeftToRight()){_1b=_18.domNode.parentNode;var _1c=_1b.offsetLeft+_1b.offsetWidth;}_1.marginBox(_18.domNode,{w:this.domNode.offsetWidth});if(_1b){_1b.style.left=_1c-this.domNode.offsetWidth+"px";}}this.popupStateNode.setAttribute("popupActive","true");this._opened=true;if(_18.focus){_18.focus();}},_closeDropDown:function(_1d){if(this._opened){dijit.popup.close(this.dropDown);if(_1d){this.focus();}this._opened=false;}}});_1.declare("dijit.form.ComboButton",dijit.form.DropDownButton,{templateString:"<table class='dijit dijitReset dijitInline dijitLeft'\n\tcellspacing='0' cellpadding='0'\n\tdojoAttachEvent=\"onmouseenter:_onMouse,onmouseleave:_onMouse,onmousedown:_onMouse\">\n\t<tr>\n\t\t<td\tclass=\"dijitStretch dijitButtonContents dijitButtonNode\"\n\t\t\ttabIndex=\"${tabIndex}\"\n\t\t\tdojoAttachEvent=\"ondijitclick:_onButtonClick\"  dojoAttachPoint=\"titleNode\"\n\t\t\twaiRole=\"button\" waiState=\"labelledby-${id}_label\">\n\t\t\t<div class=\"dijitInline ${iconClass}\" dojoAttachPoint=\"iconNode\"></div>\n\t\t\t<span class=\"dijitButtonText\" id=\"${id}_label\" dojoAttachPoint=\"containerNode\">${label}</span>\n\t\t</td>\n\t\t<td class='dijitReset dijitRight dijitButtonNode dijitDownArrowButton'\n\t\t\tdojoAttachPoint=\"popupStateNode,focusNode\"\n\t\t\tdojoAttachEvent=\"ondijitclick:_onArrowClick, onkeypress:_onKey\"\n\t\t\tstateModifier=\"DownArrow\"\n\t\t\ttitle=\"${optionsTitle}\" name=\"${name}\"\n\t\t\twaiRole=\"button\" waiState=\"haspopup-true\"\n\t\t><div waiRole=\"presentation\">&#9660;</div>\n\t</td></tr>\n</table>\n",attributeMap:_1.mixin(_1.clone(dijit.form._FormWidget.prototype.attributeMap),{id:"",name:""}),optionsTitle:"",baseClass:"dijitComboButton",_focusedNode:null,postCreate:function(){this.inherited(arguments);this._focalNodes=[this.titleNode,this.popupStateNode];_1.forEach(this._focalNodes,_1.hitch(this,function(_1e){if(_1.isIE){this.connect(_1e,"onactivate",this._onNodeFocus);}else{this.connect(_1e,"onfocus",this._onNodeFocus);}}));},focusFocalNode:function(_1f){this._focusedNode=_1f;dijit.focus(_1f);},hasNextFocalNode:function(){return this._focusedNode!==this.getFocalNodes()[1];},focusNext:function(){this._focusedNode=this.getFocalNodes()[this._focusedNode?1:0];dijit.focus(this._focusedNode);},hasPrevFocalNode:function(){return this._focusedNode!==this.getFocalNodes()[0];},focusPrev:function(){this._focusedNode=this.getFocalNodes()[this._focusedNode?0:1];dijit.focus(this._focusedNode);},getFocalNodes:function(){return this._focalNodes;},_onNodeFocus:function(evt){this._focusedNode=evt.currentTarget;},_onBlur:function(evt){this.inherited(arguments);this._focusedNode=null;}});_1.declare("dijit.form.ToggleButton",dijit.form.Button,{baseClass:"dijitToggleButton",checked:false,_clicked:function(evt){this.setChecked(!this.checked);},setChecked:function(_23){this.checked=_23;dijit.setWaiState(this.focusNode||this.domNode,"pressed",this.checked);this._setStateClass();this.onChange(_23);}});}}});