/** * @fileOverview jQuery plugin, provides a simple dropdown button menu (split button). jQuery UI themes compatible. *
License MIT
*
Copyright 2012 Christos Pontikis http://pontikis.net
*
Project page http://pontikis.net/labs/jui_dropdown
*
Minified using Online YUI Compressor http://www.refresh-sf.com/yui/
* @version 1.0.2 (25 Jan 2013)
* @author Christos Pontikis http://pontikis.net
* @requires jquery (>=1.6), jquery-ui (>=1.8)
*/
"use strict";(function(c){var b="jui_dropdown";var a={init:function(d){var e=this;return this.each(function(){var j=e.data(b);if(typeof(j)=="undefined"){var k=e.jui_dropdown("getDefaults");j=c.extend({},k,d)}else{j=c.extend({},j,d)}e.data(b,j);e.unbind("onSelect").bind("onSelect",j.onSelect);e.removeClass().addClass(j.containerClass);var g=j.launcher_id;var h=j.launcher_container_id;var i=j.menu_id;var m=c("#"+g);var f=c("#"+h);var l=c("#"+i);f.removeClass(j.launcherContainerClass).addClass(j.launcherContainerClass);m.removeClass(j.launcherClass).addClass(j.launcherClass);l.removeClass(j.menuClass).addClass(j.menuClass);if(c.ui.version<"1.9.00"){l.menu().hide();l.off("click","li").on("click","li",function(){e.triggerHandler("onSelect",{index:parseInt(c(this).index("#"+i+" li"))+1,id:c(this).attr("id")})})}else{l.menu({select:function(n,o){e.triggerHandler("onSelect",{index:parseInt(o.item.index("#"+i+" li"))+1,id:o.item.attr("id")})}}).hide()}if(j.launcher_is_UI_button){m.button({text:j.launcherUIShowText,icons:{primary:j.launcherUIPrimaryIconClass,secondary:j.launcherUISecondaryIconClass}})}e.off("click","#"+g).on("click","#"+g,function(){if(!j.launcher_is_UI_button&&j.toggle_launcher){m.addClass(j.launcherSelectedClass)}l.show().position({my:j.my_position,at:j.at_position,of:f});c(document).one("click",function(){l.hide();if(!j.launcher_is_UI_button&&j.toggle_launcher){m.removeClass(j.launcherSelectedClass)}});return false})})},getDefaults:function(){return{launcherContainerClass:"launcherContainerClass",launcherClass:"launcherClass",launcherSelectedClass:"launcherSelectedClass ui-widget-header ui-corner-all",menuClass:"menuClass",launcher_is_UI_button:true,launcherUIShowText:true,launcherUIPrimaryIconClass:"",launcherUISecondaryIconClass:"ui-icon-triangle-1-s",my_position:"left top",at_position:"left bottom",toggle_launcher:false,onSelect:function(){}}},getOption:function(d){var e=this;return e.data(b)[d]},getAllOptions:function(){var d=this;return d.data(b)},setOption:function(d,g,f){var e=this;e.data(b)[d]=g;if(f){e.jui_dropdown("init")}},refresh:function(){var d=this;d.jui_dropdown()},destroy:function(){return c(this).each(function(){var d=c(this);d.removeData(b)})}};c.fn.jui_dropdown=function(e){if(this.size()!=1){var d="You must use this plugin ("+b+") with a unique element (at once)";this.html('ERROR: '+d+"");c.error(d)}if(a[e]){return a[e].apply(this,Array.prototype.slice.call(arguments,1))}else{if(typeof e==="object"||!e){return a.init.apply(this,arguments)}else{c.error("Method "+e+" does not exist on jQuery."+b)}}}})(jQuery);