﻿// (c) 2010 CodePlex Foundation
(function(){var b="ExtendedDropDown";function a(){var j="hoverOut",i="hoverOver",h="hidden",g="hiding",f="popup",e="shown",d="showing",c=true,b=false,a=null;Type.registerNamespace("Sys.Extended.UI");Sys.Extended.UI.DropDownBehavior=function(e){var c=this;Sys.Extended.UI.DropDownBehavior.initializeBase(c,[e]);c._dropDownControl=a;c._highlightBorderColor="#2353B2";c._highlightBackgroundColor="#FFF3DB";c._dropArrowBackgroundColor="#C6E1FF";c._dropArrowImageUrl=a;if(Sys.loader){var d=Sys.loader.basePath;if(d){if(d.charAt(d.length-1)!=="/")d+="/";c._dropArrowImageUrl=d+"extended/dropdown/drop-arrow.gif"}}c._dropArrowWidth="16px";c._oldBackgroundColor=a;c._dropFrame=a;c._dropArrow=a;c._dropArrowImage=a;c._dropWrapper=a;c._isOpen=b;c._isOver=b;c._wasClicked=a;c._dropWrapperHoverBehavior=a;c._dropPopupPopupBehavior=a;c._onShowJson=a;c._onHideJson=a;c._dropDownControl$delegates={click:Function.createDelegate(c,c._dropDownControl_onclick),contextmenu:Function.createDelegate(c,c._dropDownControl_oncontextmenu)};c._dropFrame$delegates={click:Function.createDelegate(c,c._dropFrame_onclick),contextmenu:Function.createDelegate(c,c._dropFrame_oncontextmenu)};c._dropWrapper$delegates={click:Function.createDelegate(c,c._dropWrapper_onclick),contextmenu:Function.createDelegate(c,c._dropWrapper_oncontextmenu)};c._document$delegates={click:Function.createDelegate(c,c._document_onclick),contextmenu:Function.createDelegate(c,c._document_oncontextmenu)};c._dropWrapperHoverBehavior$delegates={hover:Function.createDelegate(c,c._dropWrapperHoverBehavior_onhover),unhover:Function.createDelegate(c,c._dropWrapperHoverBehavior_onunhover)}};Sys.Extended.UI.DropDownBehavior.prototype={initialize:function(){var h="_dropWrapper",g="ajax__dropdown_arrow",f="ajax__dropdown_frame_line",e="div",d=this;Sys.Extended.UI.DropDownBehavior.callBaseMethod(d,"initialize");var i=d.get_element(),k=i.parentNode;d._dropDownControl==a&&$common.createElementFromTemplate({parent:k,nameTable:d,name:"_dropDownControl",nodeName:e,visible:b,cssClasses:d._dropDownControl?a:["ajax__dropdown_panel"],properties:{__GENERATED:c}});$addHandlers(d._dropDownControl,d._dropDownControl$delegates);var j={};if(d._dropArrowImageUrl)j.src=d._dropArrowImageUrl;$common.createElementFromTemplate({parent:k,nameTable:d,name:"_dropFrame",nodeName:"span",visible:b,children:[{name:"_dropFrameTop",nodeName:e,cssClasses:[f]},{name:"_dropFrameRight",nodeName:e,cssClasses:[f]},{name:"_dropFrameBottom",nodeName:e,cssClasses:[f]},{name:"_dropFrameLeft",nodeName:e,cssClasses:[f]},{name:"_dropArrow",nodeName:e,cssClasses:!d._dropArrowImageUrl?[g,"ajax__dropdown_arrow_image"]:[g],properties:{style:{width:d._dropArrowWidth,backgroundColor:d._dropArrowBackgroundColor}},events:d._dropFrame$delegates,children:[{name:"_dropArrowWrapper",nodeName:e,visible:!!d._dropArrowImageUrl,cssClasses:["ajax__dropdown_arrow_wrapper"],children:[{name:"_dropArrowImage",nodeName:"img",properties:j}]}]}]});$common.createElementFromTemplate({parent:a,nameTable:d,name:h,nodeName:"span",properties:{id:i.id+h,style:{cursor:"default"}},events:d._dropWrapper$delegates,content:i});d._dropPopupPopupBehavior=$create(Sys.Extended.UI.PopupBehavior,{positioningMode:Sys.Extended.UI.PositioningMode.BottomRight,parentElement:i,y:-1},a,a,d._dropDownControl);d._onShowJson&&d._dropPopupPopupBehavior.set_onShow(d._onShowJson);d._onHideJson&&d._dropPopupPopupBehavior.set_onHide(d._onHideJson);d._dropWrapperHoverBehavior=$create(Sys.Extended.UI.HoverBehavior,{hoverElement:d._dropFrame},d._dropWrapperHoverBehavior$delegates,a,d._dropWrapper);$addHandlers(document,d._document$delegates)},dispose:function(){var c=this,d=c.get_element();if(c._isOpen){c.hide();c.unhover();c._isOpen=b}$common.removeHandlers(document,c._document$delegates);c._onShowJson=a;c._onHideJson=a;if(c._dropPopupPopupBehavior){c._dropPopupPopupBehavior.dispose();c._dropPopupPopupBehavior=a}if(c._dropWrapperHoverBehavior){c._dropWrapperHoverBehavior.dispose();c._dropWrapperHoverBehavior=a}if(c._dropFrame){$common.removeElement(c._dropFrame);c._dropFrame=a;c._dropFrameTop=a;c._dropFrameRight=a;c._dropFrameBottom=a;c._dropFrameLeft=a;c._dropArrow=a;c._dropArrowWrapper=a;c._dropArrowImage=a}if(c._dropWrapper){$common.removeHandlers(c._dropWrapper,c._dropWrapper$delegates);$common.unwrapElement(d,c._dropWrapper);c._dropWrapper=a}if(c._dropDownControl){$common.removeHandlers(c._dropDownControl,c._dropDownControl$delegates);c._dropDownControl.__GENERATED&&$common.removeElement(c._dropDownControl);c._dropDownControl=a}Sys.Extended.UI.DropDownBehavior.callBaseMethod(c,"dispose")},hover:function(){var a=this,e=a.get_element();if(!a._isOver){a._isOver=c;a.raiseHoverOver(Sys.EventArgs.Empty);var d=$common.getBounds(e);$common.setLocation(a._dropFrame,{x:0,y:0});$common.setVisible(a._dropFrame,c);var f=$common.getLocation(a._dropFrame);$common.setVisible(a._dropFrame,b);d.x-=f.x;d.y-=f.y;$common.setBounds(a._dropFrameTop,{x:d.x,y:d.y,width:d.width,height:1});$common.setBounds(a._dropFrameRight,{x:d.x+d.width-1,y:d.y,width:1,height:d.height});$common.setBounds(a._dropFrameBottom,{x:d.x,y:d.y+d.height-1,width:d.width,height:1});$common.setBounds(a._dropFrameLeft,{x:d.x,y:d.y,width:1,height:d.height});$common.setBounds(a._dropArrow,{x:d.x+d.width-17,y:d.y+1,width:16,height:d.height-2});a._dropFrameTop.style.backgroundColor=a._highlightBorderColor;a._dropFrameRight.style.backgroundColor=a._highlightBorderColor;a._dropFrameBottom.style.backgroundColor=a._highlightBorderColor;a._dropFrameLeft.style.backgroundColor=a._highlightBorderColor;$common.setVisible(a._dropFrame,c);if(!a._oldBackgroundColor)a._oldBackgroundColor=$common.getCurrentStyle(e,"backgroundColor");e.style.backgroundColor=a._highlightBackgroundColor}},unhover:function(){var c=this,d=c.get_element();if(c._isOver||!c._isOpen){c._isOver=b;if(!c._isOpen){$common.setVisible(c._dropFrame,b);if(c._oldBackgroundColor){d.style.backgroundColor=c._oldBackgroundColor;c._oldBackgroundColor=a}else d.style.backgroundColor="transparent"}c.raiseHoverOut(Sys.EventArgs.Empty)}},show:function(){var a=this;if(!a._isOpen){a.hover();var b=new Sys.CancelEventArgs;a.raiseShowing(b);a.raisePopup(b);if(b.get_cancel())return;a._isOpen=c;a.populate();(!a._dynamicPopulateBehavior||a._dynamicPopulateBehavior._populated&&a._cacheDynamicResults)&&a._showPopup()}},_showPopup:function(){this._dropPopupPopupBehavior.show();this.raiseShown(Sys.EventArgs.Empty)},hide:function(){var a=this;if(a._isOpen){var c=new Sys.CancelEventArgs;a.raiseHiding(c);if(c.get_cancel())return;a._isOpen=b;a._dropPopupPopupBehavior.hide();a.raiseHidden(Sys.EventArgs.Empty)}},_dropWrapperHoverBehavior_onhover:function(){this.hover()},_dropWrapperHoverBehavior_onunhover:function(){this.unhover()},_dropWrapper_onclick:function(b){var a=this;if(b.target.tagName!="A"){if(!a._isOpen)a.show();else a.hide();a._wasClicked=c}},_dropWrapper_oncontextmenu:function(a){if(a.target.tagName!="A"){this._wasClicked=c;a.preventDefault();this.show()}},_dropFrame_onclick:function(){var a=this;if(!a._isOpen)a.show();else a.hide();a._wasClicked=c},_dropFrame_oncontextmenu:function(a){this._wasClicked=c;a.preventDefault();this.show()},_dropDownControl_onclick:function(){},_dropDownControl_oncontextmenu:function(a){this._wasClicked=c;a.preventDefault()},_document_onclick:function(){var a=this;if(a._wasClicked)a._wasClicked=b;else if(a._isOpen){a.hide();a.unhover()}},_document_oncontextmenu:function(){var a=this;if(a._wasClicked)a._wasClicked=b;else if(a._isOpen){a.hide();a.unhover()}},_onPopulated:function(b,a){Sys.Extended.UI.DropDownBehavior.callBaseMethod(this,"_onPopulated",[b,a]);this._isOpen&&this._showPopup()},get_onShow:function(){return this._dropPopupPopupBehavior?this._dropPopupPopupBehavior.get_onShow():this._onShowJson},set_onShow:function(b){var a=this;if(a._dropPopupPopupBehavior)a._dropPopupPopupBehavior.set_onShow(b);else a._onShowJson=b;a.raisePropertyChanged("onShow")},get_onShowBehavior:function(){return this._dropPopupPopupBehavior?this._dropPopupPopupBehavior.get_onShowBehavior():a},onShow:function(){this._dropPopupPopupBehavior&&this._dropPopupPopupBehavior.onShow()},get_onHide:function(){return this._dropPopupPopupBehavior?this._dropPopupPopupBehavior.get_onHide():this._onHideJson},set_onHide:function(b){var a=this;if(a._dropPopupPopupBehavior)a._dropPopupPopupBehavior.set_onHide(b);else a._onHideJson=b;a.raisePropertyChanged("onHide")},get_onHideBehavior:function(){return this._dropPopupPopupBehavior?this._dropPopupPopupBehavior.get_onHideBehavior():a},onHide:function(){this._dropPopupPopupBehavior&&this._dropPopupPopupBehavior.onHide()},get_dropDownControl:function(){return this._dropDownControl},set_dropDownControl:function(a){if(this._dropDownControl!=a){this._dropDownControl=a;this.raisePropertyChanged("dropDownControl")}},get_highlightBorderColor:function(){return this._highlightBorderColor},set_highlightBorderColor:function(a){if(this._highlightBorderColor!=a){this._highlightBorderColor=a;this.raisePropertyChanged("highlightBorderColor")}},get_highlightBackgroundColor:function(){return this._highlightBackgroundColor},set_highlightBackgroundColor:function(b){var a=this;if(a._highlightBackgroundColor!=b){a._highlightBackgroundColor=b;if(a.get_isInitialized()&&a._isOpen)a._dropWrapper.style.backgroundColor=b;a.raisePropertyChanged("highlightBackgroundColor")}},get_dropArrowBackgroundColor:function(){return this._dropArrowBackgroundColor},set_dropArrowBackgroundColor:function(b){var a=this;if(a._dropArrowBackgroundColor!=b){a._dropArrowBackgroundColor=b;if(a.get_isInitialized())a._dropArrow.style.backgroundColor=b;a.raisePropertyChanged("dropArrowBackgroundColor")}},get_dropArrowImageUrl:function(){return this._dropArrowImageUrl},set_dropArrowImageUrl:function(b){var a=this;if(a._dropArrowImageUrl!=b){a._dropArrowImageUrl=b;if(a.get_isInitialized()){if(a._dropArrow.className){a._dropArrow.className="";a._dropArrowWrapper.style.display="block"}a._dropArrowImage.src=b}a.raisePropertyChanged("dropArrowImageUrl")}},get_dropArrowWidth:function(){return this._dropArrowWidth},set_dropArrowWidth:function(b){var a=this;if(a._dropArrowWidth!=b){a._dropArrowWidth=b;if(a.get_isInitialized())a._dropArrow.style.width=b;a.raisePropertyChanged("dropArrowWidth")}},get_isOver:function(){return this._isOver},get_isOpen:function(){return this._isOpen},add_showing:function(a){this.get_events().addHandler(d,a)},remove_showing:function(a){this.get_events().removeHandler(d,a)},raiseShowing:function(b){var a=this.get_events().getHandler(d);a&&a(this,b)},add_shown:function(a){this.get_events().addHandler(e,a)},remove_shown:function(a){this.get_events().removeHandler(e,a)},raiseShown:function(b){var a=this.get_events().getHandler(e);a&&a(this,b)},add_popup:function(a){this.get_events().addHandler(f,a)},remove_popup:function(a){this.get_events().removeHandler(f,a)},raisePopup:function(b){var a=this.get_events().getHandler(f);a&&a(this,b)},add_hiding:function(a){this.get_events().addHandler(g,a)},remove_hiding:function(a){this.get_events().removeHandler(g,a)},raiseHiding:function(b){var a=this.get_events().getHandler(g);a&&a(this,b)},add_hidden:function(a){this.get_events().addHandler(h,a)},remove_hidden:function(a){this.get_events().removeHandler(h,a)},raiseHidden:function(b){var a=this.get_events().getHandler(h);a&&a(this,b)},add_hoverOver:function(a){this.get_events().addHandler(i,a)},remove_hoverOver:function(a){this.get_events().removeHandler(i,a)},raiseHoverOver:function(b){var a=this.get_events().getHandler(i);a&&a(this,b)},add_hoverOut:function(a){this.get_events().addHandler(j,a)},remove_hoverOut:function(a){this.get_events().removeHandler(j,a)},raiseHoverOut:function(b){var a=this.get_events().getHandler(j);a&&a(this,b)}};Sys.Extended.UI.DropDownBehavior.registerClass("Sys.Extended.UI.DropDownBehavior",Sys.Extended.UI.DynamicPopulateBehaviorBase);Sys.registerComponent(Sys.Extended.UI.DropDownBehavior,{name:"dropDown"})}if(window.Sys&&Sys.loader)Sys.loader.registerScript(b,["ExtendedDynamicPopulate","ExtendedAnimationBehavior","ExtendedPopup","ExtendedHover"],a);else a()})();