// CytoColorPicker v0.5 // By MacKinley Smith (function($){ var defaults = { format:'hsla', // hsla, hex, rgba events:{ change:function(color){} }, widget:{ label:{ css:{ display:'block', font:"<%=Cytoplasm.vars('fonts.sizes.small')+' '+Cytoplasm.vars('fonts.faces.light')%>", "margin-bottom":10 }, element:false, text:false }, previewer:{ css:{ width:'100%', height:'100%', "border-top-left-radius":10, "border-bottom-left-radius":10 }, element:null, wrapper:{ css:{ display:'inline-block', "border-top-left-radius":10, "border-bottom-left-radius":10, background:"url(/assets/cytoplasm/transparent_bg.jpg)", "box-shadow":"0px 0px 10px rgba(0,0,0,0.5)" } } }, slider_table:{ attrs:{ hue:{ max:359 }, saturation:{ max:1, step:0.01 }, lightness:{ max:1, step:0.01 }, alpha:{ max:1, step:0.01 } }, css:{ display:'inline-block', 'vertical-align':'top' }, cytoTable:{ widget:{ table:{ css:{ "margin-bottom":0 } } } }, element:null, sliders:{ elements:[], settings:{ animate:true, min:0, slide:function(e,ui){ $(this).parent().parent().find("span.num").html($(this).slider("value")); methods.update.apply($(this).parents(".cytoColorPicker-wrapper").find('.cytoColorPicker')); }, change:function(e,ui){ $(this).parent().parent().find("span.num").html($(this).slider("value")); methods.update.apply($(this).parents(".cytoColorPicker-wrapper").find('.cytoColorPicker')); } } } }, wrapper:{ css:{}, element:null } }, default_value:"hlsa(0,0%,50%,0)" }; var attrs = ['hue','saturation','lightness','alpha']; var methods = { init:function(options){ return this.each(function(){ var $this = $(this); // Instantiate settings var settings = $.extend(true,{},defaults,options); $this.data('cytoColorPicker',settings); if ($this.data('label')!=null) settings.widget.label.text = $this.data('label')+":"; // Generate widget $this.addClass('cytoColorPicker').css({display:'none'}); settings.widget.wrapper.element = $this.wrap("
").parent().css(settings.widget.wrapper.css); settings.widget.previewer.wrapper.element = $('
').addClass('cytoColorPicker-previewer-wrapper').css(settings.widget.previewer.wrapper.css).appendTo(settings.widget.wrapper.element); settings.widget.previewer.element = $('
').addClass('cytoColorPicker-previewer').css(settings.widget.previewer.css).appendTo(settings.widget.previewer.wrapper.element).click(function(e){ }); if (settings.widget.label.text) settings.widget.label.element = $('