svgedit/editor/jpicker/jpicker.js

1 line
30 KiB
JavaScript

(function(e,a){var d=function(h,q){var n=this,l=e("#"+h),p=e("#"+h+"_Arrow"),o=function(r){k(r);e(document).bind("mousemove",j).bind("mouseup",m);r.stopPropagation();r.preventDefault();return false;},j=function(r){k(r);r.stopPropagation();r.preventDefault();return false;},m=function(r){e(document).unbind("mouseup",m).unbind("mousemove",j);r.stopPropagation();r.preventDefault();return false;},k=function(v){var z=l.offset(),r=v.pageX-z.left-parseInt(l.css("border-left-width")),A=v.pageY-z.top-parseInt(l.css("border-top-width")),u=l.w,s=l.h,w,t;if(r<0){r=0;}else{if(r>u){r=u;}}if(A<0){A=0;}else{if(A>s){A=s;}}w=Math.floor(r/u*n.mxX);t=Math.floor(A/s*n.mxY);n.x=w;n.y=t;if(n.mxX==n.mnX){r=0;}if(n.mxY==n.mnY){A=0;}n.setArrowPosition(r,A);e.isFunction(n.valuesChanged)&&n.valuesChanged(n);};e.extend(true,n,{settings:q,x:0,y:0,mnX:0,mxX:0,mnY:100,mxY:100,valuesChanged:e.isFunction(arguments[2])&&arguments[2]||null,setPositioningVariables:function(s){var r=n.settings.map;l.w=r&&r.width||l.width();l.h=r&&r.height||l.height();n.MinX=0;n.MinY=0;n.MaxX=l.w;n.MaxY=l.h;},setArrowPositionFromValues:function(u){n.setPositioningVariables();var z=0,w=0,v=n.mnX,s=n.mxX,t=n.mnY,r=n.mxY,B=n.x,A=n.y;if(v!=s){if(B==v){z=0;}else{if(B==s){z=l.w;}else{if(v<1){s+=Math.abs(v)+1;}if(B<1){B+=1;}z=B/s*l.w;if(parseInt(z)==(s-1)){z=s;}else{z=parseInt(z);}if(v<1){z-=Math.abs(v)-1;}}}}if(t!=r){if(A==t){w=0;}else{if(A==r){w=l.h;}else{if(t<1){r+=Math.abs(t)+1;}if(A<1){A+=1;}w=A/r*l.h;if(parseInt(w)==(r-1)){w=r;}else{w=parseInt(w);}if(t<1){w-=Math.abs(t)-1;}}}}n.setArrowPosition(z,w);},setArrowPosition:function(r,w){var v=l.w,t=l.h,u=p.w,s=p.h;if(r<0){r=0;}else{if(r>v){r=v;}}if(w<0){w=0;}else{if(w>t){w=t;}}if(u>v){r=(v>>1)-(u>>1);}else{r-=u>>1;}if(s>t){w=(t>>1)-(s>>1);}else{w-=s>>1;}p.css({left:r+"px",top:w+"px"});},destroy:function(){e(document).unbind("mouseup",m).unbind("mousemove",j);l.unbind("mousedown",o);l=null;p=null;n.valuesChanged=null;}});p.src=n.settings.arrow&&n.settings.arrow.image;p.w=n.settings.arrow&&n.settings.arrow.width||p.width();p.h=n.settings.arrow&&n.settings.arrow.height||p.height();n.setPositioningVariables();l.bind("mousedown",o);n.setArrowPositionFromValues();e.isFunction(n.valuesChanged)&&n.valuesChanged(n);},b=function(t){var m=this,y=function(A){if(A.target.value==""){return;}s(A);m.setValuesFromHsv();e.isFunction(m.valuesChanged)&&m.valuesChanged(m);},r=function(A){if(A.target.value==""){return;}p(A);m.setValuesFromRgb();e.isFunction(m.valuesChanged)&&m.valuesChanged(m);},q=function(A){if(A.target.value==""){return;}l(A);w.a=A.target.value;e.isFunction(m.valuesChanged)&&m.valuesChanged(m);},v=function(A){if(A.target.value==""){m.setValuesFromRgb();}},k=function(A){if(A.target.value==""){m.setValuesFromHsv();}},n=function(A){if(A.target.value==""){u.alpha.val(100);}},z=function(A){if(A.target.value==""){return;}x(A);m.setValuesFromHex();e.isFunction(m.valuesChanged)&&m.valuesChanged(m);},j=function(A){if(A.target.value==""){m.setValuesFromHsv();}},p=function(A){if(!o(A)){return A;}u.red.val(h(u.red.val(),0,255));u.green.val(h(u.green.val(),0,255));u.blue.val(h(u.blue.val(),0,255));},l=function(A){if(!o(A)){return A;}u.alpha.val(h(u.alpha.val(),0,100));},s=function(A){if(!o(A)){return A;}u.hue.val(h(u.hue.val(),0,360));u.saturation.val(h(u.saturation.val(),0,100));u.value.val(h(u.value.val(),0,100));},x=function(A){if(!o(A)){return A;}u.hex.val(u.hex.val().replace(/[^a-fA-F0-9]/g,"0").toLowerCase().substring(0,6));},o=function(A){switch(A.keyCode){case 9:case 16:case 29:case 37:case 38:case 40:return false;case"c".charCodeAt():case"v".charCodeAt():if(A.ctrlKey){return false;}}return true;},h=function(C,B,A){if(C==""||isNaN(C)){return B;}C=parseInt(C);if(C>A){return A;}if(C<B){return B;}return C;};e.extend(true,m,{color:new f(),fields:{hue:e("#"+t+"_jPicker_Hue"),saturation:e("#"+t+"_jPicker_Saturation"),value:e("#"+t+"_jPicker_Brightness"),red:e("#"+t+"_jPicker_Red"),green:e("#"+t+"_jPicker_Green"),blue:e("#"+t+"_jPicker_Blue"),hex:e("#"+t+"_jPicker_Hex"),alpha:e("#"+t+"_jPicker_Alpha")},valuesChanged:e.isFunction(arguments[1])&&arguments[1]||null,bindedHexKeyUp:function(A){z(A);},setValuesFromRgb:function(){w.fromRgb(u.red.val(),u.green.val(),u.blue.val());u.hex.val(w.hex);u.hue.val(w.h);u.saturation.val(w.s);u.value.val(w.v);},setValuesFromHsv:function(){w.fromHsv(u.hue.val(),u.saturation.val(),u.value.val());u.hex.val(w.hex);u.red.val(w.r);u.green.val(w.g);u.blue.val(w.b);},setValuesFromHex:function(){w.fromHex(u.hex.val());u.red.val(w.r);u.green.val(w.g);u.blue.val(w.b);u.hue.val(w.h);u.saturation.val(w.s);u.value.val(w.v);},setAlphaFromValue:function(){w.a=u.alpha.val();},destroy:function(){u.hue.add(u.saturation).add(u.value).unbind("keyup",events.hsvKeyUp).unbind("blur",v);u.red.add(u.green).add(u.blue).unbind("keyup",events.rgbKeyUp).unbind("blur",k);u.alpha.unbind("keyup",q).unbind("blur",n);u.hex.unbind("keyup",z);u=null;w=null;m.valuesChanged=null;}});var u=m.fields,w=m.color;u.hue.add(u.saturation).add(u.value).bind("keyup",y).bind("blur",v);u.red.add(u.green).add(u.blue).bind("keyup",r).bind("blur",k);u.alpha.bind("keyup",q).bind("blur",n);u.hex.bind("keyup",z).bind("blur",j);if(u.hex.val()!=""){w.fromHex(u.hex.val());m.setValuesFromHex();}};e.jPicker={List:[],getListElementById:function(j){var h=e.jPicker.List;for(i=0;i<h.length;i++){if(h[i].id==j){return h[i];}}return null;},Color:function(j){var h=this;e.extend(true,h,{r:0,g:0,b:0,h:0,s:0,v:0,a:100,hex:"",fromRgb:function(m,l,k){var o=this;o.r=m;o.g=l;o.b=k;var n=g.rgbToHsv(o);o.h=n.h;o.s=n.s;o.v=n.v;o.hex=g.rgbToHex(o);},fromHsv:function(m,l,k){var o=this;o.h=m;o.s=l;o.v=k;var n=g.hsvToRgb(o);o.r=n.r;o.g=n.g;o.b=n.b;o.hex=g.rgbToHex(n);},fromHex:function(k){var n=this;n.hex=k;var m=g.hexToRgb(k);n.r=m.r;n.g=m.g;n.b=m.b;var l=g.rgbToHsv(m);n.h=l.h;n.s=l.s;n.v=l.v;n.hex=g.rgbToHex(m);}});if(j){if(j.hex){h.fromHex(j.hex);}else{if(!isNaN(j.r)){h.fromRgb(j.r,j.g,j.b);}else{if(!isNaN(j.h)){h.fromHsv(j.h,j.s,j.v);}}}if(!isNaN(j.a)){h.a=j.a;}}},ColorMethods:{hexToRgb:function(l){l=this.validateHex(l);var k="00",j="00",h="00";if(l.length==6){k=l.substring(0,2);j=l.substring(2,4);h=l.substring(4,6);}else{if(l.length>4){k=l.substring(4,l.length);l=l.substring(0,4);}if(l.length>2){j=l.substring(2,l.length);l=l.substring(0,2);}if(l.length>0){h=l.substring(0,l.length);}}return{r:this.hexToInt(k),g:this.hexToInt(j),b:this.hexToInt(h)};},validateHex:function(h){h=h.toLowerCase().replace(/[^a-f0-9]/g,"0");if(h.length>6){h=h.substring(0,6);}return h;},rgbToHex:function(h){return this.intToHex(h.r)+this.intToHex(h.g)+this.intToHex(h.b);},intToHex:function(j){var h=parseInt(j).toString(16);if(h.length==1){h=("0"+h);}return h.toLowerCase();},hexToInt:function(h){return parseInt(h,16);},rgbToHsv:function(l){var o=l.r/255,n=l.g/255,j=l.b/255,k={h:0,s:0,v:0},m=0,h=0,p;if(o>=n&&o>=j){h=o;m=n>j?j:n;}else{if(n>=j&&n>=o){h=n;m=o>j?j:o;}else{h=j;m=n>o?o:n;}}k.v=h;k.s=h?(h-m)/h:0;if(!k.s){k.h=0;}else{p=h-m;if(o==h){k.h=(n-j)/p;}else{if(n==h){k.h=2+(j-o)/p;}else{k.h=4+(o-n)/p;}}k.h=parseInt(k.h*60);if(k.h<0){k.h+=360;}}k.s=parseInt(k.s*100);k.v=parseInt(k.v*100);return k;},hsvToRgb:function(n){var r={r:0,g:0,b:0},m=n.h,x=n.s,u=n.v;if(x==0){if(u==0){r.r=r.g=r.b=0;}else{r.r=r.g=r.b=parseInt(u*255/100);}}else{if(m==360){m=0;}m/=60;x=x/100;u=u/100;var l=parseInt(m),o=m-l,k=u*(1-x),j=u*(1-(x*o)),w=u*(1-(x*(1-o)));switch(l){case 0:r.r=u;r.g=w;r.b=k;break;case 1:r.r=j;r.g=u;r.b=k;break;case 2:r.r=k;r.g=u;r.b=w;break;case 3:r.r=k;r.g=j;r.b=u;break;case 4:r.r=w;r.g=k;r.b=u;break;case 5:r.r=u;r.g=k;r.b=j;break;}r.r=parseInt(r.r*255);r.g=parseInt(r.g*255);r.b=parseInt(r.b*255);}return r;}}};var f=e.jPicker.Color,c=e.jPicker.List,g=e.jPicker.ColorMethods;e.fn.jPicker=function(j){var h=arguments;return this.each(function(){var w=e(this),X=w.attr("id"),x=e.extend(true,{},e.fn.jPicker.defaults,j);if(!X){alert("Container element must have an id attribute to maintain unique id strings for sub-elements.");return;}if(w.get(0).nodeName.toLowerCase()=="input"){e.extend(true,x,{window:{bindToInput:true,expandable:true,input:w}});if(g.validateHex(w.val())){x.color.active=new f({hex:w.val(),a:x.color.active.a});x.color.current=new f({hex:w.val(),a:x.color.current.a});}}if(x.window.expandable){w.after('<span id="'+X+'_jPicker_Picker" class="jPicker_Picker"><span id="'+X+'_jPicker_Color" class="jPicker_Color">&nbsp;</span><span id="'+X+'_jPicker_Icon" class="jPicker_Icon" title="Click To Open Color Picker">&nbsp;</span><span id="'+X+'_jPicker_Container" class="jPicker_Container">&nbsp;</span></span>');}else{x.window.liveUpdate=false;}var T=parseFloat(navigator.appVersion.split("MSIE")[1])<7&&document.body.filters,av=null,au=null,at=null,R=null,Q=null,P=null,O=null,aA=null,S=null,ar=null,I=null,H=null,U=null,aa=null,ax=null,ai=null,ak=null,am=null,J=null,F=null,Y=null,K=null,aw=null,N=null,M=null,aq=null,ao=null,z=null,l=null,an=null,ab=null,ag=null,n=null,B=null,u=null,al=function(aC){L.active=aw.color;var aD=L.active,aE=p.clientPath,aB=function(aF){ac(aF,100);aF.css({backgroundColor:"",backgroundImage:"none",filter:""});};aB(av);aB(au);aB(R);aB(Q);aB(P);aB(O);aa.add(ax).add(ai).add(ak).add(am).add(J).removeAttr("checked");switch(aC){case"h":aa.attr("checked",true);av.css({backgroundColor:"#"+aD.hex});au.css({backgroundColor:"transparent"});t(au,aE+"map-hue.png");ac(au,100);t(O,aE+"bar-hue.png");F.mxX=100;F.mxY=100;Y.mxY=360;break;case"s":ax.attr("checked",true);t(av,aE+"map-saturation.png");t(au,aE+"map-saturation-overlay.png");ac(au,0);y(P,aD.hex);t(O,aE+"bar-saturation.png");F.mxX=360;F.mxY=100;Y.mxY=100;break;case"v":ai.attr("checked",true);y(av,"000");t(au,aE+"map-brightness.png");P.css({backgroundColor:"#"+aD.hex});t(O,aE+"bar-brightness.png");F.mxX=360;F.mxY=100;Y.mxY=100;break;case"r":ak.attr("checked",true);t(au,aE+"map-red-max.png");t(av,aE+"map-red-min.png");t(O,aE+"bar-red-tl.png");t(P,aE+"bar-red-tr.png");t(Q,aE+"bar-red-br.png");t(R,aE+"bar-red-bl.png");break;case"g":am.attr("checked",true);t(au,aE+"map-green-max.png");t(av,aE+"map-green-min.png");t(O,aE+"bar-green-tl.png");t(P,aE+"bar-green-tr.png");t(Q,aE+"bar-green-br.png");t(R,aE+"bar-green-bl.png");break;case"b":J.attr("checked",true);t(au,aE+"map-blue-max.png");t(av,aE+"map-blue-min.png");t(O,aE+"bar-blue-tl.png");t(P,aE+"bar-blue-tr.png");t(Q,aE+"bar-blue-br.png");t(R,aE+"bar-blue-bl.png");break;default:throw ("Invalid Mode");break;}switch(aC){case"h":case"s":case"v":F.mnX=1;F.mnY=1;Y.mnY=1;break;case"r":case"g":case"b":F.mnX=0;F.mnY=0;Y.mnY=0;F.mxX=255;F.mxY=255;Y.mxY=255;break;}L.mode=aC;v();ap();Z();if(ah.expandable&&ah.liveUpdate){n.css({backgroundColor:"#"+aD.hex});if(ah.bindToInput){ah.input.val(aD.hex).css({backgroundColor:"#"+aD.hex,color:aD.v>75?"#000000":"#ffffff"});}}e.isFunction(w.liveCallback)&&w.liveCallback(aD);},m=function(){v();af();L.active=aw.color;var aB=L.active;if(ah.expandable&&ah.liveUpdate){n.css({backgroundColor:"#"+aB.hex});if(ah.bindToInput){ah.input.val(aw.fields.hex.val()).css({backgroundColor:"#"+aB.hex,color:aB.v>75?"#000000":"#ffffff"});}}e.isFunction(w.liveCallback)&&w.liveCallback(aB);},A=function(){if(!aw||!F||!Y||!K){return;}L.active=aw.color;var aB=aw.fields,aC=L.active;switch(L.mode){case"h":aB.saturation.val(F.x);aB.value.val(100-F.y);break;case"s":aB.hue.val(F.x);aB.value.val(100-F.y);break;case"v":aB.hue.val(F.x);aB.saturation.val(100-F.y);break;case"r":aB.blue.val(F.x);aB.green.val(255-F.y);break;case"g":aB.blue.val(F.x);aB.red.val(255-F.y);break;case"b":aB.red.val(F.x);aB.green.val(255-F.y);break;}switch(L.mode){case"h":case"s":case"v":aw.setValuesFromHsv();break;case"r":case"g":case"b":aw.setValuesFromRgb();break;}af();if(ah.expandable&&ah.liveUpdate){n.css({backgroundColor:"#"+aC.hex});if(ah.bindToInput){ah.input.val(aC.hex).css({backgroundColor:"#"+aC.hex,color:aC.v>75?"#000000":"#ffffff"});}}e.isFunction(w.liveCallback)&&w.liveCallback(aC);},aj=function(){if(!aw||!F||!Y||!K){return;}L.active=aw.color;var aB=aw.fields,aC=L.active;switch(L.mode){case"h":aB.hue.val(360-Y.y);break;case"s":aB.saturation.val(100-Y.y);break;case"v":aB.value.val(100-Y.y);break;case"r":aB.red.val(255-Y.y);break;case"g":aB.green.val(255-Y.y);break;case"b":aB.blue.val(255-Y.y);break;}switch(L.mode){case"h":case"s":case"v":aw.setValuesFromHsv();break;case"r":case"g":case"b":aw.setValuesFromRgb();break;}af();if(ah.expandable&&ah.liveUpdate){n.css({backgroundColor:"#"+aC.hex});if(ah.bindToInput){ah.input.val(aC.hex).css({backgroundColor:"#"+aC.hex,color:aC.v>75?"#000000":"#ffffff"});}}e.isFunction(w.liveCallback)&&w.liveCallback(aC);},s=function(){if(!aw||!F||!Y||!K){return;}L.active=aw.color;var aB=aw.fields,aC=L.active;aB.alpha.val(K.x);aw.setAlphaFromValue();af();e.isFunction(w.liveCallback)&&w.liveCallback(L.active);},v=function(){L.active=aw.color;var aE=0,aD=L.active;switch(w.settings.color.mode){case"h":aE=360-aD.h;break;case"s":aE=100-aD.s;break;case"v":aE=100-aD.v;break;case"r":aE=255-aD.r;break;case"g":aE=255-aD.g;break;case"b":aE=255-aD.b;break;}Y.y=aE;K.x=aD.a;Y.setArrowPositionFromValues();K.setArrowPositionFromValues();var aC=0,aB=0;switch(w.settings.color.mode){case"h":aC=aD.s;aB=100-aD.v;break;case"s":aC=aD.h;aB=100-aD.v;break;case"v":aC=aD.h;aB=100-aD.s;break;case"r":aC=aD.b;aB=256-aD.g;break;case"g":aC=aD.b;aB=256-aD.r;break;case"b":aC=aD.r;aB=256-aD.g;break;}F.x=aC;F.y=aB;F.setArrowPositionFromValues();},af=function(){az();ap();Z();ay();},az=function(){try{z.css({backgroundColor:"#"+aw.color.hex});}catch(aB){}},ap=function(){if(!L||!aw){return;}L.active=aw.color;var aB=L.active;switch(L.mode){case"h":y(av,new f({h:aB.h,s:100,v:100}).hex);break;case"s":ac(au,100-aB.s);break;case"v":ac(au,aB.v);break;case"r":ac(au,aB.r/256*100);break;case"g":ac(au,aB.g/256*100);break;case"b":ac(au,aB.b/256*100);break;}ac(at,100-aB.a);},Z=function(){if(!L||!aw){return;}L.active=aw.color;var aF=L.active,aI=L.mode,aK=aw.fields;switch(aI){case"h":break;case"s":var aG=new f({h:aF.h,s:100,v:aF.v});y(P,aG.hex);break;case"v":var aJ=new f({h:aF.h,s:aF.s,v:100});y(P,aJ.hex);break;case"r":case"g":case"b":var aH=0,aL=0;if(aI=="r"){aH=aK.blue.val();aL=aK.green.val();}else{if(aI=="g"){aH=aK.blue.val();aL=aK.red.val();}else{if(aI=="b"){aH=aK.red.val();aL=aK.green.val();}}}var aB=aH/256*100,aE=aL/256*100,aD=(256-aH)/256*100,aC=(256-aL)/256*100;ac(O,aE>aD?aD:aE);ac(P,aE>aB?aB:aE);ac(Q,aC>aB?aB:aC);ac(R,aC>aD?aD:aC);break;}},ay=function(){y(I,aw.color.hex);},y=function(aB,aD){try{aB.css({backgroundColor:"#"+aD});}catch(aC){}},t=function(aB,aC){if(aC.indexOf("png")&&this.isLessThanIE7){aB.attr("pngSrc",aC);aB.css({backgroundImage:"none",filter:"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+aC+"')"});}else{aB.css({backgroundImage:"url("+aC+")"});}},ac=function(aC,aB){if(aB==0){aC.css({display:"none"});return;}else{if(aB<100){aC.css({display:""});if(this.isLessThanIE7){var aD=aC.attr("pngSrc");if(aD!=null&&aD.indexOf("map-hue")==-1){aC.css({filter:"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+aD+"') progid:DXImageTransform.Microsoft.Alpha(opacity="+aB+")"});}}else{aC.css({opacity:aB/100});}}else{if(aB==100){aC.css({display:""});if(this.isLessThanIE7){var aD=aC.attr("pngSrc");if(aD!=null&&aD.indexOf("map-hue")==-1){aC.css({filter:"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+aD+"')"});}}else{aC.css({opacity:""});}}}}},D=function(){aw.fields.hex.val(L.current.hex);aw.fields.alpha.val(L.current.a);aw.setValuesFromHex();aw.setAlphaFromValue();e.isFunction(aw.valuesChanged)&&aw.valuesChanged(aw);},C=function(aB){al(aB.target.value);},ad=function(){D();},r=function(){D();ah.expandable&&w.hide();e.isFunction(w.cancelCallback)&&w.cancelCallback();},W=function(){var aB=L.active;L.current=new f({hex:aB.hex});L.current.a=aB.a;l.css({backgroundColor:"#"+aB.hex});if(ah.expandable){n.css({backgroundColor:"#"+aB.hex});if(ah.bindToInput){ah.input.val(aB.hex).css({backgroundColor:"#"+aB.hex,color:aB.v>75?"#000000":"#ffffff"});}}e.isFunction(w.commitCallback)&&w.commitCallback(aB);},o=function(){W();ah.expandable&&w.hide();},ae=function(){w.show();},V=function(aD){var aB=ah.element,aC=ah.page;N=parseInt(U.css("left"));M=parseInt(U.css("top"));aq=aD.pageX;ao=aD.pageY;e(document).bind("mousemove",k).bind("mouseup",q);aD.stopPropagation();aD.preventDefault();return false;},k=function(aB){U.css({left:N-(aq-aB.pageX)+"px",top:M-(ao-aB.pageY)+"px"});aB.stopPropagation();aB.preventDefault();return false;},q=function(aB){e(document).unbind("mousemove",k).unbind("mouseup",q);aB.stopPropagation();aB.preventDefault();return false;},E=function(aB){aw.fields.hex.val(w.settings.window.input.val());aw.bindedHexKeyUp(aB);},G=function(aB){aw.fields.hex.val(L.quickList[aB.data.i].hex);aw.fields.alpha.val(L.quickList[aB.data.i].a);aw.setValuesFromHex();aw.setAlphaFromValue();e.isFunction(aw.valuesChanged)&&aw.valuesChanged(aw);};e.extend(true,w,{id:w.attr("id"),settings:x,color:null,icon:null,commitCallback:e.isFunction(h[1])&&h[1]||null,liveCallback:e.isFunction(h[2])&&h[2]||null,cancelCallback:e.isFunction(h[3])&&h[3]||null,show:function(){if(document.all){var aB=false;for(i=0;i<c.length;i++){if(aB){c[i].color.add(c[i].icon).css({display:"none"});}if(c[i].id==w.id){aB=true;}}}L.current=new f({hex:L.active.hex});l.css({backgroundColor:"#"+L.active.hex});U.css({display:"block"});F.setPositioningVariables();Y.setPositioningVariables();v();},hide:function(){if(document.all){var aB=false;for(i=0;i<c.length;i++){if(aB){c[i].color.add(c[i].icon).css({display:"block"});}if(c[i].id==w.id){aB=true;}}}U.css({display:"none"});},destroy:function(){if(ah.expandable){B=e("#"+w.id+"_jPicker_Icon").unbind("click",ae);}if(ah.bindToInput){ah.input.unbind("keyup",E).unbind("change",E);}aa.add(ax).add(ai).add(ak).add(am).add(J).unbind("click",C);l.unbind("click",ad);ab.unbind("click",r);an.unbind("click",o);if(ah.expandable){u.unbind("mousedown",V);}if(L.quickList&&L.quickList.length>0){for(i=0;i<L.quickList.length;i++){e("#"+w.id+"_jPicker_Grid_"+i,U).unbind("click",G);}}aa=null;ax=null;ai=null;ak=null;am=null;J=null;av=null;au=null;at=null;R=null;Q=null;P=null;O=null;aA=null;S=null;ar=null;I=null;H=null;z=null;l=null;an=null;ab=null;ag=null;w.color=null;w.icon=null;F.destroy();F=null;Y.destroy();Y=null;K.destroy();K=null;aw.destroy();aw=null;w.commitCallback=null;w.cancelCallback=null;w.liveCallback=null;U.html("");for(i=0;i<c.length;i++){if(c[i].id==w.id){c.splice(i,1);}}}});var p=w.settings.images,ah=w.settings.window,L=w.settings.color;U=ah.expandable?e("#"+X+"_jPicker_Container"):w;if(ah.expandable){U.css({left:ah.position.x=="left"?"-526px":ah.position.x=="center"?"-259px":ah.position.x=="right"?"0px":ah.position.x=="screenCenter"?((e(document).width()>>1)-259)-e("#"+X+"_jPicker_Picker").offset().left+"px":ah.position.x,position:"absolute",top:ah.position.y=="top"?"-340px":ah.position.y=="center"?"-153px":ah.position.y=="bottom"?"25px":ah.position.y});}if((typeof(L.active)).toString().toLowerCase()=="string"){L.active=new f({hex:L.active.substring(1)});}if((typeof(L.current)).toString().toLowerCase()=="string"){L.current=new f({hex:L.current.substring(1)});}if(!L.alphaSupport){L.current.a=L.active.a=100;}U.html('<table class="jPicker_table"><tbody>'+(ah.expandable?'<tr><td id="'+w.id+'_jPicker_MoveBar" class="jPicker_MoveBar" colspan=6></td></tr>':"")+'<tr><td rowspan="8"><div id="'+w.id+'_jPicker_ColorMap" class="jPicker_ColorMap"><span id="'+w.id+'_jPicker_ColorMap_l1" class="jPicker_ColorMap_l1">&nbsp;</span><span id="'+w.id+'_jPicker_ColorMap_l2" class="jPicker_ColorMap_l2">&nbsp;</span><span id="'+w.id+'_jPicker_ColorMap_l3" class="jPicker_ColorMap_l3">&nbsp;</span><img id="'+w.id+'_jPicker_ColorMap_Arrow" src="'+p.clientPath+p.colorMap.arrow.file+'" class="jPicker_ColorMap_Arrow"/></div></td><td rowspan="8"><div id="'+w.id+'_jPicker_ColorBar" class="jPicker_ColorBar"><span id="'+w.id+'_jPicker_ColorBar_l1" class="jPicker_ColorBar_l1">&nbsp;</span><span id="'+w.id+'_jPicker_ColorBar_l2" class="jPicker_ColorBar_l2">&nbsp;</span><span id="'+w.id+'_jPicker_ColorBar_l3" class="jPicker_ColorBar_l3">&nbsp;</span><span id="'+w.id+'_jPicker_ColorBar_l4" class="jPicker_ColorBar_l4">&nbsp;</span><img id="'+w.id+'_jPicker_ColorBar_Arrow" src="'+p.clientPath+p.colorBar.arrow.file+'" class="jPicker_ColorBar_Arrow"/></div></td><td colspan="3" class="jPicker_Preview">new<div><span id="'+w.id+'_jPicker_Active" class="jPicker_Active" title="New Color - Press &ldquo;OK&rdquo; To Commit">&nbsp;</span><span id="'+w.id+'_jPicker_Current" class="jPicker_Current" title="Click To Revert To Original Color">&nbsp;</span></div>current</td><td rowspan="9" class="jPicker_OkCancel"><input type="button" id="'+w.id+'_jPicker_Ok" class="jPicker_Ok" value="OK" title="Commit To This Color Selection"/><input type="button" id="'+w.id+'_jPicker_Cancel" class="jPicker_Cancel" value="Cancel" title="Cancel And Revert To Original Color"/><hr/><div id="'+w.id+'_jPicker_Grid" class="jPicker_Grid">&nbsp;</div></td></tr><tr><td><input type="radio" id="'+w.id+'_jPicker_HueRadio" name="'+w.id+'_jPicker_Mode" value="h" title="Set To &ldquo;Hue&rdquo; Color Mode"/></td><td><label for="'+w.id+'_jPicker_HueRadio" title="Set To &ldquo;Hue&rdquo; Color Mode">H:</label></td><td><input type="text" class="jPicker_RadioText" id="'+w.id+'_jPicker_Hue" name="'+w.id+'_jPicker_Hue" value="'+L.active.h+'" title="Enter A &ldquo;Hue&rdquo; Value (0-360&deg;)"/> &deg;</td</tr><tr><td><input type="radio" id="'+w.id+'_jPicker_SaturationRadio" name="'+w.id+'_jPicker_Mode" value="s" title="Set To &ldquo;Saturation&rdquo; Color Mode"/></td><td><label for="'+w.id+'_jPicker_SaturationRadio" title="Set To &ldquo;Saturation&rdquo; Color Mode">S:</label></td><td><input type="text" class="jPicker_RadioText" id="'+w.id+'_jPicker_Saturation" name="'+w.id+'_jPicker_Saturation" value="'+L.active.s+'" title="Enter A &ldquo;Saturation&rdquo; Value (0-100%)"/> %</td></tr><tr><td><input type="radio" id="'+w.id+'_jPicker_BrightnessRadio" name="'+w.id+'_jPicker_Mode" value="v" title="Set To &ldquo;Brightness&rdquo; Color Mode"/></td><td><label for="'+w.id+'_jPicker_BrightnessRadio" title="Set To &ldquo;Brightness&rdquo; Color Mode">B:</label></td><td><input type="text" class="jPicker_RadioText" id="'+w.id+'_jPicker_Brightness" name="'+w.id+'_jPicker_Brightness" value="'+L.active.v+'" title="Enter A &ldquo;Brightness&rdquo; Value (0-100%)"/> %</td></tr><tr><td colspan="3" class="jPicker_Spacer">&nbsp;</td></tr><tr><td><input type="radio" id="'+w.id+'_jPicker_RedRadio" name="'+w.id+'_jPicker_Mode" value="r" title="Set To &ldquo;Red&rdquo; Color Mode"/></td><td><label for="'+w.id+'_jPicker_RedRadio" title="Set To &ldquo;Red&rdquo; Color Mode">R:</label></td><td><input type="text" class="jPicker_RadioText" id="'+w.id+'_jPicker_Red" name="'+w.id+'_jPicker_Red" value="'+L.active.r+'" title="Enter A &ldquo;Red&rdquo; Value (0-255)"/></td></tr><tr><td><input type="radio" id="'+w.id+'_jPicker_GreenRadio" name="'+w.id+'_jPicker_Mode" value="g" title="Set To &ldquo;Green&rdquo; Color Mode"/></td><td><label for="'+w.id+'_jPicker_GreenRadio" title="Set To &ldquo;Green&rdquo; Color Mode">G:</label></td><td><input type="text" class="jPicker_RadioText" id="'+w.id+'_jPicker_Green" name="'+w.id+'_jPicker_Green" value="'+L.active.g+'" title="Enter A &ldquo;Green&rdquo; Value (0-255)"/></td></tr><tr><td><input type="radio" id="'+w.id+'_jPicker_BlueRadio" name="'+w.id+'_jPicker_Mode" value="b" title="Set To &ldquo;Blue&rdquo; Color Mode"/></td><td><label for="'+w.id+'_jPicker_BlueRadio" title="Set To &ldquo;Blue&rdquo; Color Mode">B:</label></td><td><input type="text" class="jPicker_RadioText" id="'+w.id+'_jPicker_Blue" name="'+w.id+'_jPicker_Blue" value="'+L.active.b+'" title="Enter A &ldquo;Blue&rdquo; Value (0-255)"/></td></tr><tr><td><div id="'+w.id+'_jPicker_EnableAlpha" class="jPicker_EnableAlpha"><input type="checkbox" id="'+w.id+'_jPicker_AlphaCheckbox" name="'+w.id+'_jPicker_AlphaCheckbox" title="Enable Alpha (Transparency) Support"/><label for="'+w.id+'_jPicker_AlphaCheckbox" title="Enabled Alpha (Transparency) Support">Enable Alpha (Transparency) Support</label></div><div id="'+w.id+'_jPicker_AlphaBar" class="jPicker_AlphaBar"><span id="'+w.id+'_jPicker_AlphaBar_l1" class="jPicker_AlphaBar_l1">&nbsp;</span><span id="'+w.id+'_jPicker_AlphaBar_l2" class="jPicker_AlphaBar_l2">&nbsp;</span><img id="'+w.id+'_jPicker_AlphaBar_Arrow" src="'+p.clientPath+p.alphaBar.arrow.file+'" class="jPicker_AlphaBar_Arrow"/></div></td><td colspan="2" class="jPicker_OpacityCol"><label for="'+w.id+'_jPicker_Alpha" title="Enter An &ldquo;Alpha&rdquo; Value (0-100%)">A:</label><input type="text" class="jPicker_RadioText" id="'+w.id+'_jPicker_Alpha" name="'+w.id+'_jPicker_Alpha" value="'+L.active.a+'" title="Enter An &ldquo;Alpha&rdquo; Value (0-100%)"/><span>%</span></td><td colspan="3" class="jPicker_HexCol"><label for="'+w.id+'_jPicker_Hex" title="Enter A &ldquo;Hex&rdquo; Color Value (#000000-#ffffff)">#:</label><input type="text" class="jPicker_Hex" id="'+w.id+'_jPicker_Hex" name="'+w.id+'_jPicker_Hex" value="'+L.active.hex+'" title="Enter A &ldquo;Hex&rdquo; Color Value (#000000-#ffffff)"/></td><td colspan="2" class="jPicker_EnterHex"></td><td>&nbsp;</td></tr></tbody></table>');aa=e("#"+w.id+"_jPicker_HueRadio",U);ax=e("#"+w.id+"_jPicker_SaturationRadio",U);ai=e("#"+w.id+"_jPicker_BrightnessRadio",U);ak=e("#"+w.id+"_jPicker_RedRadio",U);am=e("#"+w.id+"_jPicker_GreenRadio",U);J=e("#"+w.id+"_jPicker_BlueRadio",U);av=e("#"+w.id+"_jPicker_ColorMap_l1",U);au=e("#"+w.id+"_jPicker_ColorMap_l2",U);at=e("#"+w.id+"_jPicker_ColorMap_l3",U);R=e("#"+w.id+"_jPicker_ColorBar_l1",U);Q=e("#"+w.id+"_jPicker_ColorBar_l2",U);P=e("#"+w.id+"_jPicker_ColorBar_l3",U);O=e("#"+w.id+"_jPicker_ColorBar_l4",U);I=e("#"+w.id+"_jPicker_AlphaBar_l1",U);H=e("#"+w.id+"_jPicker_AlphaBar_l2",U);aA=e("#"+w.id+"_jPicker_EnableAlpha",U);S=e("#"+w.id+"_jPicker_AlphaCheckbox",U);ar=e("#"+w.id+"_jPicker_AlphaBar",U);z=e("#"+w.id+"_jPicker_Active",U).css({backgroundColor:"#"+L.active.hex});l=e("#"+w.id+"_jPicker_Current",U).css({backgroundColor:"#"+L.current.hex});an=e("#"+w.id+"_jPicker_Ok",U);ab=e("#"+w.id+"_jPicker_Cancel",U);ag=e("#"+w.id+"_jPicker_Grid",U);w.color=e("#"+w.id+"_jPicker_Color");w.icon=e("#"+w.id+"_jPicker_Icon");aw=new b(w.id,m);F=new d(w.id+"_jPicker_ColorMap",{map:{width:p.colorMap.width,height:p.colorMap.height},arrow:{image:p.clientPath+p.colorMap.arrow.file,width:p.colorMap.arrow.width,height:p.colorMap.arrow.height}},A);Y=new d(w.id+"_jPicker_ColorBar",{map:{width:p.colorBar.width,height:p.colorBar.height},arrow:{image:p.clientPath+p.colorBar.arrow.file,width:p.colorBar.arrow.width,height:p.colorBar.arrow.height}},aj);K=new d(w.id+"_jPicker_AlphaBar",{map:{width:p.alphaBar.width,height:p.alphaBar.height},arrow:{image:p.clientPath+p.alphaBar.arrow.file,width:p.alphaBar.arrow.width,height:p.alphaBar.arrow.height}},s);K.mnX=0;K.mxX=100;t(H,p.clientPath+"bar-opacity.png");t(at,p.clientPath+"map-opacity.png");if(L.alphaSupport){aA.hide();ar.show();e("td.jPicker_OpacityCol *",U).show();}else{S.bind("click",function(){aA.hide();ar.show();e("td.jPicker_OpacityCol *",U).show();});}if(ah.expandable){n=e("#"+w.id+"_jPicker_Color").css({backgroundColor:"#"+L.current.hex});B=e("#"+w.id+"_jPicker_Icon").css({backgroundImage:"url("+p.clientPath+p.picker.file+")"}).bind("click",ae);if(ah.bindToInput){ah.input.bind("keyup",E).bind("change",E);}}aa.add(ax).add(ai).add(ak).add(am).add(J).bind("click",C);l.bind("click",ad);ab.bind("click",r);an.bind("click",o);if(ah.expandable){u=e("#"+w.id+"_jPicker_MoveBar",U).bind("mousedown",V);}if(L.quickList&&L.quickList.length>0){ag.html("");for(i=0;i<L.quickList.length;i++){if((typeof(L.quickList[i])).toString().toLowerCase()=="string"){L.quickList[i]=new f({hex:L.quickList[i].substring(1)});}ag.append('<span id="'+w.id+"_jPicker_Grid_"+i+'" class="jPicker_QuickColor" title="#'+L.quickList[i].hex+'">&nbsp;</span>');e("#"+w.id+"_jPicker_Grid_"+i,U).css({backgroundColor:"#"+L.quickList[i].hex}).bind("click",{i:i},G);}}al(L.mode);aw.fields.hex.val(Y.hex);aw.setValuesFromHex();aw.setAlphaFromValue();v();af();if(!ah.expandable){w.show();}c.push(w);});};e.fn.jPicker.defaults={window:{position:{x:"screenCenter",y:"top"},expandable:false,liveUpdate:true},color:{mode:"h",current:new f({hex:"ffc000"}),active:new f({hex:"ffc000"}),alphaSupport:false,quickList:[new f({h:360,s:33,v:100}),new f({h:360,s:66,v:100}),new f({h:360,s:100,v:100}),new f({h:360,s:100,v:75}),new f({h:360,s:100,v:50}),new f({h:180,s:0,v:100}),new f({h:30,s:33,v:100}),new f({h:30,s:66,v:100}),new f({h:30,s:100,v:100}),new f({h:30,s:100,v:75}),new f({h:30,s:100,v:50}),new f({h:180,s:0,v:90}),new f({h:60,s:33,v:100}),new f({h:60,s:66,v:100}),new f({h:60,s:100,v:100}),new f({h:60,s:100,v:75}),new f({h:60,s:100,v:50}),new f({h:180,s:0,v:80}),new f({h:90,s:33,v:100}),new f({h:90,s:66,v:100}),new f({h:90,s:100,v:100}),new f({h:90,s:100,v:75}),new f({h:90,s:100,v:50}),new f({h:180,s:0,v:70}),new f({h:120,s:33,v:100}),new f({h:120,s:66,v:100}),new f({h:120,s:100,v:100}),new f({h:120,s:100,v:75}),new f({h:120,s:100,v:50}),new f({h:180,s:0,v:60}),new f({h:150,s:33,v:100}),new f({h:150,s:66,v:100}),new f({h:150,s:100,v:100}),new f({h:150,s:100,v:75}),new f({h:150,s:100,v:50}),new f({h:180,s:0,v:50}),new f({h:180,s:33,v:100}),new f({h:180,s:66,v:100}),new f({h:180,s:100,v:100}),new f({h:180,s:100,v:75}),new f({h:180,s:100,v:50}),new f({h:180,s:0,v:40}),new f({h:210,s:33,v:100}),new f({h:210,s:66,v:100}),new f({h:210,s:100,v:100}),new f({h:210,s:100,v:75}),new f({h:210,s:100,v:50}),new f({h:180,s:0,v:30}),new f({h:240,s:33,v:100}),new f({h:240,s:66,v:100}),new f({h:240,s:100,v:100}),new f({h:240,s:100,v:75}),new f({h:240,s:100,v:50}),new f({h:180,s:0,v:20}),new f({h:270,s:33,v:100}),new f({h:270,s:66,v:100}),new f({h:270,s:100,v:100}),new f({h:270,s:100,v:75}),new f({h:270,s:100,v:50}),new f({h:180,s:0,v:10}),new f({h:300,s:33,v:100}),new f({h:300,s:66,v:100}),new f({h:300,s:100,v:100}),new f({h:300,s:100,v:75}),new f({h:300,s:100,v:50}),new f({h:180,s:0,v:0}),new f({h:330,s:33,v:100}),new f({h:330,s:66,v:100}),new f({h:330,s:100,v:100}),new f({h:330,s:100,v:75}),new f({h:330,s:100,v:50})]},images:{clientPath:"/jPicker/images/",colorMap:{width:256,height:256,arrow:{file:"mappoint.gif",width:15,height:15}},colorBar:{width:20,height:256,arrow:{file:"rangearrows.gif",width:40,height:9}},alphaBar:{width:256,height:20,arrow:{file:"rangearrows2.gif",width:9,height:40}},picker:{file:"picker.gif",width:25,height:24}}};})(jQuery,"1.0.6");