/** * jQuery EasyUI 1.2.5 * * Licensed under the GPL terms * To use it on other terms please contact us * * Copyright(c) 2009-2011 stworthy [ stworthy@gmail.com ] * */ (function($){ function _1(_2){ var _3=$.data(_2,"splitbutton").options; var _4=$(_2); _4.removeClass("s-btn-active s-btn-plain-active"); _4.linkbutton($.extend({},_3,{text:_3.text+" "})); if(_3.menu){ $(_3.menu).menu({onShow:function(){ _4.addClass((_3.plain==true)?"s-btn-plain-active":"s-btn-active"); },onHide:function(){ _4.removeClass((_3.plain==true)?"s-btn-plain-active":"s-btn-active"); }}); } _5(_2,_3.disabled); }; function _5(_6,_7){ var _8=$.data(_6,"splitbutton").options; _8.disabled=_7; var _9=$(_6); var _a=_9.find(".s-btn-downarrow"); if(_7){ _9.linkbutton("disable"); _a.unbind(".splitbutton"); }else{ _9.linkbutton("enable"); _a.unbind(".splitbutton"); _a.bind("click.splitbutton",function(){ _b(); return false; }); var _c=null; _a.bind("mouseenter.splitbutton",function(){ _c=setTimeout(function(){ _b(); },_8.duration); return false; }).bind("mouseleave.splitbutton",function(){ if(_c){ clearTimeout(_c); } }); } function _b(){ if(!_8.menu){ return; } var _d=_9.offset().left; if(_d+$(_8.menu).outerWidth()+5>$(window).width()){ _d=$(window).width()-$(_8.menu).outerWidth()-5; } $("body>div.menu-top").menu("hide"); $(_8.menu).menu("show",{left:_d,top:_9.offset().top+_9.outerHeight()}); _9.blur(); }; }; $.fn.splitbutton=function(_e,_f){ if(typeof _e=="string"){ return $.fn.splitbutton.methods[_e](this,_f); } _e=_e||{}; return this.each(function(){ var _10=$.data(this,"splitbutton"); if(_10){ $.extend(_10.options,_e); }else{ $.data(this,"splitbutton",{options:$.extend({},$.fn.splitbutton.defaults,$.fn.splitbutton.parseOptions(this),_e)}); $(this).removeAttr("disabled"); } _1(this); }); }; $.fn.splitbutton.methods={options:function(jq){ return $.data(jq[0],"splitbutton").options; },enable:function(jq){ return jq.each(function(){ _5(this,false); }); },disable:function(jq){ return jq.each(function(){ _5(this,true); }); }}; $.fn.splitbutton.parseOptions=function(_11){ var t=$(_11); return $.extend({},$.fn.linkbutton.parseOptions(_11),{menu:t.attr("menu"),duration:t.attr("duration")}); }; $.fn.splitbutton.defaults=$.extend({},$.fn.linkbutton.defaults,{plain:true,menu:null,duration:100}); })(jQuery);