676 lines
340 KiB
JavaScript
676 lines
340 KiB
JavaScript
|
(function(a){function n(f){if(typeof f.data==="string"){var c=f.handler,m=f.data.toLowerCase().split(" ");f.handler=function(p){if(!(this!==p.target&&(/textarea|select/i.test(p.target.nodeName)||p.target.type==="text"))){var b=p.type!=="keypress"&&a.hotkeys.specialKeys[p.which],d=String.fromCharCode(p.which).toLowerCase(),e="",l={};if(p.altKey&&b!=="alt")e+="alt+";if(p.ctrlKey&&b!=="ctrl")e+="ctrl+";if(p.metaKey&&!p.ctrlKey&&b!=="meta")e+="meta+";if(p.shiftKey&&b!=="shift")e+="shift+";if(b)l[e+b]=
|
||
|
true;else{l[e+d]=true;l[e+a.hotkeys.shiftNums[d]]=true;if(e==="shift+")l[a.hotkeys.shiftNums[d]]=true}b=0;for(d=m.length;b<d;b++)if(l[m[b]])return c.apply(this,arguments)}}}}a.hotkeys={version:"0.8",specialKeys:{8:"backspace",9:"tab",13:"return",16:"shift",17:"ctrl",18:"alt",19:"pause",20:"capslock",27:"esc",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down",45:"insert",46:"del",96:"0",97:"1",98:"2",99:"3",100:"4",101:"5",102:"6",103:"7",104:"8",105:"9",
|
||
|
106:"*",107:"+",109:"-",110:".",111:"/",112:"f1",113:"f2",114:"f3",115:"f4",116:"f5",117:"f6",118:"f7",119:"f8",120:"f9",121:"f10",122:"f11",123:"f12",144:"numlock",145:"scroll",191:"/",224:"meta",219:"[",221:"]"},shiftNums:{"`":"~","1":"!","2":"@","3":"#","4":"$","5":"%","6":"^","7":"&","8":"*","9":"(","0":")","-":"_","=":"+",";":": ","'":'"',",":"<",".":">","/":"?","\\":"|"}};a.each(["keydown","keyup","keypress"],function(){a.event.special[this]={add:n}})})(jQuery);(function(a,n){function f(ba){return typeof ba==="string"}function c(ba){var S=e.call(arguments,1);return function(){return ba.apply(this,S.concat(e.call(arguments)))}}function m(ba,S,U,ra,la){var ma;if(ra!==d){S=U.match(ba?/^([^#]*)\#?(.*)$/:/^([^#?]*)\??([^#]*)(#?.*)/);U=S[3]||"";if(la===2&&f(ra))ra=ra.replace(ba?ea:ca,"");else{ma=o(S[2]);ra=f(ra)?o[ba?fa:O](ra):ra;ra=la===2?ra:la===1?a.extend({},ra,ma):a.extend({},ma,ra);ra=u(ra);if(ba)ra=ra.replace(qa,l)}ba=S[1]+(ba?"#":ra||!S[1]?"?":"")+ra+U}else ba=
|
||
|
S(U!==d?U:n[sa][ja]);return ba}function p(ba,S,U){if(S===d||typeof S==="boolean"){U=S;S=u[ba?fa:O]()}else S=f(S)?S.replace(ba?ea:ca,""):S;return o(S,U)}function b(ba,S,U,ra){if(!f(U)&&typeof U!=="object"){ra=U;U=S;S=d}return this.each(function(){var la=a(this),ma=S||da()[(this.nodeName||"").toLowerCase()]||"",Y=ma&&la.attr(ma)||"";la.attr(ma,u[ba](Y,U,ra))})}var d,e=Array.prototype.slice,l=decodeURIComponent,u=a.param,z,o,L,T=a.bbq=a.bbq||{},N,J,da,V=a.event.special,O="querystring",fa="fragment",
|
||
|
sa="location",ja="href",ca=/^.*\?|#.*$/g,ea=/^.*\#/,qa,pa={};u[O]=c(m,0,function(ba){return ba.replace(/(?:^[^?#]*\?([^#]*).*$)?.*/,"$1")});u[fa]=z=c(m,1,function(ba){return ba.replace(/^[^#]*#?(.*)$/,"$1")});z.noEscape=function(ba){ba=ba||"";ba=a.map(ba.split(""),encodeURIComponent);qa=RegExp(ba.join("|"),"g")};z.noEscape(",/");a.deparam=o=function(ba,S){var U={},ra={"true":true,"false":false,"null":null};a.each(ba.replace(/\+/g," ").split("&"),function(la,ma){var Y=ma.split("="),za=l(Y[0]),Ia=U,
|
||
|
Qa=0,Ka=za.split("]["),Ua=Ka.length-1;if(/\[/.test(Ka[0])&&/\]$/.test(Ka[Ua])){Ka[Ua]=Ka[Ua].replace(/\]$/,"");Ka=Ka.shift().split("[").concat(Ka);Ua=Ka.length-1}else Ua=0;if(Y.length===2){Y=l(Y[1]);if(S)Y=Y&&!isNaN(Y)?+Y:Y==="undefined"?d:ra[Y]!==d?ra[Y]:Y;if(Ua)for(;Qa<=Ua;Qa++){za=Ka[Qa]===""?Ia.length:Ka[Qa];Ia=Ia[za]=Qa<Ua?Ia[za]||(Ka[Qa+1]&&isNaN(Ka[Qa+1])?{}:[]):Y}else if(a.isArray(U[za]))U[za].push(Y);else U[za]=U[za]!==d?[U[za],Y]:Y}else if(za)U[za]=S?d:""});return U};o[O]=c(p,0);o[fa]=L=
|
||
|
c(p,1);a.elemUrlAttr||(a.elemUrlAttr=function(ba){return a.extend(pa,ba)})({a:ja,base:ja,iframe:"src",img:"src",input:"src",form:"action",link:ja,script:"src"});da=a.elemUrlAttr;a.fn[O]=c(b,O);a.fn[fa]=c(b,fa);T.pushState=N=function(ba,S){if(f(ba)&&/^#/.test(ba)&&S===d)S=2;var U=ba!==d;U=z(n[sa][ja],U?ba:{},U?S:2);n[sa][ja]=U+(/#/.test(U)?"":"#")};T.getState=J=function(ba,S){return ba===d||typeof ba==="boolean"?L(ba):L(S)[ba]};T.removeState=function(ba){var S={};if(ba!==d){S=J();a.each(a.isArray(ba)?
|
||
|
ba:arguments,function(U,ra){delete S[ra]})}N(S,2)};V.hashchange=a.extend(V.hashchange,{add:function(ba){function S(ra){var la=ra[fa]=z();ra.getState=function(ma,Y){return ma===d||typeof ma==="boolean"?o(la,ma):o(la,Y)[ma]};U.apply(this,arguments)}var U;if(a.isFunction(ba)){U=ba;return S}else{U=ba.handler;ba.handler=S}}})})(jQuery,this);
|
||
|
(function(a,n,f){function c(z){z=z||n[b][d];return z.replace(/^[^#]*#?(.*)$/,"$1")}var m,p=a.event.special,b="location",d="href",e=document.documentMode,l=a.browser.msie&&(e===f||e<8),u="onhashchange"in n&&!l;a.hashchangeDelay=100;p.hashchange=a.extend(p.hashchange,{setup:function(){if(u)return false;a(m.start)},teardown:function(){if(u)return false;a(m.stop)}});m=function(){function z(){N=J=function(da){return da};if(l){T=a('<iframe src="javascript:0"/>').hide().insertAfter("body")[0].contentWindow;
|
||
|
J=function(){return c(T.document[b][d])};N=function(da,V){if(da!==V){var O=T.document;O.open().close();O[b].hash="#"+da}};N(c())}}var o={},L,T,N,J;o.start=function(){if(!L){var da=c();N||z();(function V(){var O=c(),fa=J(da);if(O!==da){N(da=O,fa);a(n).trigger("hashchange")}else if(fa!==da)n[b][d]=n[b][d].replace(/#.*/,"")+"#"+fa;L=setTimeout(V,a.hashchangeDelay)})()}};o.stop=function(){if(!T){L&&clearTimeout(L);L=0}};return o}()})(jQuery,this);(function(a){var n={},f;a.svgIcons=function(c,m){function p(ba,S){if(ba!=="ajax"){if(da)return;var U=(T=ja[0].contentDocument)&&T.getElementById("svg_eof");if(!U&&!(S&&U)){V++;if(V<50)setTimeout(p,20);else{d();da=true}return}da=true}L=a(T.firstChild).children();if(m.no_img)setTimeout(function(){J||b()},500);else{U=sa+"PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNzUiIGhlaWdodD0iMjc1Ij48L3N2Zz4%3D";N=a(new Image).attr({src:U,width:0,height:0}).appendTo("body").load(function(){b(true)}).error(function(){b()})}}
|
||
|
function b(ba,S){if(!J){if(m.no_img)ba=false;if(ba){var U=a(document.createElement("div"));U.hide().appendTo("body")}if(S){var ra=m.fallback_path?m.fallback_path:"";a.each(S,function(Ua,Wa){a("#"+Ua);var La=a(new Image).attr({"class":"svg_icon",src:ra+Wa,width:z,height:o,alt:"icon"});pa(La,Ua)})}else for(var la=L.length,ma=0;ma<la;ma++){var Y=L[ma],za=Y.id;if(za==="svg_eof")break;a("#"+za);Y=Y.getElementsByTagNameNS(l,"svg")[0];var Ia=document.createElementNS(l,"svg");Ia.setAttributeNS(l,"viewBox",
|
||
|
[0,0,z,o].join(" "));var Qa=Y.getAttribute("width"),Ka=Y.getAttribute("height");Y.removeAttribute("width");Y.removeAttribute("height");Y.getAttribute("viewBox")||Y.setAttribute("viewBox",[0,0,Qa,Ka].join(" "));Ia.setAttribute("xmlns",l);Ia.setAttribute("width",z);Ia.setAttribute("height",o);Ia.setAttribute("xmlns:xlink",u);Ia.setAttribute("class","svg_icon");fa||(Y=Y.cloneNode(true));Ia.appendChild(Y);if(ba){fa||Ia.cloneNode(true);U.empty().append(Ia);Y=sa+e(U.html());Y=a(new Image).attr({"class":"svg_icon",
|
||
|
src:Y})}else Y=f(a(Ia),ma);pa(Y,za)}m.placement&&a.each(m.placement,function(Ua,Wa){n[Wa]&&a(Ua).each(function(La){var Ga=n[Wa].clone();if(La>0&&!ba)Ga=f(Ga,La,true);qa(a(this),Ga,Wa)})});if(!S){ba&&U.remove();ja&&ja.remove();N&&N.remove()}m.resize&&a.resizeSvgIcons(m.resize);J=true;m.callback&&m.callback(n)}}function d(){if(c.indexOf(".svgz")!=-1){var ba=c.replace(".svgz",".svg");window.console&&console.log(".svgz failed, trying with .svg");a.svgIcons(ba,m)}else m.fallback&&b(false,m.fallback)}function e(ba){if(window.btoa)return window.btoa(ba);
|
||
|
var S=Array(Math.floor((ba.length+2)/3)*4),U,ra,la,ma,Y,za,Ia=0,Qa=0;do{U=ba.charCodeAt(Ia++);ra=ba.charCodeAt(Ia++);la=ba.charCodeAt(Ia++);ma=U>>2;U=(U&3)<<4|ra>>4;Y=(ra&15)<<2|la>>6;za=la&63;if(isNaN(ra))Y=za=64;else if(isNaN(la))za=64;S[Qa++]="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(ma);S[Qa++]="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(U);S[Qa++]="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(Y);S[Qa++]=
|
||
|
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(za)}while(Ia<ba.length);return S.join("")}var l="http://www.w3.org/2000/svg",u="http://www.w3.org/1999/xlink",z=m.w?m.w:24,o=m.h?m.h:24,L,T,N,J=false,da=false,V=0,O=navigator.userAgent,fa=!!window.opera;O.indexOf("Safari/")>-1&&O.indexOf("Chrome/");var sa="data:image/svg+xml;charset=utf-8;base64,";if(m.svgz){var ja=a('<object data="'+c+'" type=image/svg+xml>').appendTo("body").hide();try{T=ja[0].contentDocument;ja.load(p);
|
||
|
p(0,true)}catch(ca){d()}}else{var ea=new DOMParser;a.ajax({url:c,dataType:"string",success:function(ba){if(ba){T=ea.parseFromString(ba,"text/xml");a(function(){p("ajax")})}else a(d)},error:function(ba){if(window.opera)a(function(){d()});else if(ba.responseText){T=ea.parseFromString(ba.responseText,"text/xml");T.childNodes.length||a(d);a(function(){p("ajax")})}else a(d)}})}var qa=function(ba,S,U,ra){fa&&S.css("visibility","hidden");if(m.replace){ra&&S.attr("id",U);(U=ba.attr("class"))&&S.attr("class",
|
||
|
"svg_icon "+U);ba.replaceWith(S)}else ba.append(S);fa&&setTimeout(function(){S.removeAttr("style")},1)},pa=function(ba,S){if(m.id_match===undefined||m.id_match!==false)qa(holder,ba,S,true);n[S]=ba};f=function(ba,S){var U=ba.find("defs");if(!U.length)return ba;U=fa?U.find("*").filter(function(){return!!this.id}):U.find("[id]");var ra=ba[0].getElementsByTagName("*"),la=ra.length;U.each(function(ma){var Y=this.id;a(T).find("#"+Y);this.id=ma="x"+Y+S+ma;Y="url(#"+Y+")";var za="url(#"+ma+")";for(ma=0;ma<
|
||
|
la;ma++){var Ia=ra[ma];Ia.getAttribute("fill")===Y&&Ia.setAttribute("fill",za);Ia.getAttribute("stroke")===Y&&Ia.setAttribute("stroke",za);Ia.getAttribute("filter")===Y&&Ia.setAttribute("filter",za)}});return ba}};a.getSvgIcon=function(c,m){var p=n[c];if(m&&p)p=f(p,0,true).clone(true);return p};a.resizeSvgIcons=function(c){var m=!a(".svg_icon:first").length;a.each(c,function(p,b){var d=a.isArray(b),e=d?b[0]:b,l=d?b[1]:b;if(m)p=p.replace(/\.svg_icon/g,"svg");a(p).each(function(){this.setAttribute("width",
|
||
|
e);this.setAttribute("height",l);if(window.opera&&window.widget){this.parentNode.style.width=e+"px";this.parentNode.style.height=l+"px"}})})}})(jQuery);(function(){function a(c,m,p){c=document.createElementNS(n.svg,c);if(f)for(var b in m)c.setAttribute(b,m[b]);else for(b in m){var d=m[b],e=c[b];if(e&&e.constructor==="SVGLength")e.baseVal.value=d;else c.setAttribute(b,d)}p&&p.appendChild(c);return c}var n={svg:"http://www.w3.org/2000/svg",xlink:"http://www.w3.org/1999/xlink"};if(!window.console)window.console=new function(){this.log=function(){};this.dir=function(){}};$.jGraduate={Paint:function(c){c=c||{};this.alpha=isNaN(c.alpha)?100:c.alpha;if(c.copy){this.type=
|
||
|
c.copy.type;this.alpha=c.copy.alpha;this.radialGradient=this.linearGradient=this.solidColor=null;switch(this.type){case "solidColor":this.solidColor=c.copy.solidColor;break;case "linearGradient":this.linearGradient=c.copy.linearGradient.cloneNode(true);break;case "radialGradient":this.radialGradient=c.copy.radialGradient.cloneNode(true)}}else if(c.linearGradient){this.type="linearGradient";this.radialGradient=this.solidColor=null;this.linearGradient=c.linearGradient.cloneNode(true)}else if(c.radialGradient){this.type=
|
||
|
"radialGradient";this.linearGradient=this.solidColor=null;this.radialGradient=c.radialGradient.cloneNode(true)}else if(c.solidColor){this.type="solidColor";this.solidColor=c.solidColor}else{this.type="none";this.radialGradient=this.linearGradient=this.solidColor=null}}};jQuery.fn.jGraduateDefaults={paint:new $.jGraduate.Paint,window:{pickerTitle:"Drag markers to pick a paint"},images:{clientPath:"images/"},newstop:"inverse"};var f=navigator.userAgent.indexOf("Gecko/")>=0;jQuery.fn.jGraduate=function(c){var m=
|
||
|
arguments;return this.each(function(){function p(na,Z,ta,M,I){var X=I||a("stop",{"stop-color":Z,"stop-opacity":ta,offset:na},ea);if(I){Z=I.getAttribute("stop-color");ta=I.getAttribute("stop-opacity");na=I.getAttribute("offset")}else ea.appendChild(X);if(ta===null)ta=1;I=a("path",{d:"M-6.2,0.9c3.6-4,6.7-4.3,6.7-12.4c-0.2,7.9,3.1,8.8,6.5,12.4c3.5,3.8,2.9,9.6,0,12.3c-3.1,2.8-10.4,2.7-13.2,0C-9.6,9.9-9.4,4.4-6.2,0.9z",fill:"url(#jGraduate_trans)",transform:"translate("+(10+na*fa)+", 26)"},Gb);var Ma=
|
||
|
a("path",{d:"M-6.2,0.9c3.6-4,6.7-4.3,6.7-12.4c-0.2,7.9,3.1,8.8,6.5,12.4c3.5,3.8,2.9,9.6,0,12.3c-3.1,2.8-10.4,2.7-13.2,0C-9.6,9.9-9.4,4.4-6.2,0.9z",fill:Z,"fill-opacity":ta,transform:"translate("+(10+na*fa)+", 26)",stroke:"#000","stroke-width":1.5},Gb);$(Ma).mousedown(function(Xa){b(this);Sa=lb;da.mousemove(l).mouseup(d);Ea=Nb.offset();Xa.preventDefault();return false}).data("stop",X).data("bg",I).dblclick(function(){$("div.jGraduate_LightBox").show();for(var Xa=this,db=+X.getAttribute("stop-opacity")||
|
||
|
1,tb=X.getAttribute("stop-color")||1,xb=(parseFloat(db)*255).toString(16);xb.length<2;)xb="0"+xb;Z=tb.substr(1)+xb;$("#"+o+"_jGraduate_stopPicker").css({left:100,bottom:15}).jPicker({window:{title:"Pick the start color and opacity for the gradient"},images:{clientPath:z.images.clientPath},color:{active:Z,alphaSupport:true}},function(Hb){tb=Hb.val("hex")?"#"+Hb.val("hex"):"none";db=Hb.val("a")!==null?Hb.val("a")/256:1;Xa.setAttribute("fill",tb);Xa.setAttribute("fill-opacity",db);X.setAttribute("stop-color",
|
||
|
tb);X.setAttribute("stop-opacity",db);$("div.jGraduate_LightBox").hide();$("#"+o+"_jGraduate_stopPicker").hide()},null,function(){$("div.jGraduate_LightBox").hide();$("#"+o+"_jGraduate_stopPicker").hide()})});$(ea).find("stop").each(function(){var Xa=$(this);if(+this.getAttribute("offset")>na){if(!Z){var db=this.getAttribute("stop-color"),tb=this.getAttribute("stop-opacity");X.setAttribute("stop-color",db);Ma.setAttribute("fill",db);X.setAttribute("stop-opacity",tb===null?1:tb);Ma.setAttribute("fill-opacity",
|
||
|
tb===null?1:tb)}Xa.before(X);return false}});M&&b(Ma);return X}function b(na){lb&&lb.setAttribute("stroke","#000");na.setAttribute("stroke","blue");lb=na;lb.parentNode.appendChild(lb)}function d(){da.unbind("mousemove",l);if(Ja.getAttribute("display")!=="none"){Ja.setAttribute("display","none");var na=$(lb),Z=na.data("stop");na=na.data("bg");$([lb,Z,na]).remove()}Sa=null}function e(){var na=$a?"rotate("+$a+","+Na+","+mb+") ":"";Za===1&&Ra===1?ea.removeAttribute("gradientTransform"):ea.setAttribute("gradientTransform",
|
||
|
na+"translate("+-Na*(Za-1)+","+-mb*(Ra-1)+") scale("+Za+","+Ra+")")}function l(na){var Z=na.pageX-Ea.left;na=na.pageY-Ea.top;Z=Z<10?10:Z>fa+10?fa+10:Z;var ta="translate("+Z+", 26)";if(na<-60||na>130){Ja.setAttribute("display","block");Ja.setAttribute("transform",ta)}else Ja.setAttribute("display","none");Sa.setAttribute("transform",ta);$.data(Sa,"bg").setAttribute("transform",ta);$.data(Sa,"stop").setAttribute("offset",(Z-10)/fa);var M=0;$(ea).find("stop").each(function(){var I=this.getAttribute("offset"),
|
||
|
X=$(this);if(I<M){X.prev().before(X);Fa=$(ea).find("stop")}M=I})}var u=$(this),z=$.extend(true,{},jQuery.fn.jGraduateDefaults,c),o=u.attr("id"),L="#"+u.attr("id")+" ";if(L){var T=function(){switch(u.paint.type){case "radialGradient":u.paint.linearGradient=null;break;case "linearGradient":u.paint.radialGradient=null;break;case "solidColor":u.paint.radialGradient=u.paint.linearGradient=null}$.isFunction(u.okCallback)&&u.okCallback(u.paint);u.hide()},N=function(){$.isFunction(u.cancelCallback)&&u.cancelCallback();
|
||
|
u.hide()};$.extend(true,u,{paint:new $.jGraduate.Paint({copy:z.paint}),okCallback:$.isFunction(m[1])&&m[1]||null,cancelCallback:$.isFunction(m[2])&&m[2]||null});u.position();var J=null,da=$(window);if(u.paint.type=="none")u.paint=$.jGraduate.Paint({solidColor:"ffffff"});u.addClass("jGraduate_Picker");u.html('<ul class="jGraduate_tabs"><li class="jGraduate_tab_color jGraduate_tab_current" data-type="col">Solid Color</li><li class="jGraduate_tab_lingrad" data-type="lg">Linear Gradient</li><li class="jGraduate_tab_radgrad" data-type="rg">Radial Gradient</li></ul><div class="jGraduate_colPick"></div><div class="jGraduate_gradPick"></div><div class="jGraduate_LightBox"></div><div id="'+
|
||
|
o+'_jGraduate_stopPicker" class="jGraduate_stopPicker"></div>');var V=$(L+"> .jGraduate_colPick"),O=$(L+"> .jGraduate_gradPick");O.html('<div id="'+o+'_jGraduate_Swatch" class="jGraduate_Swatch"><h2 class="jGraduate_Title">'+z.window.pickerTitle+'</h2><div id="'+o+'_jGraduate_GradContainer" class="jGraduate_GradContainer"></div><div id="'+o+'_jGraduate_StopSlider" class="jGraduate_StopSlider"></div></div><div class="jGraduate_Form jGraduate_Points jGraduate_lg_field"><div class="jGraduate_StopSection"><label class="jGraduate_Form_Heading">Begin Point</label><div class="jGraduate_Form_Section"><label>x:</label><input type="text" id="'+
|
||
|
o+'_jGraduate_x1" size="3" title="Enter starting x value between 0.0 and 1.0"/><label> y:</label><input type="text" id="'+o+'_jGraduate_y1" size="3" title="Enter starting y value between 0.0 and 1.0"/></div></div><div class="jGraduate_StopSection"><label class="jGraduate_Form_Heading">End Point</label><div class="jGraduate_Form_Section"><label>x:</label><input type="text" id="'+o+'_jGraduate_x2" size="3" title="Enter ending x value between 0.0 and 1.0"/><label> y:</label><input type="text" id="'+
|
||
|
o+'_jGraduate_y2" size="3" title="Enter ending y value between 0.0 and 1.0"/></div></div></div><div class="jGraduate_Form jGraduate_Points jGraduate_rg_field"><div class="jGraduate_StopSection"><label class="jGraduate_Form_Heading">Center Point</label><div class="jGraduate_Form_Section"><label>x:</label><input type="text" id="'+o+'_jGraduate_cx" size="3" title="Enter x value between 0.0 and 1.0"/><label> y:</label><input type="text" id="'+o+'_jGraduate_cy" size="3" title="Enter y value between 0.0 and 1.0"/></div></div><div class="jGraduate_StopSection"><label class="jGraduate_Form_Heading">Focal Point</label><div class="jGraduate_Form_Section"><label>Match center: <input type="checkbox" checked="checked" id="'+
|
||
|
o+'_jGraduate_match_ctr"/></label><br/><label>x:</label><input type="text" id="'+o+'_jGraduate_fx" size="3" title="Enter x value between 0.0 and 1.0"/><label> y:</label><input type="text" id="'+o+'_jGraduate_fy" size="3" title="Enter y value between 0.0 and 1.0"/></div></div></div><div class="jGraduate_StopSection jGraduate_SpreadMethod"><label class="jGraduate_Form_Heading">Spread method</label><div class="jGraduate_Form_Section"><select class="jGraduate_spreadMethod"><option value=pad selected>Pad</option><option value=reflect>Reflect</option><option value=repeat>Repeat</option></select></div></div><div class="jGraduate_Form"><div class="jGraduate_Slider jGraduate_RadiusField jGraduate_rg_field"><label class="prelabel">Radius:</label><div id="'+
|
||
|
o+'_jGraduate_Radius" class="jGraduate_SliderBar jGraduate_Radius" title="Click to set radius"><img id="'+o+'_jGraduate_RadiusArrows" class="jGraduate_RadiusArrows" src="'+z.images.clientPath+'rangearrows2.gif"></div><label><input type="text" id="'+o+'_jGraduate_RadiusInput" size="3" value="100"/>%</label></div><div class="jGraduate_Slider jGraduate_EllipField jGraduate_rg_field"><label class="prelabel">Ellip:</label><div id="'+o+'_jGraduate_Ellip" class="jGraduate_SliderBar jGraduate_Ellip" title="Click to set Ellip"><img id="'+
|
||
|
o+'_jGraduate_EllipArrows" class="jGraduate_EllipArrows" src="'+z.images.clientPath+'rangearrows2.gif"></div><label><input type="text" id="'+o+'_jGraduate_EllipInput" size="3" value="0"/>%</label></div><div class="jGraduate_Slider jGraduate_AngleField jGraduate_rg_field"><label class="prelabel">Angle:</label><div id="'+o+'_jGraduate_Angle" class="jGraduate_SliderBar jGraduate_Angle" title="Click to set Angle"><img id="'+o+'_jGraduate_AngleArrows" class="jGraduate_AngleArrows" src="'+z.images.clientPath+
|
||
|
'rangearrows2.gif"></div><label><input type="text" id="'+o+'_jGraduate_AngleInput" size="3" value="0"/>\u00ba </label></div><div class="jGraduate_Slider jGraduate_OpacField"><label class="prelabel">Opac:</label><div id="'+o+'_jGraduate_Opac" class="jGraduate_SliderBar jGraduate_Opac" title="Click to set Opac"><img id="'+o+'_jGraduate_OpacArrows" class="jGraduate_OpacArrows" src="'+z.images.clientPath+'rangearrows2.gif"></div><label><input type="text" id="'+o+'_jGraduate_OpacInput" size="3" value="100"/>%</label></div></div><div class="jGraduate_OkCancel"><input type="button" id="'+
|
||
|
o+'_jGraduate_Ok" class="jGraduate_Ok" value="OK"/><input type="button" id="'+o+'_jGraduate_Cancel" class="jGraduate_Cancel" value="Cancel"/></div>');var fa=256,sa=fa-0,ja=fa-0,ca,ea,qa,pa={};$(".jGraduate_SliderBar").width(145);var ba=$("#"+o+"_jGraduate_GradContainer")[0],S=a("svg",{id:o+"_jgraduate_svg",width:fa,height:fa,xmlns:n.svg},ba);ca=ca||u.paint.type;var U=ea=u.paint[ca],ra=u.paint.alpha,la=ca==="solidColor";switch(ca){case "solidColor":case "linearGradient":if(!la){ea.id=o+"_lg_jgraduate_grad";
|
||
|
U=ea=S.appendChild(ea)}a("radialGradient",{id:o+"_rg_jgraduate_grad"},S);if(ca==="linearGradient")break;case "radialGradient":if(!la){ea.id=o+"_rg_jgraduate_grad";U=ea=S.appendChild(ea)}a("linearGradient",{id:o+"_lg_jgraduate_grad"},S)}if(la){U=ea=$("#"+o+"_lg_jgraduate_grad")[0];J=u.paint[ca];p(0,"#"+J,1);var ma=typeof z.newstop;if(ma==="string")switch(z.newstop){case "same":p(1,"#"+J,1);break;case "inverse":ma="";for(var Y=0;Y<6;Y+=2){J.substr(Y,2);var za=(255-parseInt(J.substr(Y,2),16)).toString(16);
|
||
|
if(za.length<2)za=0+za;ma+=za}p(1,"#"+ma,1);break;case "white":p(1,"#ffffff",1);break;case "black":p(1,"#000000",1)}else if(ma==="object")p(1,z.newstop.color||"#"+J,"opac"in z.newstop?z.newstop.opac:1)}J=parseFloat(U.getAttribute("x1")||0);ma=parseFloat(U.getAttribute("y1")||0);Y=parseFloat(U.getAttribute("x2")||1);za=parseFloat(U.getAttribute("y2")||0);var Ia=parseFloat(U.getAttribute("cx")||0.5),Qa=parseFloat(U.getAttribute("cy")||0.5),Ka=parseFloat(U.getAttribute("fx")||Ia),Ua=parseFloat(U.getAttribute("fy")||
|
||
|
Qa);qa=a("rect",{id:o+"_jgraduate_rect",x:0,y:0,width:sa,height:ja,fill:"url(#"+o+"_jgraduate_grad)","fill-opacity":ra/100},S);var Wa=$("<div/>").attr({"class":"grad_coord jGraduate_lg_field",title:"Begin Stop"}).text(1).css({top:ma*fa,left:J*fa}).data("coord","start").appendTo(ba),La=Wa.clone().text(2).css({top:za*fa,left:Y*fa}).attr("title","End stop").data("coord","end").appendTo(ba),Ga=$("<div/>").attr({"class":"grad_coord jGraduate_rg_field",title:"Center stop"}).text("C").css({top:Qa*fa,left:Ia*
|
||
|
fa}).data("coord","center").appendTo(ba),Oa=Ga.clone().text("F").css({top:Ua*fa,left:Ka*fa,display:"none"}).attr("title","Focus point").data("coord","focus").appendTo(ba);Oa[0].id=o+"_jGraduate_focusCoord";$(L+" .grad_coord");$.each(["x1","y1","x2","y2","cx","cy","fx","fy"],function(na,Z){var ta=ea.getAttribute(Z),M=isNaN(Z[1]);ta||(ta=M?"0.5":Z==="x2"?"1.0":"0.0");pa[Z]=$("#"+o+"_jGraduate_"+Z).val(ta).change(function(){if(isNaN(parseFloat(this.value))||this.value<0)this.value=0;else if(this.value>
|
||
|
1)this.value=1;if(!(Z[0]==="f"&&!nb))if(M&&ca==="radialGradient"||!M&&ca==="linearGradient")ea.setAttribute(Z,this.value);var I=M?Z[0]==="c"?Ga:Oa:Z[1]==="1"?Wa:La,X=Z.indexOf("x")>=0?"left":"top";I.css(X,this.value*fa)}).change()});var Fa,Gb,Nb=$("#"+o+"_jGraduate_StopSlider"),lb,ab,Sa,Ja=a("path",{d:"m9.75,-6l-19.5,19.5m0,-19.5l19.5,19.5",fill:"none",stroke:"#D00","stroke-width":5,display:"none"},ab),Ea,Za=1,Ra=1,$a=0,Na=Ia,mb=Qa;ab=a("svg",{width:"100%",height:45},Nb[0]);ba=a("pattern",{width:16,
|
||
|
height:16,patternUnits:"userSpaceOnUse",id:"jGraduate_trans"},ab);a("image",{width:16,height:16},ba).setAttributeNS(n.xlink,"xlink:href",z.images.clientPath+"map-opacity.png");$(ab).click(function(na){Ea=Nb.offset();if(na.target.tagName!=="path"){var Z=na.pageX-Ea.left-8;Z=Z<10?10:Z>fa+10?fa+10:Z;p(Z/fa,0,0,true);na.stopPropagation()}});$(ab).mouseover(function(){ab.appendChild(Ja)});Gb=a("g",{},ab);a("line",{x1:10,y1:15,x2:fa+10,y2:15,"stroke-width":2,stroke:"#000"},ab);var Ab=O.find(".jGraduate_spreadMethod").change(function(){ea.setAttribute("spreadMethod",
|
||
|
$(this).val())}),cb=null,jb=function(na){var Z=na.pageX-wb.left,ta=na.pageY-wb.top;Z=Z<0?0:Z>fa?fa:Z;ta=ta<0?0:ta>fa?fa:ta;cb.css("left",Z).css("top",ta);Z/=sa;ta/=ja;var M=cb.data("coord"),I=ea;switch(M){case "start":pa.x1.val(Z);pa.y1.val(ta);I.setAttribute("x1",Z);I.setAttribute("y1",ta);break;case "end":pa.x2.val(Z);pa.y2.val(ta);I.setAttribute("x2",Z);I.setAttribute("y2",ta);break;case "center":pa.cx.val(Z);pa.cy.val(ta);I.setAttribute("cx",Z);I.setAttribute("cy",ta);Na=Z;mb=ta;e();break;case "focus":pa.fx.val(Z);
|
||
|
pa.fy.val(ta);I.setAttribute("fx",Z);I.setAttribute("fy",ta);e()}na.preventDefault()},kb=function(){cb=null;da.unbind("mousemove",jb).unbind("mouseup",kb)};Fa=ea.getElementsByTagNameNS(n.svg,"stop");if(Ca<2){for(;Ca<2;){ea.appendChild(document.createElementNS(n.svg,"stop"));++Ca}Fa=ea.getElementsByTagNameNS(n.svg,"stop")}var Ca=Fa.length;for(Y=0;Y<Ca;Y++)p(0,0,0,0,Fa[Y]);Ab.val(ea.getAttribute("spreadMethod")||"pad");var wb,nb=false;qa.setAttribute("fill-opacity",ra/100);$("#"+o+" div.grad_coord").mousedown(function(na){na.preventDefault();
|
||
|
cb=$(this);cb.offset();wb=cb.parent().offset();da.mousemove(jb).mouseup(kb)});$("#"+o+"_jGraduate_Ok").bind("click",function(){u.paint.type=ca;u.paint[ca]=ea.cloneNode(true);u.paint.solidColor=null;T()});$("#"+o+"_jGraduate_Cancel").bind("click",function(){N()});if(ca==="radialGradient")if(nb)Oa.show();else{Oa.hide();pa.fx.val("");pa.fy.val("")}$("#"+o+"_jGraduate_match_ctr")[0].checked=!nb;var yb,Bb;$("#"+o+"_jGraduate_match_ctr").change(function(){nb=!this.checked;Oa.toggle(nb);pa.fx.val("");pa.fy.val("");
|
||
|
var na=ea;if(nb){var Z=yb||0.5,ta=Bb||0.5;na.setAttribute("fx",Z);na.setAttribute("fy",ta);pa.fx.val(Z);pa.fy.val(ta)}else{yb=na.getAttribute("fx");Bb=na.getAttribute("fy");na.removeAttribute("fx");na.removeAttribute("fy")}});Fa=ea.getElementsByTagNameNS(n.svg,"stop");Ca=Fa.length;if(Ca<2){for(;Ca<2;){ea.appendChild(document.createElementNS(n.svg,"stop"));++Ca}Fa=ea.getElementsByTagNameNS(n.svg,"stop")}var ob;ra=O=0;if(ca==="radialGradient"){S=ea.gradientTransform.baseVal;if(S.numberOfItems===2){Ca=
|
||
|
S.getItem(0);S=S.getItem(1);if(Ca.type===2&&S.type===3){Ca=S.matrix;if(Ca.a!==1)O=Math.round(-(1-Ca.a)*100);else if(Ca.d!==1)O=Math.round((1-Ca.d)*100)}}else if(S.numberOfItems===3){ba=S.getItem(0);Ca=S.getItem(1);S=S.getItem(2);if(ba.type===4&&Ca.type===2&&S.type===3){ra=Math.round(ba.angle);Ca=S.matrix;if(Ca.a!==1)O=Math.round(-(1-Ca.a)*100);else if(Ca.d!==1)O=Math.round((1-Ca.d)*100)}}}O={radius:{handle:"#"+o+"_jGraduate_RadiusArrows",input:"#"+o+"_jGraduate_RadiusInput",val:(ea.getAttribute("r")||
|
||
|
0.5)*100},opacity:{handle:"#"+o+"_jGraduate_OpacArrows",input:"#"+o+"_jGraduate_OpacInput",val:u.paint.alpha||100},ellip:{handle:"#"+o+"_jGraduate_EllipArrows",input:"#"+o+"_jGraduate_EllipInput",val:O},angle:{handle:"#"+o+"_jGraduate_AngleArrows",input:"#"+o+"_jGraduate_AngleInput",val:ra}};$.each(O,function(na,Z){var ta=$(Z.handle);ta.mousedown(function(M){var I=ta.parent();ob={type:na,elem:ta,input:$(Z.input),parent:I,offset:I.offset()};da.mousemove(Cb).mouseup(Kb);M.preventDefault()});$(Z.input).val(Z.val).change(function(){var M=
|
||
|
+this.value,I=0,X=ca==="radialGradient";switch(na){case "radius":X&&ea.setAttribute("r",M/100);I=Math.pow(M/100,0.4)/2*145;break;case "opacity":u.paint.alpha=M;qa.setAttribute("fill-opacity",M/100);I=M*1.45;break;case "ellip":Za=Ra=1;if(M===0){I=72.5;break}if(M>99.5)M=99.5;if(M>0)Ra=1-M/100;else Za=-(M/100)-1;I=145*((M+100)/2)/100;X&&e();break;case "angle":$a=M;I=$a/180;I+=0.5;I*=145;X&&e()}if(I>145)I=145;else if(I<0)I=0;ta.css({"margin-left":I-5})}).change()});var Cb=function(na){var Z=na.pageX-
|
||
|
ob.offset.left-parseInt(ob.parent.css("border-left-width"));if(Z>145)Z=145;if(Z<=0)Z=0;var ta=Z-5;Z/=145;switch(ob.type){case "radius":Z=Math.pow(Z*2,2.5);if(Z>0.98&&Z<1.02)Z=1;if(Z<=0.01)Z=0.01;ea.setAttribute("r",Z);break;case "opacity":u.paint.alpha=parseInt(Z*100);qa.setAttribute("fill-opacity",Z);break;case "ellip":Ra=Za=1;if(Z<0.5){Z/=0.5;Za=Z<=0?0.01:Z}else if(Z>0.5){Z/=0.5;Z=2-Z;Ra=Z<=0?0.01:Z}e();Z-=1;if(Ra===Z+1)Z=Math.abs(Z);break;case "angle":Z-=0.5;$a=Z*=180;e();Z/=100}ob.elem.css({"margin-left":ta});
|
||
|
Z=Math.round(Z*100);ob.input.val(Z);na.preventDefault()},Kb=function(){da.unbind("mousemove",Cb).unbind("mouseup",Kb);ob=null};for(O=(u.paint.alpha*255/100).toString(16);O.length<2;)O="0"+O;O=O.split(".")[0];J=u.paint.solidColor=="none"?"":u.paint.solidColor+O;la||(J=Fa[0].getAttribute("stop-color"));$.extend($.fn.jPicker.defaults.window,{alphaSupport:true,effects:{type:"show",speed:0}});V.jPicker({window:{title:z.window.pickerTitle},images:{clientPath:z.images.clientPath},color:{active:J,alphaSupport:true}},
|
||
|
function(na){u.paint.type="solidColor";u.paint.alpha=na.val("ahex")?Math.round(na.val("a")/255*100):100;u.paint.solidColor=na.val("hex")?na.val("hex"):"none";u.paint.radialGradient=null;T()},null,function(){N()});var Ib=$(L+" .jGraduate_tabs li");Ib.click(function(){Ib.removeClass("jGraduate_tab_current");$(this).addClass("jGraduate_tab_current");$(L+" > div").hide();var na=$(this).attr("data-type");$(L+" .jGraduate_gradPick").show();if(na==="rg"||na==="lg"){$(".jGraduate_"+na+"_field").show();$(".jGraduate_"+
|
||
|
(na==="lg"?"rg":"lg")+"_field").hide();$("#"+o+"_jgraduate_rect")[0].setAttribute("fill","url(#"+o+"_"+na+"_jgraduate_grad)");ca=na==="lg"?"linearGradient":"radialGradient";$("#"+o+"_jGraduate_OpacInput").val(u.paint.alpha).change();var Z=$("#"+o+"_"+na+"_jgraduate_grad")[0];if(ea!==Z){var ta=$(ea).find("stop");$(Z).empty().append(ta);ea=Z;Z=Ab.val();ea.setAttribute("spreadMethod",Z)}nb=na==="rg"&&ea.getAttribute("fx")!=null&&!(Ia==Ka&&Qa==Ua);$("#"+o+"_jGraduate_focusCoord").toggle(nb);if(nb)$("#"+
|
||
|
o+"_jGraduate_match_ctr")[0].checked=false}else{$(L+" .jGraduate_gradPick").hide();$(L+" .jGraduate_colPick").show()}});$(L+" > div").hide();Ib.removeClass("jGraduate_tab_current");var Rb;switch(u.paint.type){case "linearGradient":Rb=$(L+" .jGraduate_tab_lingrad");break;case "radialGradient":Rb=$(L+" .jGraduate_tab_radgrad");break;default:Rb=$(L+" .jGraduate_tab_color")}u.show();setTimeout(function(){Rb.addClass("jGraduate_tab_current").click()},10)}else alert("Container element must have an id attribute to maintain unique id strings for sub-elements.")})}})();$.fn.SpinButton=function(a){function n(f,c){for(var m=f[c],p=document.body;(f=f.offsetParent)&&f!=p;)if(!$.browser.msie||f.currentStyle.position!="relative")m+=f[c];return m}return this.each(function(){this.repeating=false;this.spinCfg={min:a&&!isNaN(parseFloat(a.min))?Number(a.min):null,max:a&&!isNaN(parseFloat(a.max))?Number(a.max):null,step:a&&a.step?Number(a.step):1,stepfunc:a&&a.stepfunc?a.stepfunc:false,page:a&&a.page?Number(a.page):10,upClass:a&&a.upClass?a.upClass:"up",downClass:a&&a.downClass?
|
||
|
a.downClass:"down",reset:a&&a.reset?a.reset:this.value,delay:a&&a.delay?Number(a.delay):500,interval:a&&a.interval?Number(a.interval):100,_btn_width:20,_direction:null,_delay:null,_repeat:null,callback:a&&a.callback?a.callback:null};this.spinCfg.smallStep=a&&a.smallStep?a.smallStep:this.spinCfg.step/2;this.adjustValue=function(f){f=isNaN(this.value)?this.spinCfg.reset:$.isFunction(this.spinCfg.stepfunc)?this.spinCfg.stepfunc(this,f):Number((Number(this.value)+Number(f)).toFixed(5));if(this.spinCfg.min!==
|
||
|
null)f=Math.max(f,this.spinCfg.min);if(this.spinCfg.max!==null)f=Math.min(f,this.spinCfg.max);this.value=f;$.isFunction(this.spinCfg.callback)&&this.spinCfg.callback(this)};$(this).addClass(a&&a.spinClass?a.spinClass:"spin-button").mousemove(function(f){var c=f.pageX||f.x,m=f.pageY||f.y;f=f.target||f.srcElement;var p=svgEditor.tool_scale||1,b=$(f).height()/2;c=c>n(f,"offsetLeft")+f.offsetWidth*p-this.spinCfg._btn_width?m<n(f,"offsetTop")+b*p?1:-1:0;if(c!==this.spinCfg._direction){switch(c){case 1:$(this).removeClass(this.spinCfg.downClass).addClass(this.spinCfg.upClass);
|
||
|
break;case -1:$(this).removeClass(this.spinCfg.upClass).addClass(this.spinCfg.downClass);break;default:$(this).removeClass(this.spinCfg.upClass).removeClass(this.spinCfg.downClass)}this.spinCfg._direction=c}}).mouseout(function(){$(this).removeClass(this.spinCfg.upClass).removeClass(this.spinCfg.downClass);this.spinCfg._direction=null;window.clearInterval(this.spinCfg._repeat);window.clearTimeout(this.spinCfg._delay)}).mousedown(function(f){if(f.button===0&&this.spinCfg._direction!=0){var c=this,
|
||
|
m=f.shiftKey?c.spinCfg.smallStep:c.spinCfg.step,p=function(){c.adjustValue(c.spinCfg._direction*m)};p();c.spinCfg._delay=window.setTimeout(function(){p();c.spinCfg._repeat=window.setInterval(p,c.spinCfg.interval)},c.spinCfg.delay)}}).mouseup(function(){window.clearInterval(this.spinCfg._repeat);window.clearTimeout(this.spinCfg._delay)}).dblclick(function(){$.browser.msie&&this.adjustValue(this.spinCfg._direction*this.spinCfg.step)}).keydown(function(f){switch(f.keyCode){case 38:this.adjustValue(this.spinCfg.step);
|
||
|
break;case 40:this.adjustValue(-this.spinCfg.step);break;case 33:this.adjustValue(this.spinCfg.page);break;case 34:this.adjustValue(-this.spinCfg.page)}}).keypress(function(f){if(this.repeating)switch(f.keyCode){case 38:this.adjustValue(this.spinCfg.step);break;case 40:this.adjustValue(-this.spinCfg.step);break;case 33:this.adjustValue(this.spinCfg.page);break;case 34:this.adjustValue(-this.spinCfg.page)}else this.repeating=true}).keyup(function(f){this.repeating=false;switch(f.keyCode){case 38:case 40:case 33:case 34:case 13:this.adjustValue(0)}}).bind("mousewheel",
|
||
|
function(f){if(f.wheelDelta>=120)this.adjustValue(this.spinCfg.step);else f.wheelDelta<=-120&&this.adjustValue(-this.spinCfg.step);f.preventDefault()}).change(function(){this.adjustValue(0)});this.addEventListener&&this.addEventListener("DOMMouseScroll",function(f){if(f.detail>0)this.adjustValue(-this.spinCfg.step);else f.detail<0&&this.adjustValue(this.spinCfg.step);f.preventDefault()},false)})};function touchHandler(a){var n=a.changedTouches,f=n[0],c="";switch(a.type){case "touchstart":c="mousedown";break;case "touchmove":c="mousemove";break;case "touchend":c="mouseup";break;default:return}var m=document.createEvent("MouseEvent");m.initMouseEvent(c,true,true,window,1,f.screenX,f.screenY,f.clientX,f.clientY,false,false,false,false,0,null);if(n.length<2){f.target.dispatchEvent(m);a.preventDefault()}};jQuery&&function(){var a=$(window),n=$(document);$.extend($.fn,{contextMenu:function(f,c){if(f.menu==undefined)return false;if(f.inSpeed==undefined)f.inSpeed=150;if(f.outSpeed==undefined)f.outSpeed=75;if(f.inSpeed==0)f.inSpeed=-1;if(f.outSpeed==0)f.outSpeed=-1;$(this).each(function(){var m=$(this),p=$(m).offset(),b=$("#"+f.menu);b.addClass("contextMenu");$(this).bind("mousedown",function(d){$(this).mouseup(function(e){var l=$(this);l.unbind("mouseup");$(".contextMenu").hide();if(d.button===2||f.allowLeft||
|
||
|
d.ctrlKey&&svgedit.browser.isMac()){e.stopPropagation();if(m.hasClass("disabled"))return false;var u=e.pageX,z=e.pageY;e=a.width()-b.width();var o=a.height()-b.height();if(u>e-15)u=e-15;if(z>o-30)z=o-30;n.unbind("click");b.css({top:z,left:u}).fadeIn(f.inSpeed);b.find("A").mouseover(function(){b.find("LI.hover").removeClass("hover");$(this).parent().addClass("hover")}).mouseout(function(){b.find("LI.hover").removeClass("hover")});n.keypress(function(L){switch(L.keyCode){case 38:if(b.find("LI.hover").length){b.find("LI.hover").removeClass("hover").prevAll("LI:not(.disabled)").eq(0).addClass("hover");
|
||
|
b.find("LI.hover").length||b.find("LI:last").addClass("hover")}else b.find("LI:last").addClass("hover");break;case 40:if(b.find("LI.hover").length==0)b.find("LI:first").addClass("hover");else{b.find("LI.hover").removeClass("hover").nextAll("LI:not(.disabled)").eq(0).addClass("hover");b.find("LI.hover").length||b.find("LI:first").addClass("hover")}break;case 13:b.find("LI.hover A").trigger("click");break;case 27:n.trigger("click")}});b.find("A").unbind("mouseup");b.find("LI:not(.disabled) A").mouseup(function(){n.unbind("click").unbind("keypress");
|
||
|
$(".contextMenu").hide();c&&c($(this).attr("href").substr(1),$(l),{x:u-p.left,y:z-p.top,docX:u,docY:z});return false});setTimeout(function(){n.click(function(){n.unbind("click").unbind("keypress");b.fadeOut(f.outSpeed);return false})},0)}})});if($.browser.mozilla)$("#"+f.menu).each(function(){$(this).css({MozUserSelect:"none"})});else $.browser.msie?$("#"+f.menu).each(function(){$(this).bind("selectstart.disableTextSelect",function(){return false})}):$("#"+f.menu).each(function(){$(this).bind("mousedown.disableTextSelect",
|
||
|
function(){return false})});$(m).add($("UL.contextMenu")).bind("contextmenu",function(){return false})});return $(this)},disableContextMenuItems:function(f){if(f==undefined){$(this).find("LI").addClass("disabled");return $(this)}$(this).each(function(){if(f!=undefined)for(var c=f.split(","),m=0;m<c.length;m++)$(this).find('A[href="'+c[m]+'"]').parent().addClass("disabled")});return $(this)},enableContextMenuItems:function(f){if(f==undefined){$(this).find("LI.disabled").removeClass("disabled");return $(this)}$(this).each(function(){if(f!=
|
||
|
undefined)for(var c=f.split(","),m=0;m<c.length;m++)$(this).find('A[href="'+c[m]+'"]').parent().removeClass("disabled")});return $(this)},disableContextMenu:function(){$(this).each(function(){$(this).addClass("disabled")});return $(this)},enableContextMenu:function(){$(this).each(function(){$(this).removeClass("disabled")});return $(this)},destroyContextMenu:function(){$(this).each(function(){$(this).unbind("mousedown").unbind("mouseup")});return $(this)}})}(jQuery);var svgedit=svgedit||{};
|
||
|
(function(){if(!svgedit.browser)svgedit.browser={};var a=!!document.createElementNS&&!!document.createElementNS("http://www.w3.org/2000/svg","svg").createSVGRect;svgedit.browser.supportsSvg=function(){return a};if(svgedit.browser.supportsSvg()){var n=navigator.userAgent,f=document.createElementNS("http://www.w3.org/2000/svg","svg"),c=!!window.opera,m=n.indexOf("AppleWebKit")>=0,p=n.indexOf("Gecko/")>=0,b=n.indexOf("MSIE")>=0,d=n.indexOf("Chrome/")>=0,e=n.indexOf("Windows")>=0,l=n.indexOf("Macintosh")>=
|
||
|
0,u="ontouchstart"in window,z=!!f.querySelector,o=!!document.evaluate,L=function(){var sa=document.createElementNS("http://www.w3.org/2000/svg","path");sa.setAttribute("d","M0,0 10,10");var ja=sa.pathSegList;sa=sa.createSVGPathSegLinetoAbs(5,5);try{ja.replaceItem(sa,0);return true}catch(ca){}return false}(),T=function(){var sa=document.createElementNS("http://www.w3.org/2000/svg","path");sa.setAttribute("d","M0,0 10,10");var ja=sa.pathSegList;sa=sa.createSVGPathSegLinetoAbs(5,5);try{ja.insertItemBefore(sa,
|
||
|
0);return true}catch(ca){}return false}(),N=function(){var sa=document.createElementNS("http://www.w3.org/2000/svg","svg"),ja=document.createElementNS("http://www.w3.org/2000/svg","svg");document.documentElement.appendChild(sa);ja.setAttribute("x",5);sa.appendChild(ja);var ca=document.createElementNS("http://www.w3.org/2000/svg","text");ca.textContent="a";ja.appendChild(ca);ja=ca.getStartPositionOfChar(0).x;document.documentElement.removeChild(sa);return ja===0}(),J=function(){var sa=document.createElementNS("http://www.w3.org/2000/svg",
|
||
|
"svg");document.documentElement.appendChild(sa);var ja=document.createElementNS("http://www.w3.org/2000/svg","path");ja.setAttribute("d","M0,0 C0,0 10,10 10,0");sa.appendChild(ja);ja=ja.getBBox();document.documentElement.removeChild(sa);return ja.height>4&&ja.height<5}(),da=function(){var sa=document.createElementNS("http://www.w3.org/2000/svg","svg");document.documentElement.appendChild(sa);var ja=document.createElementNS("http://www.w3.org/2000/svg","path");ja.setAttribute("d","M0,0 10,0");var ca=
|
||
|
document.createElementNS("http://www.w3.org/2000/svg","path");ca.setAttribute("d","M5,0 15,0");var ea=document.createElementNS("http://www.w3.org/2000/svg","g");ea.appendChild(ja);ea.appendChild(ca);sa.appendChild(ea);ja=ea.getBBox();document.documentElement.removeChild(sa);return ja.width==15}(),V=function(){var sa=document.createElementNS("http://www.w3.org/2000/svg","rect");sa.setAttribute("x",0.1);(sa=sa.cloneNode(false).getAttribute("x").indexOf(",")==-1)||$.alert("NOTE: This version of Opera is known to contain bugs in SVG-edit.\n\t\tPlease upgrade to the <a href='http://opera.com'>latest version</a> in which the problems have been fixed.");
|
||
|
return sa}(),O=function(){var sa=document.createElementNS("http://www.w3.org/2000/svg","rect");sa.setAttribute("style","vector-effect:non-scaling-stroke");return sa.style.vectorEffect==="non-scaling-stroke"}(),fa=function(){var sa=document.createElementNS("http://www.w3.org/2000/svg","rect").transform.baseVal,ja=f.createSVGTransform();sa.appendItem(ja);return sa.getItem(0)==ja}();svgedit.browser.isOpera=function(){return c};svgedit.browser.isWebkit=function(){return m};svgedit.browser.isGecko=function(){return p};
|
||
|
svgedit.browser.isIE=function(){return b};svgedit.browser.isChrome=function(){return d};svgedit.browser.isWindows=function(){return e};svgedit.browser.isMac=function(){return l};svgedit.browser.isTouch=function(){return u};svgedit.browser.supportsSelectors=function(){return z};svgedit.browser.supportsXpath=function(){return o};svgedit.browser.supportsPathReplaceItem=function(){return L};svgedit.browser.supportsPathInsertItemBefore=function(){return T};svgedit.browser.supportsPathBBox=function(){return J};
|
||
|
svgedit.browser.supportsHVLineContainerBBox=function(){return da};svgedit.browser.supportsGoodTextCharPos=function(){return N};svgedit.browser.supportsEditableText=function(){return c};svgedit.browser.supportsGoodDecimals=function(){return V};svgedit.browser.supportsNonScalingStroke=function(){return O};svgedit.browser.supportsNativeTransformLists=function(){return fa}}else window.location="browser-not-supported.html"})();svgedit=svgedit||{};
|
||
|
(function(){if(!svgedit.transformlist)svgedit.transformlist={};var a=document.createElementNS("http://www.w3.org/2000/svg","svg"),n={};svgedit.transformlist.SVGTransformList=function(f){this._elem=f||null;this._xforms=[];this._update=function(){var c="";a.createSVGMatrix();for(var m=0;m<this.numberOfItems;++m){var p=this._list.getItem(m);c=c;p=p;var b=p.matrix,d="";switch(p.type){case 1:d="matrix("+[b.a,b.b,b.c,b.d,b.e,b.f].join(",")+")";break;case 2:d="translate("+b.e+","+b.f+")";break;case 3:d=
|
||
|
b.a==b.d?"scale("+b.a+")":"scale("+b.a+","+b.d+")";break;case 4:var e=0;d=0;if(p.angle!=0){e=1-b.a;d=(e*b.f+b.b*b.e)/(e*e+b.b*b.b);e=(b.e-b.b*d)/e}d="rotate("+p.angle+" "+e+","+d+")"}c=c+(d+" ")}this._elem.setAttribute("transform",c)};this._list=this;this._init=function(){var c=this._elem.getAttribute("transform");if(c)for(var m=/\s*((scale|matrix|rotate|translate)\s*\(.*?\))\s*,?\s*/,p=true;p;){p=c.match(m);c=c.replace(m,"");if(p&&p[1]){var b=p[1].split(/\s*\(/),d=b[0];b=b[1].match(/\s*(.*?)\s*\)/);
|
||
|
b[1]=b[1].replace(/(\d)-/g,"$1 -");var e=b[1].split(/[, ]+/),l="abcdef".split(""),u=a.createSVGMatrix();$.each(e,function(L,T){e[L]=parseFloat(T);if(d=="matrix")u[l[L]]=e[L]});b=a.createSVGTransform();var z="set"+d.charAt(0).toUpperCase()+d.slice(1),o=d=="matrix"?[u]:e;if(d=="scale"&&o.length==1)o.push(o[0]);else if(d=="translate"&&o.length==1)o.push(0);else if(d=="rotate"&&o.length==1){o.push(0);o.push(0)}b[z].apply(b,o);this._list.appendItem(b)}}};this._removeFromOtherLists=function(c){if(c){var m=
|
||
|
false,p;for(p in n){for(var b=n[p],d=0,e=b._xforms.length;d<e;++d)if(b._xforms[d]==c){m=true;b.removeItem(d);break}if(m)break}}};this.numberOfItems=0;this.clear=function(){this.numberOfItems=0;this._xforms=[]};this.initialize=function(c){this.numberOfItems=1;this._removeFromOtherLists(c);this._xforms=[c]};this.getItem=function(c){if(c<this.numberOfItems&&c>=0)return this._xforms[c];throw{code:1};};this.insertItemBefore=function(c,m){var p=null;if(m>=0)if(m<this.numberOfItems){this._removeFromOtherLists(c);
|
||
|
p=Array(this.numberOfItems+1);for(var b=0;b<m;++b)p[b]=this._xforms[b];p[b]=c;for(var d=b+1;b<this.numberOfItems;++d,++b)p[d]=this._xforms[b];this.numberOfItems++;this._xforms=p;p=c;this._list._update()}else p=this._list.appendItem(c);return p};this.replaceItem=function(c,m){var p=null;if(m<this.numberOfItems&&m>=0){this._removeFromOtherLists(c);p=this._xforms[m]=c;this._list._update()}return p};this.removeItem=function(c){if(c<this.numberOfItems&&c>=0){for(var m=this._xforms[c],p=Array(this.numberOfItems-
|
||
|
1),b=0;b<c;++b)p[b]=this._xforms[b];for(c=b;c<this.numberOfItems-1;++c,++b)p[c]=this._xforms[b+1];this.numberOfItems--;this._xforms=p;this._list._update();return m}else throw{code:1};};this.appendItem=function(c){this._removeFromOtherLists(c);this._xforms.push(c);this.numberOfItems++;this._list._update();return c}};svgedit.transformlist.resetListMap=function(){n={}};svgedit.transformlist.removeElementFromListMap=function(f){f.id&&n[f.id]&&delete n[f.id]};svgedit.transformlist.getTransformList=function(f){if(svgedit.browser.supportsNativeTransformLists())if(f.transform)return f.transform.baseVal;
|
||
|
else if(f.gradientTransform)return f.gradientTransform.baseVal;else{if(f.patternTransform)return f.patternTransform.baseVal}else{var c=f.id;c||(c="temp");var m=n[c];if(!m||c=="temp"){n[c]=new svgedit.transformlist.SVGTransformList(f);n[c]._init();m=n[c]}return m}return null}})();svgedit=svgedit||{};
|
||
|
(function(){if(!svgedit.math)svgedit.math={};var a=document.createElementNS("http://www.w3.org/2000/svg","svg");svgedit.math.transformPoint=function(n,f,c){return{x:c.a*n+c.c*f+c.e,y:c.b*n+c.d*f+c.f}};svgedit.math.isIdentity=function(n){return n.a===1&&n.b===0&&n.c===0&&n.d===1&&n.e===0&&n.f===0};svgedit.math.matrixMultiply=function(){for(var n=arguments,f=n.length,c=n[f-1];f-- >1;)c=n[f-1].multiply(c);if(Math.abs(c.a)<1.0E-14)c.a=0;if(Math.abs(c.b)<1.0E-14)c.b=0;if(Math.abs(c.c)<1.0E-14)c.c=0;if(Math.abs(c.d)<
|
||
|
1.0E-14)c.d=0;if(Math.abs(c.e)<1.0E-14)c.e=0;if(Math.abs(c.f)<1.0E-14)c.f=0;return c};svgedit.math.hasMatrixTransform=function(n){if(!n)return false;for(var f=n.numberOfItems;f--;){var c=n.getItem(f);if(c.type==1&&!svgedit.math.isIdentity(c.matrix))return true}return false};svgedit.math.transformBox=function(n,f,c,m,p){var b={x:n,y:f},d={x:n+c,y:f};c={x:n+c,y:f+m};n={x:n,y:f+m};f=svgedit.math.transformPoint;b=f(b.x,b.y,p);var e=m=b.x,l=b.y,u=b.y;d=f(d.x,d.y,p);m=Math.min(m,d.x);e=Math.max(e,d.x);
|
||
|
l=Math.min(l,d.y);u=Math.max(u,d.y);n=f(n.x,n.y,p);m=Math.min(m,n.x);e=Math.max(e,n.x);l=Math.min(l,n.y);u=Math.max(u,n.y);c=f(c.x,c.y,p);m=Math.min(m,c.x);e=Math.max(e,c.x);l=Math.min(l,c.y);u=Math.max(u,c.y);return{tl:b,tr:d,bl:n,br:c,aabox:{x:m,y:l,width:e-m,height:u-l}}};svgedit.math.transformListToTransform=function(n,f,c){if(n==null)return a.createSVGTransformFromMatrix(a.createSVGMatrix());f=f==undefined?0:f;c=c==undefined?n.numberOfItems-1:c;f=parseInt(f);c=parseInt(c);if(f>c){var m=c;c=f;
|
||
|
f=m}m=a.createSVGMatrix();for(f=f;f<=c;++f){var p=f>=0&&f<n.numberOfItems?n.getItem(f).matrix:a.createSVGMatrix();m=svgedit.math.matrixMultiply(m,p)}return a.createSVGTransformFromMatrix(m)};svgedit.math.getMatrix=function(n){n=svgedit.transformlist.getTransformList(n);return svgedit.math.transformListToTransform(n).matrix};svgedit.math.snapToAngle=function(n,f,c,m){var p=Math.PI/4;c=c-n;var b=m-f;m=Math.sqrt(c*c+b*b);p=Math.round(Math.atan2(b,c)/p)*p;return{x:n+m*Math.cos(p),y:f+m*Math.sin(p),a:p}};
|
||
|
svgedit.math.rectsIntersect=function(n,f){return f.x<n.x+n.width&&f.x+f.width>n.x&&f.y<n.y+n.height&&f.y+f.height>n.y}})();svgedit=svgedit||{};
|
||
|
(function(){if(!svgedit.units)svgedit.units={};var a=["x","x1","cx","rx","width"],n=["y","y1","cy","ry","height"],f=$.merge(["r","radius"],a);$.merge(f,n);var c,m={px:1};svgedit.units.init=function(b){c=b;b=document.createElementNS("http://www.w3.org/2000/svg","svg");document.body.appendChild(b);var d=document.createElementNS("http://www.w3.org/2000/svg","rect");d.setAttribute("width","1em");d.setAttribute("height","1ex");d.setAttribute("x","1in");b.appendChild(d);d=d.getBBox();document.body.removeChild(b);
|
||
|
b=d.x;m.em=d.width;m.ex=d.height;m["in"]=b;m.cm=b/2.54;m.mm=b/25.4;m.pt=b/72;m.pc=b/6;m["%"]=0};svgedit.units.getTypeMap=function(){return m};svgedit.units.shortFloat=function(b){var d=c.getRoundDigits();if(isNaN(b)){if($.isArray(b))return svgedit.units.shortFloat(b[0])+","+svgedit.units.shortFloat(b[1])}else return+(+b).toFixed(d);return parseFloat(b).toFixed(d)-0};svgedit.units.convertUnit=function(b,d){d=d||c.getBaseUnit();return svgedit.unit.shortFloat(b/m[d])};svgedit.units.setUnitAttr=function(b,
|
||
|
d,e){isNaN(e)||b.getAttribute(d);b.setAttribute(d,e)};var p={line:["x1","x2","y1","y2"],circle:["cx","cy","r"],ellipse:["cx","cy","rx","ry"],foreignObject:["x","y","width","height"],rect:["x","y","width","height"],image:["x","y","width","height"],use:["x","y","width","height"],text:["x","y"]};svgedit.units.convertAttrs=function(b){var d=b.tagName,e=c.getBaseUnit();if(d=p[d])for(var l=d.length,u=0;u<l;u++){var z=d[u],o=b.getAttribute(z);if(o)isNaN(o)||b.setAttribute(z,o/m[e]+e)}};svgedit.units.convertToNum=
|
||
|
function(b,d){if(!isNaN(d))return d-0;if(d.substr(-1)==="%"){var e=d.substr(0,d.length-1)/100,l=c.getWidth(),u=c.getHeight();return a.indexOf(b)>=0?e*l:n.indexOf(b)>=0?e*u:e*Math.sqrt(l*l+u*u)/Math.sqrt(2)}else{l=d.substr(-2);e=d.substr(0,d.length-2);return e*m[l]}};svgedit.units.isValidUnit=function(b,d,e){var l=false;if(f.indexOf(b)>=0)if(isNaN(d)){d=d.toLowerCase();$.each(m,function(o){if(!l)if(RegExp("^-?[\\d\\.]+"+o+"$").test(d))l=true})}else l=true;else if(b=="id"){b=false;try{var u=c.getElement(d);
|
||
|
b=u==null||u===e}catch(z){}return b}else l=true;return l}})();svgedit=svgedit||{};
|
||
|
(function(){function a(b){if(svgedit.browser.supportsHVLineContainerBBox())try{return b.getBBox()}catch(d){}var e=$.data(b,"ref"),l=null;if(e){var u=$(e).children().clone().attr("visibility","hidden");$(p).append(u);l=u.filter("line, path")}else l=$(b).find("line, path");var z=false;if(l.length){l.each(function(){var o=this.getBBox();if(!o.width||!o.height)z=true});if(z){b=e?u:$(b).children();ret=getStrokedBBox(b)}else ret=b.getBBox()}else ret=b.getBBox();e&&u.remove();return ret}if(!svgedit.utilities)svgedit.utilities=
|
||
|
{};var n="a,circle,ellipse,foreignObject,g,image,line,path,polygon,polyline,rect,svg,text,tspan,use".split(","),f=null,c=null,m=null,p=null;svgedit.utilities.init=function(b){f=b;c=b.getDOMDocument();m=b.getDOMContainer();p=b.getSVGRoot()};svgedit.utilities.toXml=function(b){return $("<p/>").text(b).html()};svgedit.utilities.fromXml=function(b){return $("<p/>").html(b).text()};svgedit.utilities.encode64=function(b){b=svgedit.utilities.convertToXMLReferences(b);if(window.btoa)return window.btoa(b);
|
||
|
var d=Array(Math.floor((b.length+2)/3)*4),e,l,u,z,o,L,T=0,N=0;do{e=b.charCodeAt(T++);l=b.charCodeAt(T++);u=b.charCodeAt(T++);z=e>>2;e=(e&3)<<4|l>>4;o=(l&15)<<2|u>>6;L=u&63;if(isNaN(l))o=L=64;else if(isNaN(u))L=64;d[N++]="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(z);d[N++]="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(e);d[N++]="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(o);d[N++]="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(L)}while(T<
|
||
|
b.length);return d.join("")};svgedit.utilities.decode64=function(b){if(window.atob)return window.atob(b);var d="",e,l,u="",z,o="",L=0;b=b.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(b.charAt(L++));l="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(b.charAt(L++));z="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(b.charAt(L++));o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(b.charAt(L++));
|
||
|
e=e<<2|l>>4;l=(l&15)<<4|z>>2;u=(z&3)<<6|o;d+=String.fromCharCode(e);if(z!=64)d+=String.fromCharCode(l);if(o!=64)d+=String.fromCharCode(u)}while(L<b.length);return unescape(d)};svgedit.utilities.convertToXMLReferences=function(b){for(var d="",e=0;e<b.length;e++){var l=b.charCodeAt(e);if(l<128)d+=b[e];else if(l>127)d+="&#"+l+";"}return d};svgedit.utilities.text2xml=function(b){if(b.indexOf("<svg:svg")>=0)b=b.replace(/<(\/?)svg:/g,"<$1").replace("xmlns:svg","xmlns");var d;try{var e=window.DOMParser?
|
||
|
new DOMParser:new ActiveXObject("Microsoft.XMLDOM");e.async=false}catch(l){throw Error("XML Parser could not be instantiated");}try{d=e.loadXML?e.loadXML(b)?e:false:e.parseFromString(b,"text/xml")}catch(u){throw Error("Error parsing XML string");}return d};svgedit.utilities.bboxToObj=function(b){return{x:b.x,y:b.y,width:b.width,height:b.height}};svgedit.utilities.walkTree=function(b,d){if(b&&b.nodeType==1){d(b);for(var e=b.childNodes.length;e--;)svgedit.utilities.walkTree(b.childNodes.item(e),d)}};
|
||
|
svgedit.utilities.walkTreePost=function(b,d){if(b&&b.nodeType==1){for(var e=b.childNodes.length;e--;)svgedit.utilities.walkTree(b.childNodes.item(e),d);d(b)}};svgedit.utilities.getUrlFromAttr=function(b){if(b)if(b.indexOf('url("')===0)return b.substring(5,b.indexOf('"',6));else if(b.indexOf("url('")===0)return b.substring(5,b.indexOf("'",6));else if(b.indexOf("url(")===0)return b.substring(4,b.indexOf(")"));return null};svgedit.utilities.getHref=function(b){return b.getAttributeNS("http://www.w3.org/1999/xlink",
|
||
|
"href")};svgedit.utilities.setHref=function(b,d){b.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",d)};svgedit.utilities.findDefs=function(b){b=f.getSVGContent().documentElement;var d=b.getElementsByTagNameNS("http://www.w3.org/2000/svg","defs");return d=d.length>0?d[0]:b.insertBefore(b.ownerDocument.createElementNS("http://www.w3.org/2000/svg","defs"),b.firstChild.nextSibling)};svgedit.utilities.getPathBBox=function(b){var d=b.pathSegList,e=d.numberOfItems;b=[[],[]];var l=d.getItem(0),
|
||
|
u=[l.x,l.y];for(l=0;l<e;l++){var z=d.getItem(l);if(typeof z.x!="undefined"){b[0].push(u[0]);b[1].push(u[1]);if(z.x1){for(var o=[z.x1,z.y1],L=[z.x2,z.y2],T=[z.x,z.y],N=0;N<2;N++){z=function(fa){return Math.pow(1-fa,3)*u[N]+3*Math.pow(1-fa,2)*fa*o[N]+3*(1-fa)*Math.pow(fa,2)*L[N]+Math.pow(fa,3)*T[N]};var J=6*u[N]-12*o[N]+6*L[N],da=-3*u[N]+9*o[N]-9*L[N]+3*T[N],V=3*o[N]-3*u[N];if(da==0){if(J!=0){J=-V/J;0<J&&J<1&&b[N].push(z(J))}}else{V=Math.pow(J,2)-4*V*da;if(!(V<0)){var O=(-J+Math.sqrt(V))/(2*da);0<O&&
|
||
|
O<1&&b[N].push(z(O));J=(-J-Math.sqrt(V))/(2*da);0<J&&J<1&&b[N].push(z(J))}}}u=T}else{b[0].push(z.x);b[1].push(z.y)}}}d=Math.min.apply(null,b[0]);e=Math.max.apply(null,b[0])-d;l=Math.min.apply(null,b[1]);b=Math.max.apply(null,b[1])-l;return{x:d,y:l,width:e,height:b}};svgedit.utilities.getBBox=function(b){var d=b||f.geSelectedElements()[0];if(b.nodeType!=1)return null;b=null;var e=d.nodeName;switch(e){case "text":if(d.textContent===""){d.textContent="a";b=d.getBBox();d.textContent=""}else try{b=d.getBBox()}catch(l){}break;
|
||
|
case "path":if(svgedit.browser.supportsPathBBox())try{b=d.getBBox()}catch(u){}else b=svgedit.utilities.getPathBBox(d);break;case "g":case "a":b=a(d);break;default:if(e==="use")b=a(d,true);if(e==="use"){b||(b=d.getBBox());if(!svgedit.browser.isWebkit()){e={};e.width=b.width;e.height=b.height;e.x=b.x+parseFloat(d.getAttribute("x")||0);e.y=b.y+parseFloat(d.getAttribute("y")||0);b=e}}else if(~n.indexOf(e))try{b=d.getBBox()}catch(z){d=$(d).closest("foreignObject");if(d.length)try{b=d[0].getBBox()}catch(o){b=
|
||
|
null}else b=null}}if(b)b=svgedit.utilities.bboxToObj(b);return b};svgedit.utilities.getRotationAngle=function(b,d){var e=b||f.getSelectedElements()[0];e=svgedit.transformlist.getTransformList(e);if(!e)return 0;for(var l=e.numberOfItems,u=0;u<l;++u){var z=e.getItem(u);if(z.type==4)return d?z.angle*Math.PI/180:z.angle}return 0};svgedit.utilities.getElem=svgedit.browser.supportsSelectors()?function(b){return p.querySelector("#"+b)}:svgedit.browser.supportsXpath()?function(b){return c.evaluate('svg:svg[@id="svgroot"]//svg:*[@id="'+
|
||
|
b+'"]',m,function(){return"http://www.w3.org/2000/svg"},9,null).singleNodeValue}:function(b){return $(p).find("[id="+b+"]")[0]};svgedit.utilities.assignAttributes=function(b,d,e,l){e||(e=0);svgedit.browser.isOpera()||p.suspendRedraw(e);for(var u in d)if(e=u.substr(0,4)==="xml:"?"http://www.w3.org/XML/1998/namespace":u.substr(0,6)==="xlink:"?"http://www.w3.org/1999/xlink":null)b.setAttributeNS(e,u,d[u]);else l?svgedit.units.setUnitAttr(b,u,d[u]):b.setAttribute(u,d[u]);svgedit.browser.isOpera()||p.unsuspendRedraw(null)};
|
||
|
svgedit.utilities.cleanupElement=function(b){var d=p.suspendRedraw(60),e={"fill-opacity":1,"stop-opacity":1,opacity:1,stroke:"none","stroke-dasharray":"none","stroke-linejoin":"miter","stroke-linecap":"butt","stroke-opacity":1,"stroke-width":1,rx:0,ry:0},l;for(l in e){var u=e[l];b.getAttribute(l)==u&&b.removeAttribute(l)}p.unsuspendRedraw(d)}})();svgedit=svgedit||{};
|
||
|
(function(){if(!svgedit.sanitize)svgedit.sanitize={};var a={};a["http://www.w3.org/1999/xlink"]="xlink";a["http://www.w3.org/XML/1998/namespace"]="xml";a["http://www.w3.org/2000/xmlns/"]="xmlns";a["http://svg-edit.googlecode.com"]="se";a["http://www.w3.org/1999/xhtml"]="xhtml";a["http://www.w3.org/1998/Math/MathML"]="mathml";var n={};$.each(a,function(m,p){n[p]=m});var f={a:["class","clip-path","clip-rule","fill","fill-opacity","fill-rule","filter","id","mask","opacity","stroke","stroke-dasharray",
|
||
|
"stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","style","systemLanguage","transform","xlink:href","xlink:title"],circle:["class","clip-path","clip-rule","cx","cy","fill","fill-opacity","fill-rule","filter","id","mask","opacity","r","requiredFeatures","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","style","systemLanguage","transform"],clipPath:["class",
|
||
|
"clipPathUnits","id"],defs:[],style:["type"],desc:[],ellipse:["class","clip-path","clip-rule","cx","cy","fill","fill-opacity","fill-rule","filter","id","mask","opacity","requiredFeatures","rx","ry","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","style","systemLanguage","transform"],feGaussianBlur:["class","color-interpolation-filters","id","requiredFeatures","stdDeviation"],filter:["class","color-interpolation-filters",
|
||
|
"filterRes","filterUnits","height","id","primitiveUnits","requiredFeatures","width","x","xlink:href","y"],foreignObject:["class","font-size","height","id","opacity","requiredFeatures","style","transform","width","x","y"],g:["class","clip-path","clip-rule","id","display","fill","fill-opacity","fill-rule","filter","mask","opacity","requiredFeatures","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","style","systemLanguage",
|
||
|
"transform","font-family","font-size","font-style","font-weight","text-anchor"],image:["class","clip-path","clip-rule","filter","height","id","mask","opacity","requiredFeatures","style","systemLanguage","transform","width","x","xlink:href","xlink:title","y"],line:["class","clip-path","clip-rule","fill","fill-opacity","fill-rule","filter","id","marker-end","marker-mid","marker-start","mask","opacity","requiredFeatures","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin",
|
||
|
"stroke-miterlimit","stroke-opacity","stroke-width","style","systemLanguage","transform","x1","x2","y1","y2"],linearGradient:["class","id","gradientTransform","gradientUnits","requiredFeatures","spreadMethod","systemLanguage","x1","x2","xlink:href","y1","y2"],marker:["id","class","markerHeight","markerUnits","markerWidth","orient","preserveAspectRatio","refX","refY","systemLanguage","viewBox"],mask:["class","height","id","maskContentUnits","maskUnits","width","x","y"],metadata:["class","id"],path:["class",
|
||
|
"clip-path","clip-rule","d","fill","fill-opacity","fill-rule","filter","id","marker-end","marker-mid","marker-start","mask","opacity","requiredFeatures","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","style","systemLanguage","transform"],pattern:["class","height","id","patternContentUnits","patternTransform","patternUnits","requiredFeatures","style","systemLanguage","viewBox","width","x","xlink:href","y"],polygon:["class",
|
||
|
"clip-path","clip-rule","id","fill","fill-opacity","fill-rule","filter","id","class","marker-end","marker-mid","marker-start","mask","opacity","points","requiredFeatures","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","style","systemLanguage","transform"],polyline:["class","clip-path","clip-rule","id","fill","fill-opacity","fill-rule","filter","marker-end","marker-mid","marker-start","mask","opacity","points",
|
||
|
"requiredFeatures","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","style","systemLanguage","transform"],radialGradient:["class","cx","cy","fx","fy","gradientTransform","gradientUnits","id","r","requiredFeatures","spreadMethod","systemLanguage","xlink:href"],rect:["class","clip-path","clip-rule","fill","fill-opacity","fill-rule","filter","height","id","mask","opacity","requiredFeatures","rx","ry","stroke","stroke-dasharray",
|
||
|
"stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","style","systemLanguage","transform","width","x","y"],stop:["class","id","offset","requiredFeatures","stop-color","stop-opacity","style","systemLanguage"],svg:["class","clip-path","clip-rule","filter","id","height","mask","preserveAspectRatio","requiredFeatures","style","systemLanguage","viewBox","width","x","xmlns","xmlns:se","xmlns:xlink","y"],"switch":["class","id","requiredFeatures","systemLanguage"],
|
||
|
symbol:["class","fill","fill-opacity","fill-rule","filter","font-family","font-size","font-style","font-weight","id","opacity","preserveAspectRatio","requiredFeatures","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","style","systemLanguage","transform","viewBox"],text:["class","clip-path","clip-rule","fill","fill-opacity","fill-rule","filter","font-family","font-size","font-style","font-weight","id","mask","opacity",
|
||
|
"requiredFeatures","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","style","systemLanguage","text-anchor","transform","x","xml:space","y"],textPath:["class","id","method","requiredFeatures","spacing","startOffset","style","systemLanguage","transform","xlink:href"],title:[],tspan:["class","clip-path","clip-rule","dx","dy","fill","fill-opacity","fill-rule","filter","font-family","font-size","font-style","font-weight",
|
||
|
"id","mask","opacity","requiredFeatures","rotate","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","style","systemLanguage","text-anchor","textLength","transform","x","xml:space","y"],use:["class","clip-path","clip-rule","fill","fill-opacity","fill-rule","filter","height","id","mask","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width",
|
||
|
"style","transform","width","x","xlink:href","y"],annotation:["encoding"],"annotation-xml":["encoding"],maction:["actiontype","other","selection"],math:["class","id","display","xmlns"],menclose:["notation"],merror:[],mfrac:["linethickness"],mi:["mathvariant"],mmultiscripts:[],mn:[],mo:["fence","lspace","maxsize","minsize","rspace","stretchy"],mover:[],mpadded:["lspace","width","height","depth","voffset"],mphantom:[],mprescripts:[],mroot:[],mrow:["xlink:href","xlink:type","xmlns:xlink"],mspace:["depth",
|
||
|
"height","width"],msqrt:[],mstyle:["displaystyle","mathbackground","mathcolor","mathvariant","scriptlevel"],msub:[],msubsup:[],msup:[],mtable:["align","columnalign","columnlines","columnspacing","displaystyle","equalcolumns","equalrows","frame","rowalign","rowlines","rowspacing","width"],mtd:["columnalign","columnspan","rowalign","rowspan"],mtext:[],mtr:["columnalign","rowalign"],munder:[],munderover:[],none:[],semantics:[]},c={};$.each(f,function(m,p){var b={};$.each(p,function(d,e){if(e.indexOf(":")>=
|
||
|
0){var l=e.split(":");b[l[1]]=n[l[0]]}else b[e]=e=="xmlns"?"http://www.w3.org/2000/xmlns/":null});c[m]=b});svgedit.sanitize.getNSMap=function(){return a};svgedit.sanitize.sanitizeSvg=function(m){if(m.nodeType==3){m.nodeValue=m.nodeValue.replace(/^\s+|\s+$/g,"");m.nodeValue.length||m.parentNode.removeChild(m)}if(m.nodeType==1){var p=m.parentNode;if(m.ownerDocument&&p){var b=f[m.nodeName],d=c[m.nodeName];if(b!=undefined){for(var e=[],l=m.attributes.length;l--;){var u=m.attributes.item(l),z=u.nodeName,
|
||
|
o=u.localName,L=u.namespaceURI;if(!(d.hasOwnProperty(o)&&L==d[o]&&L!="http://www.w3.org/2000/xmlns/")&&!(L=="http://www.w3.org/2000/xmlns/"&&a[u.nodeValue])){z.indexOf("se:")==0&&e.push([z,u.nodeValue]);m.removeAttributeNS(L,o)}if(svgedit.browser.isGecko())switch(z){case "transform":case "gradientTransform":case "patternTransform":o=u.nodeValue.replace(/(\d)-/g,"$1 -");m.setAttribute(z,o)}if(z=="style"){u=u.nodeValue.split(";");for(z=u.length;z--;){o=u[z].split(":");b.indexOf(o[0])>=0&&m.setAttribute(o[0],
|
||
|
o[1])}m.removeAttribute("style")}}$.each(e,function(T,N){m.setAttributeNS("http://svg-edit.googlecode.com",N[0],N[1])});if((l=svgedit.utilities.getHref(m))&&["filter","linearGradient","pattern","radialGradient","textPath","use"].indexOf(m.nodeName)>=0)if(l[0]!="#"){svgedit.utilities.setHref(m,"");m.removeAttributeNS("http://www.w3.org/1999/xlink","href")}if(m.nodeName=="use"&&!svgedit.utilities.getHref(m))p.removeChild(m);else{$.each(["clip-path","fill","filter","marker-end","marker-mid","marker-start",
|
||
|
"mask","stroke"],function(T,N){var J=m.getAttribute(N);if(J)if((J=svgedit.utilities.getUrlFromAttr(J))&&J[0]!=="#"){m.setAttribute(N,"");m.removeAttribute(N)}});for(l=m.childNodes.length;l--;)svgedit.sanitize.sanitizeSvg(m.childNodes.item(l))}}else{for(b=[];m.hasChildNodes();)b.push(p.insertBefore(m.firstChild,m));p.removeChild(m);for(l=b.length;l--;)svgedit.sanitize.sanitizeSvg(b[l])}}}}})();svgedit=svgedit||{};
|
||
|
(function(){if(!svgedit.history)svgedit.history={};svgedit.history.HistoryEventTypes={BEFORE_APPLY:"before_apply",AFTER_APPLY:"after_apply",BEFORE_UNAPPLY:"before_unapply",AFTER_UNAPPLY:"after_unapply"};svgedit.history.MoveElementCommand=function(a,n,f,c){this.elem=a;this.text=c?"Move "+a.tagName+" to "+c:"Move "+a.tagName;this.oldNextSibling=n;this.oldParent=f;this.newNextSibling=a.nextSibling;this.newParent=a.parentNode};svgedit.history.MoveElementCommand.type=function(){return"svgedit.history.MoveElementCommand"};svgedit.history.MoveElementCommand.prototype.type=
|
||
|
svgedit.history.MoveElementCommand.type;svgedit.history.MoveElementCommand.prototype.getText=function(){return this.text};svgedit.history.MoveElementCommand.prototype.apply=function(a){a&&a.handleHistoryEvent(svgedit.history.HistoryEventTypes.BEFORE_APPLY,this);this.elem=this.newParent.insertBefore(this.elem,this.newNextSibling);a&&a.handleHistoryEvent(svgedit.history.HistoryEventTypes.AFTER_APPLY,this)};svgedit.history.MoveElementCommand.prototype.unapply=function(a){a&&a.handleHistoryEvent(svgedit.history.HistoryEventTypes.BEFORE_UNAPPLY,
|
||
|
this);this.elem=this.oldParent.insertBefore(this.elem,this.oldNextSibling);a&&a.handleHistoryEvent(svgedit.history.HistoryEventTypes.AFTER_UNAPPLY,this)};svgedit.history.MoveElementCommand.prototype.elements=function(){return[this.elem]};svgedit.history.InsertElementCommand=function(a,n){this.elem=a;this.text=n||"Create "+a.tagName;this.parent=a.parentNode;this.nextSibling=this.elem.nextSibling};svgedit.history.InsertElementCommand.type=function(){return"svgedit.history.InsertElementCommand"};svgedit.history.InsertElementCommand.prototype.type=
|
||
|
svgedit.history.InsertElementCommand.type;svgedit.history.InsertElementCommand.prototype.getText=function(){return this.text};svgedit.history.InsertElementCommand.prototype.apply=function(a){a&&a.handleHistoryEvent(svgedit.history.HistoryEventTypes.BEFORE_APPLY,this);this.elem=this.parent.insertBefore(this.elem,this.nextSibling);a&&a.handleHistoryEvent(svgedit.history.HistoryEventTypes.AFTER_APPLY,this)};svgedit.history.InsertElementCommand.prototype.unapply=function(a){a&&a.handleHistoryEvent(svgedit.history.HistoryEventTypes.BEFORE_UNAPPLY,
|
||
|
this);this.parent=this.elem.parentNode;this.elem=this.elem.parentNode.removeChild(this.elem);a&&a.handleHistoryEvent(svgedit.history.HistoryEventTypes.AFTER_UNAPPLY,this)};svgedit.history.InsertElementCommand.prototype.elements=function(){return[this.elem]};svgedit.history.RemoveElementCommand=function(a,n,f,c){this.elem=a;this.text=c||"Delete "+a.tagName;this.nextSibling=n;this.parent=f;svgedit.transformlist.removeElementFromListMap(a)};svgedit.history.RemoveElementCommand.type=function(){return"svgedit.history.RemoveElementCommand"};
|
||
|
svgedit.history.RemoveElementCommand.prototype.type=svgedit.history.RemoveElementCommand.type;svgedit.history.RemoveElementCommand.prototype.getText=function(){return this.text};svgedit.history.RemoveElementCommand.prototype.apply=function(a){a&&a.handleHistoryEvent(svgedit.history.HistoryEventTypes.BEFORE_APPLY,this);svgedit.transformlist.removeElementFromListMap(this.elem);this.parent=this.elem.parentNode;this.elem=this.parent.removeChild(this.elem);a&&a.handleHistoryEvent(svgedit.history.HistoryEventTypes.AFTER_APPLY,
|
||
|
this)};svgedit.history.RemoveElementCommand.prototype.unapply=function(a){a&&a.handleHistoryEvent(svgedit.history.HistoryEventTypes.BEFORE_UNAPPLY,this);svgedit.transformlist.removeElementFromListMap(this.elem);this.nextSibling==null&&window.console&&console.log("Error: reference element was lost");this.parent.insertBefore(this.elem,this.nextSibling);a&&a.handleHistoryEvent(svgedit.history.HistoryEventTypes.AFTER_UNAPPLY,this)};svgedit.history.RemoveElementCommand.prototype.elements=function(){return[this.elem]};
|
||
|
svgedit.history.ChangeElementCommand=function(a,n,f){this.elem=a;this.text=f?"Change "+a.tagName+" "+f:"Change "+a.tagName;this.newValues={};this.oldValues=n;for(var c in n)this.newValues[c]=c=="#text"?a.textContent:c=="#href"?svgedit.utilities.getHref(a):a.getAttribute(c)};svgedit.history.ChangeElementCommand.type=function(){return"svgedit.history.ChangeElementCommand"};svgedit.history.ChangeElementCommand.prototype.type=svgedit.history.ChangeElementCommand.type;svgedit.history.ChangeElementCommand.prototype.getText=
|
||
|
function(){return this.text};svgedit.history.ChangeElementCommand.prototype.apply=function(a){a&&a.handleHistoryEvent(svgedit.history.HistoryEventTypes.BEFORE_APPLY,this);var n=false,f;for(f in this.newValues){if(this.newValues[f])if(f=="#text")this.elem.textContent=this.newValues[f];else f=="#href"?svgedit.utilities.setHref(this.elem,this.newValues[f]):this.elem.setAttribute(f,this.newValues[f]);else if(f=="#text")this.elem.textContent="";else{this.elem.setAttribute(f,"");this.elem.removeAttribute(f)}if(f==
|
||
|
"transform")n=true}if(!n)if(n=svgedit.utilities.getRotationAngle(this.elem)){f=elem.getBBox();n=["rotate(",n," ",f.x+f.width/2,",",f.y+f.height/2,")"].join("");n!=elem.getAttribute("transform")&&elem.setAttribute("transform",n)}a&&a.handleHistoryEvent(svgedit.history.HistoryEventTypes.AFTER_APPLY,this);return true};svgedit.history.ChangeElementCommand.prototype.unapply=function(a){a&&a.handleHistoryEvent(svgedit.history.HistoryEventTypes.BEFORE_UNAPPLY,this);var n=false,f;for(f in this.oldValues){if(this.oldValues[f])if(f==
|
||
|
"#text")this.elem.textContent=this.oldValues[f];else f=="#href"?svgedit.utilities.setHref(this.elem,this.oldValues[f]):this.elem.setAttribute(f,this.oldValues[f]);else if(f=="#text")this.elem.textContent="";else this.elem.removeAttribute(f);if(f=="transform")n=true}if(!n)if(n=svgedit.utilities.getRotationAngle(this.elem)){f=elem.getBBox();n=["rotate(",n," ",f.x+f.width/2,",",f.y+f.height/2,")"].join("");n!=elem.getAttribute("transform")&&elem.setAttribute("transform",n)}svgedit.transformlist.removeElementFromListMap(this.elem);
|
||
|
a&&a.handleHistoryEvent(svgedit.history.HistoryEventTypes.AFTER_UNAPPLY,this);return true};svgedit.history.ChangeElementCommand.prototype.elements=function(){return[this.elem]};svgedit.history.BatchCommand=function(a){this.text=a||"Batch Command";this.stack=[]};svgedit.history.BatchCommand.type=function(){return"svgedit.history.BatchCommand"};svgedit.history.BatchCommand.prototype.type=svgedit.history.BatchCommand.type;svgedit.history.BatchCommand.prototype.getText=function(){return this.text};svgedit.history.BatchCommand.prototype.apply=
|
||
|
function(a){a&&a.handleHistoryEvent(svgedit.history.HistoryEventTypes.BEFORE_APPLY,this);for(var n=this.stack.length,f=0;f<n;++f)this.stack[f].apply(a);a&&a.handleHistoryEvent(svgedit.history.HistoryEventTypes.AFTER_APPLY,this)};svgedit.history.BatchCommand.prototype.unapply=function(a){a&&a.handleHistoryEvent(svgedit.history.HistoryEventTypes.BEFORE_UNAPPLY,this);for(var n=this.stack.length-1;n>=0;n--)this.stack[n].unapply(a);a&&a.handleHistoryEvent(svgedit.history.HistoryEventTypes.AFTER_UNAPPLY,
|
||
|
this)};svgedit.history.BatchCommand.prototype.elements=function(){for(var a=[],n=this.stack.length;n--;)for(var f=this.stack[n].elements(),c=f.length;c--;)a.indexOf(f[c])==-1&&a.push(f[c]);return a};svgedit.history.BatchCommand.prototype.addSubCommand=function(a){this.stack.push(a)};svgedit.history.BatchCommand.prototype.isEmpty=function(){return this.stack.length==0};svgedit.history.UndoManager=function(a){this.handler_=a||null;this.undoStackPointer=0;this.undoStack=[];this.undoChangeStackPointer=
|
||
|
-1;this.undoableChangeStack=[]};svgedit.history.UndoManager.prototype.resetUndoStack=function(){this.undoStack=[];this.undoStackPointer=0};svgedit.history.UndoManager.prototype.getUndoStackSize=function(){return this.undoStackPointer};svgedit.history.UndoManager.prototype.getRedoStackSize=function(){return this.undoStack.length-this.undoStackPointer};svgedit.history.UndoManager.prototype.getNextUndoCommandText=function(){return this.undoStackPointer>0?this.undoStack[this.undoStackPointer-1].getText():
|
||
|
""};svgedit.history.UndoManager.prototype.getNextRedoCommandText=function(){return this.undoStackPointer<this.undoStack.length?this.undoStack[this.undoStackPointer].getText():""};svgedit.history.UndoManager.prototype.undo=function(){this.undoStackPointer>0&&this.undoStack[--this.undoStackPointer].unapply(this.handler_)};svgedit.history.UndoManager.prototype.redo=function(){this.undoStackPointer<this.undoStack.length&&this.undoStack.length>0&&this.undoStack[this.undoStackPointer++].apply(this.handler_)};
|
||
|
svgedit.history.UndoManager.prototype.addCommandToHistory=function(a){if(this.undoStackPointer<this.undoStack.length&&this.undoStack.length>0)this.undoStack=this.undoStack.splice(0,this.undoStackPointer);this.undoStack.push(a);this.undoStackPointer=this.undoStack.length};svgedit.history.UndoManager.prototype.beginUndoableChange=function(a,n){for(var f=++this.undoChangeStackPointer,c=n.length,m=Array(c),p=Array(c);c--;){var b=n[c];if(b!=null){p[c]=b;m[c]=b.getAttribute(a)}}this.undoableChangeStack[f]=
|
||
|
{attrName:a,oldValues:m,elements:p}};svgedit.history.UndoManager.prototype.finishUndoableChange=function(){for(var a=this.undoChangeStackPointer--,n=this.undoableChangeStack[a],f=n.elements.length,c=n.attrName,m=new svgedit.history.BatchCommand("Change "+c);f--;){var p=n.elements[f];if(p!=null){var b={};b[c]=n.oldValues[f];b[c]!=p.getAttribute(c)&&m.addSubCommand(new svgedit.history.ChangeElementCommand(p,b,c))}}this.undoableChangeStack[a]=null;return m}})();svgedit=svgedit||{};
|
||
|
(function(){if(!svgedit.select)svgedit.select={};var a,n,f;svgedit.select.Selector=function(c,m){this.id=c;this.selectedElement=m;this.locked=true;this.selectorGroup=a.createSVGElement({element:"g",attr:{id:"selectorGroup"+this.id}});this.selectorRect=this.selectorGroup.appendChild(a.createSVGElement({element:"path",attr:{id:"selectedBox"+this.id,fill:"none",stroke:"#4F80FF","stroke-width":"1",style:"pointer-events:none"}}));this.gripCoords={nw:null,n:null,ne:null,e:null,se:null,s:null,sw:null,w:null};
|
||
|
this.reset(this.selectedElement)};svgedit.select.Selector.prototype.reset=function(c){this.locked=true;this.selectedElement=c;this.resize();this.selectorGroup.setAttribute("display","inline")};svgedit.select.Selector.prototype.updateGripCursors=function(c){var m=[];c=Math.round(c/45);if(c<0)c+=8;for(var p in f.selectorGrips)m.push(p);for(;c>0;){m.push(m.shift());c--}c=0;for(p in f.selectorGrips){f.selectorGrips[p].setAttribute("style","cursor:"+m[c]+"-resize");c++}};svgedit.select.Selector.prototype.showGrips=
|
||
|
function(c){f.selectorGripsGroup.setAttribute("display",c?"inline":"none");var m=this.selectedElement;this.hasGrips=c;if(m&&c){this.selectorGroup.appendChild(f.selectorGripsGroup);this.updateGripCursors(svgedit.utilities.getRotationAngle(m))}};svgedit.select.Selector.prototype.resize=function(){var c=this.selectorRect,m=f,p=m.selectorGrips,b=this.selectedElement,d=b.getAttribute("stroke-width"),e=a.currentZoom(),l=1/e;if(b.getAttribute("stroke")!=="none"&&!isNaN(d))l+=d/2;var u=b.tagName;if(u==="text")l+=
|
||
|
2/e;d=svgedit.transformlist.getTransformList(b);d=svgedit.math.transformListToTransform(d).matrix;d.e*=e;d.f*=e;var z=svgedit.utilities.getBBox(b);if(u==="g"&&!$.data(b,"gsvg"))if(u=a.getStrokedBBox(b.childNodes))z=u;u=z.x;var o=z.y,L=z.width;z=z.height;l*=e;e=svgedit.math.transformBox(u*e,o*e,L*e,z*e,d);d=e.aabox;u=d.x-l;o=d.y-l;L=d.width+l*2;var T=d.height+l*2;d=u+L/2;z=o+T/2;if(b=svgedit.utilities.getRotationAngle(b)){u=a.svgRoot().createSVGTransform();u.setRotate(-b,d,z);u=u.matrix;e.tl=svgedit.math.transformPoint(e.tl.x,
|
||
|
e.tl.y,u);e.tr=svgedit.math.transformPoint(e.tr.x,e.tr.y,u);e.bl=svgedit.math.transformPoint(e.bl.x,e.bl.y,u);e.br=svgedit.math.transformPoint(e.br.x,e.br.y,u);u=e.tl;L=u.x;T=u.y;var N=u.x,J=u.y;u=Math.min;o=Math.max;L=u(L,u(e.tr.x,u(e.bl.x,e.br.x)))-l;T=u(T,u(e.tr.y,u(e.bl.y,e.br.y)))-l;N=o(N,o(e.tr.x,o(e.bl.x,e.br.x)))+l;J=o(J,o(e.tr.y,o(e.bl.y,e.br.y)))+l;u=L;o=T;L=N-L;T=J-T}l=a.svgRoot().suspendRedraw(100);c.setAttribute("d","M"+u+","+o+" L"+(u+L)+","+o+" "+(u+L)+","+(o+T)+" "+u+","+(o+T)+"z");
|
||
|
this.selectorGroup.setAttribute("transform",b?"rotate("+[b,d,z].join(",")+")":"");u-=3.5;o-=3.5;this.gripCoords={nw:[u,o],ne:[u+L,o],sw:[u,o+T],se:[u+L,o+T],n:[u+L/2,o],w:[u,o+T/2],e:[u+L,o+T/2],s:[u+L/2,o+T]};for(var da in this.gripCoords){c=this.gripCoords[da];p[da].setAttribute("x",c[0]);p[da].setAttribute("y",c[1])}this.rotateCoords={nw:[u,o],ne:[u+L+8,o],sw:[u,o+T+8],se:[u+L+8,o+T+8]};for(da in this.rotateCoords){c=this.rotateCoords[da];m.rotateGrips[da].setAttribute("cx",c[0]);m.rotateGrips[da].setAttribute("cy",
|
||
|
c[1])}a.svgRoot().unsuspendRedraw(l)};svgedit.select.SelectorManager=function(){this.rubberBandBox=this.selectorParentGroup=null;this.selectors=[];this.selectorMap={};this.selectorGrips={nw:null,n:null,ne:null,e:null,se:null,s:null,sw:null,w:null};this.selectorGripsGroup=null;this.rotateGrips={nw:null,ne:null,se:null,sw:null};this.initGroup()};svgedit.select.SelectorManager.prototype.initGroup=function(){this.selectorParentGroup&&this.selectorParentGroup.parentNode&&this.selectorParentGroup.parentNode.removeChild(this.selectorParentGroup);
|
||
|
this.selectorParentGroup=a.createSVGElement({element:"g",attr:{id:"selectorParentGroup"}});this.selectorGripsGroup=a.createSVGElement({element:"g",attr:{display:"none"}});this.selectorParentGroup.appendChild(this.selectorGripsGroup);a.svgRoot().appendChild(this.selectorParentGroup);this.selectorMap={};this.selectors=[];this.rubberBandBox=null;for(var c in this.rotateGrips){var m=a.createSVGElement({element:"circle",attr:{id:"selectorGrip_rotate_"+c,fill:"transparent",r:8,stroke:"transparent","stroke-width":0,
|
||
|
style:"cursor:url("+n.imgPath+"rotate.png) 12 12, auto;"}});$.data(m,"dir",c);$.data(m,"type","rotate");this.rotateGrips[c]=this.selectorGripsGroup.appendChild(m)}for(c in this.selectorGrips){m=a.createSVGElement({element:"rect",attr:{id:"selectorGrip_resize_"+c,width:7,height:7,fill:"#4F80FF",stroke:"transparent","stroke-width":2,style:"cursor:"+c+"-resize","pointer-events":"all"}});$.data(m,"dir",c);$.data(m,"type","resize");this.selectorGrips[c]=this.selectorGripsGroup.appendChild(m)}if(!$("#canvasBackground").length){c=
|
||
|
n.dimensions;c=a.createSVGElement({element:"svg",attr:{id:"canvasBackground",width:c[0],height:c[1],x:0,y:0,overflow:svgedit.browser.isWebkit()?"none":"visible",style:"pointer-events:none"}});m=a.createSVGElement({element:"rect",attr:{width:"100%",height:"100%",x:0,y:0,"stroke-width":1,stroke:"#000",fill:"#FFF",style:"pointer-events:none"}});c.appendChild(m);a.svgRoot().insertBefore(c,a.svgContent())}};svgedit.select.SelectorManager.prototype.requestSelector=function(c){if(c==null)return null;var m=
|
||
|
this.selectors.length;if(typeof this.selectorMap[c.id]=="object"){this.selectorMap[c.id].locked=true;return this.selectorMap[c.id]}for(var p=0;p<m;++p)if(this.selectors[p]&&!this.selectors[p].locked){this.selectors[p].locked=true;this.selectors[p].reset(c);this.selectorMap[c.id]=this.selectors[p];return this.selectors[p]}this.selectors[m]=new svgedit.select.Selector(m,c);this.selectorParentGroup.appendChild(this.selectors[m].selectorGroup);this.selectorMap[c.id]=this.selectors[m];return this.selectors[m]};
|
||
|
svgedit.select.SelectorManager.prototype.releaseSelector=function(c){if(c!=null)for(var m=this.selectors.length,p=this.selectorMap[c.id],b=0;b<m;++b)if(this.selectors[b]&&this.selectors[b]==p){p.locked==false&&console.log("WARNING! selector was released but was already unlocked");delete this.selectorMap[c.id];p.locked=false;p.selectedElement=null;p.showGrips(false);try{p.selectorGroup.setAttribute("display","none")}catch(d){}break}};svgedit.select.SelectorManager.prototype.getRubberBandBox=function(){if(!this.rubberBandBox)this.rubberBandBox=
|
||
|
this.selectorParentGroup.appendChild(a.createSVGElement({element:"rect",attr:{id:"selectorRubberBand",fill:"transparent",stroke:"#666","stroke-width":1,"stroke-dasharray":"3,2",display:"none",style:"pointer-events:none"}}));return this.rubberBandBox};svgedit.select.init=function(c,m){n=c;a=m;f=new svgedit.select.SelectorManager};svgedit.select.getSelectorManager=function(){return f}})();svgedit=svgedit||{};
|
||
|
(function(){if(!svgedit.draw)svgedit.draw={};var a="a,circle,ellipse,foreignObject,g,image,line,path,polygon,polyline,rect,svg,text,tspan,use".split(","),n={LET_DOCUMENT_DECIDE:0,ALWAYS_RANDOMIZE:1,NEVER_RANDOMIZE:2},f=n.LET_DOCUMENT_DECIDE;svgedit.draw.Layer=function(c,m){this.name_=c;this.group_=m};svgedit.draw.Layer.prototype.getName=function(){return this.name_};svgedit.draw.Layer.prototype.getGroup=function(){return this.group_};svgedit.draw.randomizeIds=function(c,m){f=c==false?n.NEVER_RANDOMIZE:
|
||
|
n.ALWAYS_RANDOMIZE;if(f==n.ALWAYS_RANDOMIZE&&!m.getNonce())m.setNonce(Math.floor(Math.random()*100001));else f==n.NEVER_RANDOMIZE&&m.getNonce()&&m.clearNonce()};svgedit.draw.Drawing=function(c,m){if(!c||!c.tagName||!c.namespaceURI||c.tagName!="svg"||c.namespaceURI!="http://www.w3.org/2000/svg")throw"Error: svgedit.draw.Drawing instance initialized without a <svg> element";this.svgElem_=c;this.obj_num=0;this.idPrefix=m||"svg_";this.releasedNums=[];this.all_layers=[];this.current_layer=null;this.nonce_=
|
||
|
"";var p=this.svgElem_.getAttributeNS("http://svg-edit.googlecode.com","nonce");if(p&&f!=n.NEVER_RANDOMIZE)this.nonce_=p;else f==n.ALWAYS_RANDOMIZE&&this.setNonce(Math.floor(Math.random()*100001))};svgedit.draw.Drawing.prototype.getElem_=function(c){return this.svgElem_.querySelector?this.svgElem_.querySelector("#"+c):$(this.svgElem_).find("[id="+c+"]")[0]};svgedit.draw.Drawing.prototype.getSvgElem=function(){return this.svgElem_};svgedit.draw.Drawing.prototype.getNonce=function(){return this.nonce_};
|
||
|
svgedit.draw.Drawing.prototype.setNonce=function(c){this.svgElem_.setAttributeNS("http://www.w3.org/2000/xmlns/","xmlns:se","http://svg-edit.googlecode.com");this.svgElem_.setAttributeNS("http://svg-edit.googlecode.com","se:nonce",c);this.nonce_=c};svgedit.draw.Drawing.prototype.clearNonce=function(){this.nonce_=""};svgedit.draw.Drawing.prototype.getId=function(){return this.nonce_?this.idPrefix+this.nonce_+"_"+this.obj_num:this.idPrefix+this.obj_num};svgedit.draw.Drawing.prototype.getNextId=function(){var c=
|
||
|
this.obj_num,m=false;if(this.releasedNums.length>0){this.obj_num=this.releasedNums.pop();m=true}else this.obj_num++;for(var p=this.getId();this.getElem_(p);){if(m){this.obj_num=c;m=false}this.obj_num++;p=this.getId()}if(m)this.obj_num=c;return p};svgedit.draw.Drawing.prototype.releaseId=function(c){var m=this.idPrefix+(this.nonce_?this.nonce_+"_":"");if(typeof c!="string"||c.indexOf(m)!=0)return false;c=parseInt(c.substr(m.length));if(typeof c!="number"||c<=0||this.releasedNums.indexOf(c)!=-1)return false;
|
||
|
this.releasedNums.push(c);return true};svgedit.draw.Drawing.prototype.getNumLayers=function(){return this.all_layers.length};svgedit.draw.Drawing.prototype.hasLayer=function(c){for(var m=0;m<this.getNumLayers();m++)if(this.all_layers[m][0]==c)return true;return false};svgedit.draw.Drawing.prototype.getLayerName=function(c){if(c>=0&&c<this.getNumLayers())return this.all_layers[c][0];return""};svgedit.draw.Drawing.prototype.getCurrentLayer=function(){return this.current_layer};svgedit.draw.Drawing.prototype.getCurrentLayerName=
|
||
|
function(){for(var c=0;c<this.getNumLayers();++c)if(this.all_layers[c][1]==this.current_layer)return this.getLayerName(c);return""};svgedit.draw.Drawing.prototype.setCurrentLayer=function(c){for(var m=0;m<this.getNumLayers();++m)if(c==this.getLayerName(m)){if(this.current_layer!=this.all_layers[m][1]){this.current_layer.setAttribute("style","pointer-events:none");this.current_layer=this.all_layers[m][1];this.current_layer.setAttribute("style","pointer-events:all")}return true}return false};svgedit.draw.Drawing.prototype.deleteCurrentLayer=
|
||
|
function(){if(this.current_layer&&this.getNumLayers()>1){var c=this.current_layer.parentNode.removeChild(this.current_layer);this.identifyLayers();return c}return null};svgedit.draw.Drawing.prototype.identifyLayers=function(){this.all_layers=[];for(var c=this.svgElem_.childNodes.length,m=[],p=[],b=null,d=false,e=0;e<c;++e){var l=this.svgElem_.childNodes.item(e);if(l&&l.nodeType==1)if(l.tagName=="g"){d=true;var u=$("title",l).text();if(!u&&svgedit.browser.isOpera()&&l.querySelectorAll)u=$(l.querySelectorAll("title")).text();
|
||
|
if(u){p.push(u);this.all_layers.push([u,l]);b=l;svgedit.utilities.walkTree(l,function(z){z.setAttribute("style","pointer-events:inherit")});b.setAttribute("style","pointer-events:none")}else m.push(l)}else if(~a.indexOf(l.nodeName)){svgedit.utilities.getBBox(l);m.push(l)}}c=this.svgElem_.ownerDocument;if(m.length>0||!d){for(e=1;p.indexOf("Layer "+e)>=0;)e++;p="Layer "+e;b=c.createElementNS("http://www.w3.org/2000/svg","g");d=c.createElementNS("http://www.w3.org/2000/svg","title");d.textContent=p;
|
||
|
b.appendChild(d);for(d=0;d<m.length;++d)b.appendChild(m[d]);this.svgElem_.appendChild(b);this.all_layers.push([p,b])}svgedit.utilities.walkTree(b,function(z){z.setAttribute("style","pointer-events:inherit")});this.current_layer=b;this.current_layer.setAttribute("style","pointer-events:all")};svgedit.draw.Drawing.prototype.createLayer=function(c){var m=this.svgElem_.ownerDocument,p=m.createElementNS("http://www.w3.org/2000/svg","g");m=m.createElementNS("http://www.w3.org/2000/svg","title");m.textContent=
|
||
|
c;p.appendChild(m);this.svgElem_.appendChild(p);this.identifyLayers();return p};svgedit.draw.Drawing.prototype.getLayerVisibility=function(c){for(var m=null,p=0;p<this.getNumLayers();++p)if(this.getLayerName(p)==c){m=this.all_layers[p][1];break}if(!m)return false;return m.getAttribute("display")!="none"};svgedit.draw.Drawing.prototype.setLayerVisibility=function(c,m){if(typeof m!="boolean")return null;for(var p=null,b=0;b<this.getNumLayers();++b)if(this.getLayerName(b)==c){p=this.all_layers[b][1];
|
||
|
break}if(!p)return null;p.getAttribute("display");p.setAttribute("display",m?"inline":"none");return p};svgedit.draw.Drawing.prototype.getLayerOpacity=function(c){for(var m=0;m<this.getNumLayers();++m)if(this.getLayerName(m)==c){(c=this.all_layers[m][1].getAttribute("opacity"))||(c="1.0");return parseFloat(c)}return null};svgedit.draw.Drawing.prototype.setLayerOpacity=function(c,m){if(!(typeof m!="number"||m<0||m>1))for(var p=0;p<this.getNumLayers();++p)if(this.getLayerName(p)==c){this.all_layers[p][1].setAttribute("opacity",
|
||
|
m);break}}})();svgedit=svgedit||{};
|
||
|
(function(){if(!svgedit.path)svgedit.path={};var a={pathNodeTooltip:"Drag node to move it. Double-click node to change segment type",pathCtrlPtTooltip:"Drag control point to adjust curve properties"},n={2:["x","y"],4:["x","y"],6:["x","y","x1","y1","x2","y2"],8:["x","y","x1","y1"],10:["x","y","r1","r2","angle","largeArcFlag","sweepFlag"],12:["x"],14:["y"],16:["x","y","x2","y2"],18:["x","y"]},f=[],c=true,m={};svgedit.path.setLinkControlPoints=function(d){c=d};var p=svgedit.path.path=null;svgedit.path.init=
|
||
|
function(d){p=d;f=[0,"ClosePath"];$.each(["Moveto","Lineto","CurvetoCubic","CurvetoQuadratic","Arc","LinetoHorizontal","LinetoVertical","CurvetoCubicSmooth","CurvetoQuadraticSmooth"],function(e,l){f.push(l+"Abs");f.push(l+"Rel")})};svgedit.path.insertItemBefore=function(d,e,l){d=d.pathSegList;if(svgedit.browser.supportsPathInsertItemBefore())d.insertItemBefore(e,l);else{for(var u=d.numberOfItems,z=[],o=0;o<u;o++){var L=d.getItem(o);z.push(L)}d.clear();for(o=0;o<u;o++){o==l&&d.appendItem(e);d.appendItem(z[o])}}};
|
||
|
svgedit.path.ptObjToArr=function(d,e){for(var l=n[d],u=l.length,z=Array(u),o=0;o<u;o++)z[o]=e[l[o]];return z};svgedit.path.getGripPt=function(d,e){var l={x:e?e.x:d.item.x,y:e?e.y:d.item.y},u=d.path;if(u.matrix)l=svgedit.math.transformPoint(l.x,l.y,u.matrix);l.x*=p.getCurrentZoom();l.y*=p.getCurrentZoom();return l};svgedit.path.getPointFromGrip=function(d,e){var l={x:d.x,y:d.y};if(e.matrix){d=svgedit.math.transformPoint(l.x,l.y,e.imatrix);l.x=d.x;l.y=d.y}l.x/=p.getCurrentZoom();l.y/=p.getCurrentZoom();
|
||
|
return l};svgedit.path.addPointGrip=function(d,e,l){var u=svgedit.path.getGripContainer(),z=svgedit.utilities.getElem("pathpointgrip_"+d);if(!z){z=document.createElementNS("http://www.w3.org/2000/svg","rect");svgedit.utilities.assignAttributes(z,{id:"pathpointgrip_"+d,display:"none",width:5,height:5,fill:"#fff",stroke:"#4F80FF","stroke-width":1,cursor:"move",style:"pointer-events:all","xlink:title":a.pathNodeTooltip});z=u.appendChild(z);$("#pathpointgrip_"+d).dblclick(function(){svgedit.path.path&&
|
||
|
svgedit.path.path.setSegType()})}e&&l&&svgedit.utilities.assignAttributes(z,{x:e-2.5,y:l-2.5,display:"inline"});return z};svgedit.path.getGripContainer=function(){var d=svgedit.utilities.getElem("pathpointgrip_container");if(!d){d=svgedit.utilities.getElem("selectorParentGroup").appendChild(document.createElementNS("http://www.w3.org/2000/svg","g"));d.id="pathpointgrip_container"}return d};svgedit.path.addCtrlGrip=function(d){var e=svgedit.utilities.getElem("ctrlpointgrip_"+d);if(e)return e;e=document.createElementNS("http://www.w3.org/2000/svg",
|
||
|
"circle");svgedit.utilities.assignAttributes(e,{id:"ctrlpointgrip_"+d,display:"none",r:3,fill:"#4F80FF",cursor:"move",style:"pointer-events:all","xlink:title":a.pathCtrlPtTooltip});svgedit.path.getGripContainer().appendChild(e);return e};svgedit.path.getCtrlLine=function(d){var e=svgedit.utilities.getElem("ctrlLine_"+d);if(e)return e;e=document.createElementNS("http://www.w3.org/2000/svg","line");svgedit.utilities.assignAttributes(e,{id:"ctrlLine_"+d,stroke:"#4F80FF","stroke-width":1,style:"pointer-events:none"});
|
||
|
svgedit.path.getGripContainer().appendChild(e);return e};svgedit.path.getPointGrip=function(d,e){var l=svgedit.path.addPointGrip(d.index);if(e){var u=svgedit.path.getGripPt(d);svgedit.utilities.assignAttributes(l,{x:u.x-2.5,y:u.y-2.5,display:"inline"})}return l};svgedit.path.getControlPoints=function(d){var e=d.item,l=d.index;if(!("x1"in e)||!("x2"in e))return null;var u={};svgedit.path.getGripContainer();for(var z=[svgedit.path.path.segs[l-1].item,e],o=1;o<3;o++){var L=l+"c"+o,T=u["c"+o+"_line"]=
|
||
|
svgedit.path.getCtrlLine(L),N=svgedit.path.getGripPt(d,{x:e["x"+o],y:e["y"+o]}),J=svgedit.path.getGripPt(d,{x:z[o-1].x,y:z[o-1].y});svgedit.utilities.assignAttributes(T,{x1:N.x,y1:N.y,x2:J.x,y2:J.y,display:"inline"});u["c"+o+"_line"]=T;pointGrip=u["c"+o]=svgedit.path.addCtrlGrip(L);svgedit.utilities.assignAttributes(pointGrip,{cx:N.x,cy:N.y,display:"inline"});u["c"+o]=pointGrip}return u};svgedit.path.replacePathSeg=function(d,e,l,u){u=u||svgedit.path.path.elem;d=u["createSVGPathSeg"+f[d]].apply(u,
|
||
|
l);if(svgedit.browser.supportsPathReplaceItem())u.pathSegList.replaceItem(d,e);else{l=u.pathSegList;u=l.numberOfItems;for(var z=[],o=0;o<u;o++){var L=l.getItem(o);z.push(L)}l.clear();for(o=0;o<u;o++)o==e?l.appendItem(d):l.appendItem(z[o])}};svgedit.path.getSegSelector=function(d,e){var l=d.index,u=svgedit.utilities.getElem("segline_"+l);if(!u){var z=svgedit.path.getGripContainer();u=document.createElementNS("http://www.w3.org/2000/svg","path");svgedit.utilities.assignAttributes(u,{id:"segline_"+l,
|
||
|
display:"none",fill:"none",stroke:"#0FF","stroke-width":2,style:"pointer-events:none",d:"M0,0 0,0"});z.appendChild(u)}if(e){l=d.prev;if(!l){u.setAttribute("display","none");return u}l=svgedit.path.getGripPt(l);svgedit.path.replacePathSeg(2,0,[l.x,l.y],u);z=svgedit.path.ptObjToArr(d.type,d.item,true);for(var o=0;o<z.length;o+=2){l=svgedit.path.getGripPt(d,{x:z[o],y:z[o+1]});z[o]=l.x;z[o+1]=l.y}svgedit.path.replacePathSeg(d.type,1,z,u)}return u};svgedit.path.smoothControlPoints=this.smoothControlPoints=
|
||
|
function(d,e,l){var u=d.x-l.x,z=d.y-l.y,o=e.x-l.x,L=e.y-l.y;if((u!=0||z!=0)&&(o!=0||L!=0)){d=Math.atan2(z,u);e=Math.atan2(L,o);u=Math.sqrt(u*u+z*z);o=Math.sqrt(o*o+L*L);z=p.getSVGRoot().createSVGPoint();L=p.getSVGRoot().createSVGPoint();if(d<0)d+=2*Math.PI;if(e<0)e+=2*Math.PI;var T=Math.abs(d-e),N=Math.abs(Math.PI-T)/2;if(d-e>0){d=T<Math.PI?d+N:d-N;e=T<Math.PI?e-N:e+N}else{d=T<Math.PI?d-N:d+N;e=T<Math.PI?e+N:e-N}z.x=u*Math.cos(d)+l.x;z.y=u*Math.sin(d)+l.y;L.x=o*Math.cos(e)+l.x;L.y=o*Math.sin(e)+l.y;
|
||
|
return[z,L]}};svgedit.path.Segment=function(d,e){this.selected=false;this.index=d;this.item=e;this.type=e.pathSegType;this.ctrlpts=[];this.segsel=this.ptgrip=null};svgedit.path.Segment.prototype.showCtrlPts=function(d){for(var e in this.ctrlpts)this.ctrlpts[e].setAttribute("display",d?"inline":"none")};svgedit.path.Segment.prototype.selectCtrls=function(){$("#ctrlpointgrip_"+this.index+"c1, #ctrlpointgrip_"+this.index+"c2").attr("fill","#4F80FF")};svgedit.path.Segment.prototype.show=function(d){if(this.ptgrip){this.ptgrip.setAttribute("display",
|
||
|
d?"inline":"none");this.segsel.setAttribute("display",d?"inline":"none");this.showCtrlPts(d)}};svgedit.path.Segment.prototype.select=function(d){if(this.ptgrip){this.ptgrip.setAttribute("stroke",d?"#0FF":"#00F");this.segsel.setAttribute("display",d?"inline":"none");this.ctrlpts&&this.selectCtrls(d);this.selected=d}};svgedit.path.Segment.prototype.addGrip=function(){this.ptgrip=svgedit.path.getPointGrip(this,true);this.ctrlpts=svgedit.path.getControlPoints(this,true);this.segsel=svgedit.path.getSegSelector(this,
|
||
|
true)};svgedit.path.Segment.prototype.update=function(d){if(this.ptgrip){var e=svgedit.path.getGripPt(this);svgedit.utilities.assignAttributes(this.ptgrip,this.ptgrip.nodeName=="rect"?{x:e.x-2.5,y:e.y-2.5}:{cx:e.x,cy:e.y});svgedit.path.getSegSelector(this,true);if(this.ctrlpts){if(d){this.item=svgedit.path.path.elem.pathSegList.getItem(this.index);this.type=this.item.pathSegType}svgedit.path.getControlPoints(this)}}};svgedit.path.Segment.prototype.move=function(d,e){var l=this.item;l=this.ctrlpts?
|
||
|
[l.x+=d,l.y+=e,l.x1,l.y1,l.x2+=d,l.y2+=e]:[l.x+=d,l.y+=e];svgedit.path.replacePathSeg(this.type,this.index,l);if(this.next&&this.next.ctrlpts){l=this.next.item;l=[l.x,l.y,l.x1+=d,l.y1+=e,l.x2,l.y2];svgedit.path.replacePathSeg(this.next.type,this.next.index,l)}if(this.mate){l=this.mate.item;l=[l.x+=d,l.y+=e];svgedit.path.replacePathSeg(this.mate.type,this.mate.index,l)}this.update(true);this.next&&this.next.update(true)};svgedit.path.Segment.prototype.setLinked=function(d){var e,l,u;if(d==2){l=1;e=
|
||
|
this.next;if(!e)return;u=this.item}else{l=2;e=this.prev;if(!e)return;u=e.item}var z=e.item;z["x"+l]=u.x+(u.x-this.item["x"+d]);z["y"+l]=u.y+(u.y-this.item["y"+d]);svgedit.path.replacePathSeg(e.type,e.index,[z.x,z.y,z.x1,z.y1,z.x2,z.y2]);e.update(true)};svgedit.path.Segment.prototype.moveCtrl=function(d,e,l){var u=this.item;u["x"+d]+=e;u["y"+d]+=l;svgedit.path.replacePathSeg(this.type,this.index,[u.x,u.y,u.x1,u.y1,u.x2,u.y2]);this.update(true)};svgedit.path.Segment.prototype.setType=function(d,e){svgedit.path.replacePathSeg(d,
|
||
|
this.index,e);this.type=d;this.item=svgedit.path.path.elem.pathSegList.getItem(this.index);this.showCtrlPts(d===6);this.ctrlpts=svgedit.path.getControlPoints(this);this.update(true)};svgedit.path.Path=function(d){if(!d||d.tagName!=="path")throw"svgedit.path.Path constructed without a <path> element";this.elem=d;this.segs=[];this.selected_pts=[];svgedit.path.path=this;this.init()};svgedit.path.Path.prototype.init=function(){$(svgedit.path.getGripContainer()).find("*").attr("display","none");var d=
|
||
|
this.elem.pathSegList,e=d.numberOfItems;this.segs=[];this.selected_pts=[];this.first_seg=null;for(var l=0;l<e;l++){var u=d.getItem(l);u=new svgedit.path.Segment(l,u);u.path=this;this.segs.push(u)}d=this.segs;u=null;for(l=0;l<e;l++){var z=d[l],o=l+1>=e?null:d[l+1],L=l-1<0?null:d[l-1];if(z.type===2){if(L&&L.type!==1){o=d[u];o.next=d[u+1];o.next.prev=o;o.addGrip()}u=l}else if(o&&o.type===1){z.next=d[u+1];z.next.prev=z;z.mate=d[u];z.addGrip();if(this.first_seg==null)this.first_seg=z}else if(o){if(z.type!==
|
||
|
1){z.addGrip();if(o&&o.type!==2){z.next=o;z.next.prev=z}}}else if(z.type!==1){o=d[u];o.next=d[u+1];o.next.prev=o;o.addGrip();z.addGrip();if(!this.first_seg)this.first_seg=d[u]}}return this};svgedit.path.Path.prototype.eachSeg=function(d){for(var e=this.segs.length,l=0;l<e;l++)if(d.call(this.segs[l],l)===false)break};svgedit.path.Path.prototype.addSeg=function(d){var e=this.segs[d];if(e.prev){var l=e.prev,u;switch(e.item.pathSegType){case 4:var z=(e.item.x+l.item.x)/2,o=(e.item.y+l.item.y)/2;u=this.elem.createSVGPathSegLinetoAbs(z,
|
||
|
o);break;case 6:u=(l.item.x+e.item.x1)/2;var L=(e.item.x1+e.item.x2)/2,T=(e.item.x2+e.item.x)/2,N=(u+L)/2;L=(L+T)/2;z=(N+L)/2;var J=(l.item.y+e.item.y1)/2,da=(e.item.y1+e.item.y2)/2;l=(e.item.y2+e.item.y)/2;var V=(J+da)/2;da=(da+l)/2;o=(V+da)/2;u=this.elem.createSVGPathSegCurvetoCubicAbs(z,o,u,J,N,V);svgedit.path.replacePathSeg(e.type,d,[e.item.x,e.item.y,L,da,T,l])}svgedit.path.insertItemBefore(this.elem,u,d)}};svgedit.path.Path.prototype.deleteSeg=function(d){var e=this.segs[d],l=this.elem.pathSegList;
|
||
|
e.show(false);var u=e.next;if(e.mate){var z=[u.item.x,u.item.y];svgedit.path.replacePathSeg(2,u.index,z);svgedit.path.replacePathSeg(4,e.index,z);l.removeItem(e.mate.index)}else{if(!e.prev){z=[u.item.x,u.item.y];svgedit.path.replacePathSeg(2,e.next.index,z)}l.removeItem(d)}};svgedit.path.Path.prototype.subpathIsClosed=function(d){var e=false;svgedit.path.path.eachSeg(function(l){if(l<=d)return true;if(this.type===2)return false;else if(this.type===1){e=true;return false}});return e};svgedit.path.Path.prototype.removePtFromSelection=
|
||
|
function(d){var e=this.selected_pts.indexOf(d);if(e!=-1){this.segs[d].select(false);this.selected_pts.splice(e,1)}};svgedit.path.Path.prototype.clearSelection=function(){this.eachSeg(function(){this.select(false)});this.selected_pts=[]};svgedit.path.Path.prototype.storeD=function(){this.last_d=this.elem.getAttribute("d")};svgedit.path.Path.prototype.show=function(d){this.eachSeg(function(){this.show(d)});d&&this.selectPt(this.first_seg.index);return this};svgedit.path.Path.prototype.movePts=function(d,
|
||
|
e){for(var l=this.selected_pts.length;l--;)this.segs[this.selected_pts[l]].move(d,e)};svgedit.path.Path.prototype.moveCtrl=function(d,e){var l=this.segs[this.selected_pts[0]];l.moveCtrl(this.dragctrl,d,e);c&&l.setLinked(this.dragctrl)};svgedit.path.Path.prototype.setSegType=function(d){this.storeD();for(var e=this.selected_pts.length,l;e--;){var u=this.segs[this.selected_pts[e]],z=u.prev;if(z){if(!d){l="Toggle Path Segment Type";d=u.type==6?4:6}d-=0;var o=u.item.x,L=u.item.y,T=z.item.x;z=z.item.y;
|
||
|
var N;switch(d){case 6:if(u.olditem){T=u.olditem;N=[o,L,T.x1,T.y1,T.x2,T.y2]}else{N=o-T;var J=L-z;N=[o,L,T+N/3,z+J/3,o-N/3,L-J/3]}break;case 4:N=[o,L];u.olditem=u.item}u.setType(d,N)}}svgedit.path.path.endChanges(l)};svgedit.path.Path.prototype.selectPt=function(d,e){this.clearSelection();d==null&&this.eachSeg(function(l){if(this.prev)d=l});this.addPtsToSelection(d);if(e){this.dragctrl=e;c&&this.segs[d].setLinked(e)}};svgedit.path.Path.prototype.update=function(){var d=this.elem;if(svgedit.utilities.getRotationAngle(d)){this.matrix=
|
||
|
svgedit.math.getMatrix(d);this.imatrix=this.matrix.inverse()}else this.imatrix=this.matrix=null;this.eachSeg(function(e){this.item=d.pathSegList.getItem(e);this.update()});return this};svgedit.path.getPath_=function(d){var e=m[d.id];e||(e=m[d.id]=new svgedit.path.Path(d));return e};svgedit.path.removePath_=function(d){d in m&&delete m[d]};var b=function(d,e){dx=d-oldcx;dy=e-oldcy;r=Math.sqrt(dx*dx+dy*dy);theta=Math.atan2(dy,dx)+angle;dx=r*Math.cos(theta)+oldcx;dy=r*Math.sin(theta)+oldcy;dx-=newcx;
|
||
|
dy-=newcy;r=Math.sqrt(dx*dx+dy*dy);theta=Math.atan2(dy,dx)-angle;return{x:(r*Math.cos(theta)+newcx)/1,y:(r*Math.sin(theta)+newcy)/1}};svgedit.path.recalcRotatedPath=function(){var d=svgedit.path.path.elem,e=svgedit.utilities.getRotationAngle(d,true);if(e){var l=svgedit.utilities.getBBox(d),u=svgedit.path.path.oldbbox,z=u.x+u.width/2,o=u.y+u.height/2;u=l.x+l.width/2;l=l.y+l.height/2;u=u-z;var L=l-o;l=Math.sqrt(u*u+L*L);L=Math.atan2(L,u)+e;u=l*Math.cos(L)+z;l=l*Math.sin(L)+o;z=d.pathSegList;for(o=z.numberOfItems;o;){o-=
|
||
|
1;L=z.getItem(o);var T=L.pathSegType;if(T!=1){var N=b(L.x,L.y);N=[N.x,N.y];if(L.x1!=null&&L.x2!=null){c_vals1=b(L.x1,L.y1);c_vals2=b(L.x2,L.y2);N.splice(N.length,0,c_vals1.x,c_vals1.y,c_vals2.x,c_vals2.y)}svgedit.path.replacePathSeg(T,o,N)}}svgedit.utilities.getBBox(d);z=svgroot.createSVGTransform();d=svgedit.transformlist.getTransformList(d);z.setRotate(e*180/Math.PI,u,l);d.replaceItem(z,0)}};svgedit.path.clearData=function(){m={}}})();if(!window.console){window.console={};window.console.log=function(){};window.console.dir=function(){}}if(window.opera){window.console.log=function(a){opera.postError(a)};window.console.dir=function(){}}
|
||
|
(function(){var a=jQuery.fn.attr;jQuery.fn.attr=function(n,f){var c=this.length;if(!c)return a.apply(this,arguments);for(var m=0;m<c;m++){var p=this[m];if(p.namespaceURI==="http://www.w3.org/2000/svg")if(f!==undefined)p.setAttribute(n,f);else if($.isArray(n)){c=n.length;for(m={};c--;){var b=n[c],d=p.getAttribute(b);if(d||d==="0")d=isNaN(d)?d:d-0;m[b]=d}return m}else if(typeof n==="object")for(b in n)p.setAttribute(b,n[b]);else{if((d=p.getAttribute(n))||d==="0")d=isNaN(d)?d:d-0;return d}else return a.apply(this,
|
||
|
arguments)}return this}})();
|
||
|
$.SvgCanvas=function(a,n){function f(g,h){for(var k=svgedit.utilities.getBBox(g),v=0;v<2;v++){var t=v===0?"fill":"stroke",E=g.getAttribute(t);if(E&&E.indexOf("url(")===0){E=X(E);if(E.tagName==="linearGradient"){var w=E.getAttribute("x1")||0,s=E.getAttribute("y1")||0,A=E.getAttribute("x2")||1,F=E.getAttribute("y2")||0;w=k.width*w+k.x;s=k.height*s+k.y;A=k.width*A+k.x;F=k.height*F+k.y;w=O(w,s,h);F=O(A,F,h);A={};A.x1=(w.x-k.x)/k.width;A.y1=(w.y-k.y)/k.height;A.x2=(F.x-k.x)/k.width;A.y2=(F.y-k.y)/k.height;
|
||
|
E=E.cloneNode(true);$(E).attr(A);E.id=M();ub().appendChild(E);g.setAttribute(t,"url(#"+E.id+")")}}}}var c="http://www.w3.org/2000/svg",m={show_outside_canvas:true,selectNew:true,dimensions:[640,480]};n&&$.extend(m,n);var p=m.dimensions,b=this,d=a.ownerDocument,e=d.importNode(svgedit.utilities.text2xml('<svg id="svgroot" xmlns="'+c+'" xlinkns="http://www.w3.org/1999/xlink" width="'+p[0]+'" height="'+p[1]+'" x="'+p[0]+'" y="'+p[1]+'" overflow="visible"><defs><filter id="canvashadow" filterUnits="objectBoundingBox"><feGaussianBlur in="SourceAlpha" stdDeviation="4" result="blur"/><feOffset in="blur" dx="5" dy="5" result="offsetBlur"/><feMerge><feMergeNode in="offsetBlur"/><feMergeNode in="SourceGraphic"/></feMerge></filter></defs></svg>').documentElement,
|
||
|
true);a.appendChild(e);var l=d.createElementNS(c,"svg");(b.clearSvgContentElement=function(){for(;l.firstChild;)l.removeChild(l.firstChild);$(l).attr({id:"svgcontent",width:p[0],height:p[1],x:p[0],y:p[1],overflow:m.show_outside_canvas?"visible":"hidden",xmlns:c,"xmlns:se":"http://svg-edit.googlecode.com","xmlns:xlink":"http://www.w3.org/1999/xlink"}).appendTo(e);var g=d.createComment(" Created with SVG-edit - http://svg-edit.googlecode.com/ ");l.appendChild(g)})();var u="svg_";b.setIdPrefix=function(g){u=
|
||
|
g};b.current_drawing_=new svgedit.draw.Drawing(l,u);var z=b.getCurrentDrawing=function(){return b.current_drawing_},o=1,L=null,T={shape:{fill:(m.initFill.color=="none"?"":"#")+m.initFill.color,fill_paint:null,fill_opacity:m.initFill.opacity,stroke:"#"+m.initStroke.color,stroke_paint:null,stroke_opacity:m.initStroke.opacity,stroke_width:m.initStroke.width,stroke_dasharray:"none",stroke_linejoin:"miter",stroke_linecap:"butt",opacity:m.initOpacity}};T.text=$.extend(true,{},T.shape);$.extend(T.text,{fill:"#000000",
|
||
|
stroke_width:0,font_size:24,font_family:"Junction"});var N=T.shape,J=Array(1),da=this.addSvgElementFromJson=function(g){var h=svgedit.utilities.getElem(g.attr.id),k=z().getCurrentLayer();if(h&&g.element!=h.tagName){k.removeChild(h);h=null}if(!h){h=d.createElementNS(c,g.element);if(k)(L||k).appendChild(h)}g.curStyles&&svgedit.utilities.assignAttributes(h,{fill:N.fill,stroke:N.stroke,"stroke-width":N.stroke_width,"stroke-dasharray":N.stroke_dasharray,"stroke-linejoin":N.stroke_linejoin,"stroke-linecap":N.stroke_linecap,
|
||
|
"stroke-opacity":N.stroke_opacity,"fill-opacity":N.fill_opacity,opacity:N.opacity/2,style:"pointer-events:inherit"},100);svgedit.utilities.assignAttributes(h,g.attr,100);svgedit.utilities.cleanupElement(h);return h},V=b.getTransformList=svgedit.transformlist.getTransformList,O=svgedit.math.transformPoint,fa=b.matrixMultiply=svgedit.math.matrixMultiply,sa=b.hasMatrixTransform=svgedit.math.hasMatrixTransform,ja=b.transformListToTransform=svgedit.math.transformListToTransform,ca=svgedit.math.snapToAngle,
|
||
|
ea=svgedit.math.getMatrix;svgedit.units.init({getBaseUnit:function(){return m.baseUnit},getElement:svgedit.utilities.getElem,getHeight:function(){return l.getAttribute("height")/o},getWidth:function(){return l.getAttribute("width")/o},getRoundDigits:function(){return Za.round_digits}});var qa=b.convertToNum=svgedit.units.convertToNum;svgedit.utilities.init({getDOMDocument:function(){return d},getDOMContainer:function(){return a},getSVGRoot:function(){return e},getSelectedElements:function(){return J},
|
||
|
getSVGContent:function(){return l}});var pa=b.getUrlFromAttr=svgedit.utilities.getUrlFromAttr,ba=b.getHref=svgedit.utilities.getHref,S=b.setHref=svgedit.utilities.setHref,U=svgedit.utilities.getPathBBox;b.getBBox=svgedit.utilities.getBBox;var ra=b.getRotationAngle=svgedit.utilities.getRotationAngle,la=b.getElem=svgedit.utilities.getElem,ma=b.assignAttributes=svgedit.utilities.assignAttributes,Y=this.cleanupElement=svgedit.utilities.cleanupElement,za=svgedit.sanitize.getNSMap(),Ia=b.sanitizeSvg=svgedit.sanitize.sanitizeSvg,
|
||
|
Qa=svgedit.history.MoveElementCommand,Ka=svgedit.history.InsertElementCommand,Ua=svgedit.history.RemoveElementCommand,Wa=svgedit.history.ChangeElementCommand,La=svgedit.history.BatchCommand;b.undoMgr=new svgedit.history.UndoManager({handleHistoryEvent:function(g,h){var k=svgedit.history.HistoryEventTypes;if(g==k.BEFORE_UNAPPLY||g==k.BEFORE_APPLY)b.clearSelection();else if(g==k.AFTER_APPLY||g==k.AFTER_UNAPPLY){var v=h.elements();b.pathActions.clear();I("changed",v);v=h.type();k=g==k.AFTER_APPLY;if(v==
|
||
|
Qa.type()){k=k?h.newParent:h.oldParent;k==l&&b.identifyLayers()}else if(v==Ka.type()||v==Ua.type()){h.parent==l&&b.identifyLayers();if(v==Ka.type())k&&ab(h.elem);else k||ab(h.elem);h.elem.tagName==="use"&&Ub(h.elem)}else if(v==Wa.type()){h.elem.tagName=="title"&&h.elem.parentNode.parentNode==l&&b.identifyLayers();k=k?h.newValues:h.oldValues;k.stdDeviation&&b.setBlurOffsets(h.elem.parentNode,k.stdDeviation);if(h.elem.tagName==="use"&&svgedit.browser.isWebkit()){v=h.elem;if(!v.getAttribute("x")&&!v.getAttribute("y")){k=
|
||
|
v.parentNode;var t=v.nextSibling;k.removeChild(v);k.insertBefore(v,t)}}}}}});var Ga=function(g){b.undoMgr.addCommandToHistory(g)};svgedit.select.init(m,{createSVGElement:function(g){return b.addSvgElementFromJson(g)},svgRoot:function(){return e},svgContent:function(){return l},currentZoom:function(){return o},getStrokedBBox:function(g){return b.getStrokedBBox([g])}});var Oa=this.selectorManager=svgedit.select.getSelectorManager();svgedit.path.init({getCurrentZoom:function(){return o},getSVGRoot:function(){return e}});
|
||
|
svgedit.utilities.snapToGrid=function(g){var h=m.snappingStep,k=m.baseUnit;if(k!=="px")h*=svgedit.units.getTypeMap()[k];return g=Math.round(g/h)*h};var Fa=svgedit.utilities.snapToGrid,Gb={exportNoBlur:"Blurred elements will appear as un-blurred",exportNoforeignObject:"foreignObject elements will not appear",exportNoDashArray:"Strokes will appear filled",exportNoText:"Text may not appear as expected"},Nb=["clip-path","fill","filter","marker-end","marker-mid","marker-start","mask","stroke"],lb=$.data,
|
||
|
ab=function(g){var h=$(g).attr(Nb),k;for(k in h){var v=h[k];if(v&&v.indexOf("url(")===0){v=pa(v).substr(1);if(!la(v)){ub().appendChild(Bb[v]);delete Bb[v]}}}g=g.getElementsByTagName("*");if(g.length){h=0;for(k=g.length;h<k;h++)ab(g[h])}},Sa={},Ja=m.imgPath+"logo.png",Ea=[],Za={round_digits:5},Ra=false,$a=null,Na="select",mb="none",Ab={},cb=T.text,jb=N,kb=null,Ca=null,wb=[],nb={},yb=null,Bb={};b.clipBoard=[];var ob=this.runExtensions=function(g,h,k){var v=false;if(k)v=[];$.each(nb,function(t,E){if(g in
|
||
|
E)if(k)v.push(E[g](h));else v=E[g](h)});return v};this.addExtension=function(g,h){if(g in nb)console.log('Cannot add extension "'+g+'", an extension by that name already exists"');else{var k=$.isFunction(h)?h($.extend(b.getPrivateMethods(),{svgroot:e,svgcontent:l,nonce:z().getNonce(),selectorManager:Oa})):h;nb[g]=k;I("extension_added",k)}};var Cb=this.round=function(g){return parseInt(g*o)/o},Kb=this.getIntersectionList=function(g){if(Ca==null)return null;var h=L||z().getCurrentLayer();wb.length||
|
||
|
(wb=Rb(h));var k=null;try{k=h.getIntersectionList(g,null)}catch(v){}if(k==null||typeof k.item!="function"){k=[];if(g)g=g;else{g=Ca.getBBox();h={};for(var t in g)h[t]=g[t]/o;g=h}for(t=wb.length;t--;)g.width&&g.width&&svgedit.math.rectsIntersect(g,wb[t].bbox)&&k.push(wb[t].elem)}return k};getStrokedBBox=this.getStrokedBBox=function(g){g||(g=Ib());if(!g.length)return false;var h=function(F){try{var C=svgedit.utilities.getBBox(F),D=svgedit.utilities.getRotationAngle(F);if(D&&D%90||svgedit.math.hasMatrixTransform(svgedit.transformlist.getTransformList(F))){D=
|
||
|
false;if(["ellipse","path","line","polyline","polygon"].indexOf(F.tagName)>=0)C=D=b.convertToPath(F,true);else if(F.tagName=="rect"){var G=F.getAttribute("rx"),H=F.getAttribute("ry");if(G||H)C=D=b.convertToPath(F,true)}if(!D){var P=F.cloneNode(true),R=document.createElementNS(c,"g"),aa=F.parentNode;aa.appendChild(R);R.appendChild(P);C=svgedit.utilities.bboxToObj(R.getBBox());aa.removeChild(R)}}return C}catch(ua){console.log(F,ua);return null}},k;$.each(g,function(){if(!k)if(this.parentNode)k=h(this)});
|
||
|
if(k==null)return null;var v=k.x+k.width,t=k.y+k.height,E=k.x,w=k.y,s=function(F){var C=F.getAttribute("stroke-width"),D=0;if(F.getAttribute("stroke")!="none"&&!isNaN(C))D+=C/2;return D},A=[];$.each(g,function(F,C){var D=h(C);if(D){var G=s(C);E=Math.min(E,D.x-G);w=Math.min(w,D.y-G);A.push(D)}});k.x=E;k.y=w;$.each(g,function(F,C){var D=A[F];if(D&&C.nodeType==1){var G=s(C);v=Math.max(v,D.x+D.width+G);t=Math.max(t,D.y+D.height+G)}});k.width=v-E;k.height=t-w;return k};var Ib=this.getVisibleElements=function(g){g||
|
||
|
(g=$(l).children());var h=[];$(g).children().each(function(k,v){try{v.getBBox()&&h.push(v)}catch(t){}});return h.reverse()},Rb=this.getVisibleElementsAndBBoxes=function(g){g||(g=$(l).children());var h=[];$(g).children().each(function(k,v){try{v.getBBox()&&h.push({elem:v,bbox:getStrokedBBox([v])})}catch(t){}});return h.reverse()},na=this.groupSvgElem=function(g){var h=document.createElementNS(c,"g");g.parentNode.replaceChild(h,g);$(h).append(g).data("gsvg",g)[0].id=M()},Z=function(g){var h=document.createElementNS(g.namespaceURI,
|
||
|
g.nodeName);h.removeAttribute("id");$.each(g.attributes,function(v,t){t.localName!="-moz-math-font-style"&&h.setAttributeNS(t.namespaceURI,t.nodeName,t.nodeValue)});if(svgedit.browser.isWebkit()&&g.nodeName=="path"){var k=Va.convertPath(g);h.setAttribute("d",k)}$.each(g.childNodes,function(v,t){switch(t.nodeType){case 1:h.appendChild(Z(t));break;case 3:h.textContent=t.nodeValue}});if($(g).data("gsvg"))$(h).data("gsvg",h.firstChild);else if($(g).data("symbol")){g=$(g).data("symbol");$(h).data("ref",
|
||
|
g).data("symbol",g)}else h.tagName=="image"&&Zb(h);h.id=M();console.log(h);return h},ta,M,I;(function(g){var h={};ta=g.getId=function(){return z().getId()};M=g.getNextId=function(){return z().getNextId()};I=g.call=function(k,v){if(h[k])return h[k](this,v)};g.bind=function(k,v){var t=h[k];h[k]=v;return t}})(b);this.prepareSvg=function(g){this.sanitizeSvg(g.documentElement);g=g.getElementsByTagNameNS(c,"path");for(var h=0,k=g.length;h<k;++h){var v=g[h];v.setAttribute("d",Va.convertPath(v));Va.fixEnd(v)}};
|
||
|
var X=this.getRefElem=function(g){return la(pa(g).substr(1))},Ma=function(g){if(!svgedit.browser.isGecko())return g;var h=g.cloneNode(true);g.parentNode.insertBefore(h,g);g.parentNode.removeChild(g);Oa.releaseSelector(g);J[0]=h;Oa.requestSelector(h).showGrips(true);return h};this.setRotationAngle=function(g,h){g=parseFloat(g);var k=J[0],v=k.getAttribute("transform"),t=svgedit.utilities.getBBox(k),E=t.x+t.width/2,w=t.y+t.height/2;t=V(k);t.numberOfItems>0&&t.getItem(0).type==4&&t.removeItem(0);if(g!=
|
||
|
0){E=O(E,w,ja(t).matrix);w=e.createSVGTransform();w.setRotate(g,E.x,E.y);t.numberOfItems?t.insertItemBefore(w,0):t.appendItem(w)}else t.numberOfItems==0&&k.removeAttribute("transform");if(!h){t=k.getAttribute("transform");k.setAttribute("transform",v);vb("transform",t,J);I("changed",J)}la("pathpointgrip_container");k=Oa.requestSelector(J[0]);k.resize();k.updateGripCursors(g)};var Xa=this.recalculateAllSelectedDimensions=function(){for(var g=new La(mb=="none"?"position":"size"),h=J.length;h--;){var k=
|
||
|
pb(J[h]);k&&g.addSubCommand(k)}if(!g.isEmpty()){Ga(g);I("changed",J)}},db=[0,"z","M","m","L","l","C","c","Q","q","A","a","H","h","V","v","S","s","T","t"],tb=function(g){console.log([g.a,g.b,g.c,g.d,g.e,g.f])},xb=this.remapElement=function(g,h,k){var v=m.gridSnapping&&g.parentNode.parentNode.localName==="svg",t=function(){if(v)for(var D in h)h[D]=Fa(h[D]);ma(g,h,1E3,true)};box=svgedit.utilities.getBBox(g);for(var E=0;E<2;E++){var w=E===0?"fill":"stroke",s=g.getAttribute(w);if(s&&s.indexOf("url(")===
|
||
|
0)if(k.a<0||k.d<0){s=X(s).cloneNode(true);if(k.a<0){var A=s.getAttribute("x1"),F=s.getAttribute("x2");s.setAttribute("x1",-(A-1));s.setAttribute("x2",-(F-1))}if(k.d<0){A=s.getAttribute("y1");F=s.getAttribute("y2");s.setAttribute("y1",-(A-1));s.setAttribute("y2",-(F-1))}s.id=M();ub().appendChild(s);g.setAttribute(w,"url(#"+s.id+")")}}E=g.tagName;if(E==="g"||E==="text"||E==="use")if(k.a==1&&k.b==0&&k.c==0&&k.d==1&&(k.e!=0||k.f!=0)){w=ja(g).matrix;w=fa(w.inverse(),k,w);h.x=parseFloat(h.x)+w.e;h.y=parseFloat(h.y)+
|
||
|
w.f}else{w=V(g);s=e.createSVGTransform();s.setMatrix(fa(ja(w).matrix,k));w.clear();w.appendItem(s)}switch(E){case "foreignObject":case "rect":case "image":if(E==="image"&&(k.a<0||k.d<0)){w=V(g);s=e.createSVGTransform();s.setMatrix(fa(ja(w).matrix,k));w.clear();w.appendItem(s)}else{w=O(h.x,h.y,k);h.width=k.a*h.width;h.height=k.d*h.height;h.x=w.x+Math.min(0,h.width);h.y=w.y+Math.min(0,h.height);h.width=Math.abs(h.width);h.height=Math.abs(h.height)}t();break;case "ellipse":E=O(h.cx,h.cy,k);h.cx=E.x;
|
||
|
h.cy=E.y;h.rx=k.a*h.rx;h.ry=k.d*h.ry;h.rx=Math.abs(h.rx);h.ry=Math.abs(h.ry);t();break;case "circle":E=O(h.cx,h.cy,k);h.cx=E.x;h.cy=E.y;E=svgedit.math.transformBox(box.x,box.y,box.width,box.height,k);h.r=Math.min((E.tr.x-E.tl.x)/2,(E.bl.y-E.tl.y)/2);if(h.r)h.r=Math.abs(h.r);t();break;case "line":w=O(h.x1,h.y1,k);A=O(h.x2,h.y2,k);h.x1=w.x;h.y1=w.y;h.x2=A.x;h.y2=A.y;case "text":k=g.querySelectorAll("tspan");for(E=k.length;E--;){w=qa("x",g.getAttribute("x"));s=qa("x",k[E].getAttribute("x"));A=qa("y",
|
||
|
g.getAttribute("y"));F=qa("y",k[E].getAttribute("y"));var C={};if(!isNaN(w)&&!isNaN(s)&&w!=0&&s!=0&&h.x)C.x=h.x-(w-s);if(!isNaN(A)&&!isNaN(F)&&A!=0&&F!=0&&h.y)C.y=h.y-(A-F);if(C.x||C.y)ma(k[E],C,1E3,true)}t();break;case "use":t();break;case "g":(t=$(g).data("gsvg"))&&ma(t,h,1E3,true);break;case "polyline":case "polygon":t=h.points.length;for(E=0;E<t;++E){F=h.points[E];F=O(F.x,F.y,k);h.points[E].x=F.x;h.points[E].y=F.y}t=h.points.length;k="";for(E=0;E<t;++E){F=h.points[E];k+=F.x+","+F.y+" "}g.setAttribute("points",
|
||
|
k);break;case "path":w=g.pathSegList;t=w.numberOfItems;h.d=Array(t);for(E=0;E<t;++E){s=w.getItem(E);h.d[E]={type:s.pathSegType,x:s.x,y:s.y,x1:s.x1,y1:s.y1,x2:s.x2,y2:s.y2,r1:s.r1,r2:s.r2,angle:s.angle,largeArcFlag:s.largeArcFlag,sweepFlag:s.sweepFlag}}t=h.d.length;E=h.d[0];C=O(E.x,E.y,k);h.d[0].x=C.x;h.d[0].y=C.y;for(E=1;E<t;++E){s=h.d[E];w=s.type;if(w%2==0){F=O(s.x!=undefined?s.x:C.x,s.y!=undefined?s.y:C.y,k);w=O(s.x1,s.y1,k);A=O(s.x2,s.y2,k);s.x=F.x;s.y=F.y;s.x1=w.x;s.y1=w.y;s.x2=A.x;s.y2=A.y}else{s.x=
|
||
|
k.a*s.x;s.y=k.d*s.y;s.x1=k.a*s.x1;s.y1=k.d*s.y1;s.x2=k.a*s.x2;s.y2=k.d*s.y2}s.r1=k.a*s.r1;s.r2=k.d*s.r2}k="";t=h.d.length;for(E=0;E<t;++E){s=h.d[E];w=s.type;k+=db[w];switch(w){case 13:case 12:k+=s.x+" ";break;case 15:case 14:k+=s.y+" ";break;case 3:case 5:case 19:case 2:case 4:case 18:k+=s.x+","+s.y+" ";break;case 7:case 6:k+=s.x1+","+s.y1+" "+s.x2+","+s.y2+" "+s.x+","+s.y+" ";break;case 9:case 8:k+=s.x1+","+s.y1+" "+s.x+","+s.y+" ";break;case 11:case 10:k+=s.r1+","+s.r2+" "+s.angle+" "+ +s.largeArcFlag+
|
||
|
" "+ +s.sweepFlag+" "+s.x+","+s.y+" ";break;case 17:case 16:k+=s.x2+","+s.y2+" "+s.x+","+s.y+" "}}g.setAttribute("d",k)}},Hb=function(g,h,k){g=X(g).firstChild;var v=V(g),t=e.createSVGTransform();t.setTranslate(h,k);v.appendItem(t);pb(g)},pb=this.recalculateDimensions=function(g){if(g==null)return null;var h=V(g);if(h&&h.numberOfItems>0){for(var k=h.numberOfItems;k--;){var v=h.getItem(k);if(v.type===0)h.removeItem(k);else if(v.type===1)svgedit.math.isIdentity(v.matrix)&&h.removeItem(k);else v.type===
|
||
|
4&&v.angle===0&&h.removeItem(k)}if(h.numberOfItems===1&&ra(g))return null}if(!h||h.numberOfItems==0){g.removeAttribute("transform");return null}if(h){k=h.numberOfItems;for(var t=[];k--;){v=h.getItem(k);if(v.type===1)t.push([v.matrix,k]);else if(t.length)t=[]}if(t.length===2){k=e.createSVGTransformFromMatrix(fa(t[1][0],t[0][0]));h.removeItem(t[0][1]);h.removeItem(t[1][1]);h.insertItemBefore(k,t[1][1])}k=h.numberOfItems;if(k>=2&&h.getItem(k-2).type===1&&h.getItem(k-1).type===2){t=e.createSVGTransform();
|
||
|
v=fa(h.getItem(k-2).matrix,h.getItem(k-1).matrix);t.setMatrix(v);h.removeItem(k-2);h.removeItem(k-2);h.appendItem(t)}}switch(g.tagName){case "line":case "polyline":case "polygon":case "path":break;default:if(h.numberOfItems===1&&h.getItem(0).type===1||h.numberOfItems===2&&h.getItem(0).type===1&&h.getItem(0).type===4)return null}var E=$(g).data("gsvg");k=new La("Transform");var w={},s=null;v=[];switch(g.tagName){case "line":v=["x1","y1","x2","y2"];break;case "circle":v=["cx","cy","r"];break;case "ellipse":v=
|
||
|
["cx","cy","rx","ry"];break;case "foreignObject":case "rect":case "image":v=["width","height","x","y"];break;case "use":case "text":case "tspan":v=["x","y"];break;case "polygon":case "polyline":s={};s.points=g.getAttribute("points");t=g.points;var A=t.numberOfItems;w.points=Array(A);for(var F=0;F<A;++F){var C=t.getItem(F);w.points[F]={x:C.x,y:C.y}}break;case "path":s={};s.d=g.getAttribute("d");w.d=g.getAttribute("d")}if(v.length){w=$(g).attr(v);$.each(w,function(Jb,Ob){w[Jb]=qa(Jb,Ob)})}else if(E)w=
|
||
|
{x:$(E).attr("x")||0,y:$(E).attr("y")||0};if(s==null){s=$.extend(true,{},w);$.each(s,function(Jb,Ob){s[Jb]=qa(Jb,Ob)})}s.transform=$a?$a:"";if(g.tagName=="g"&&!E||g.tagName=="a"){t=svgedit.utilities.getBBox(g);var D={x:t.x+t.width/2,y:t.y+t.height/2},G=O(t.x+t.width/2,t.y+t.height/2,ja(h).matrix);v=e.createSVGMatrix();if(t=ra(g)){F=t*Math.PI/180;A=Math.abs(F)>1.0E-10?Math.sin(F)/(1-Math.cos(F)):2/F;for(F=0;F<h.numberOfItems;++F){v=h.getItem(F);if(v.type==4){v=v.matrix;D.y=(A*v.e+v.f)/2;D.x=(v.e-A*
|
||
|
v.f)/2;h.removeItem(F);break}}}F=v=E=0;var H=h.numberOfItems;if(H)var P=h.getItem(0).matrix;if(H>=3&&h.getItem(H-2).type==3&&h.getItem(H-3).type==2&&h.getItem(H-1).type==2){F=3;var R=h.getItem(H-3).matrix,aa=h.getItem(H-2).matrix,ua=h.getItem(H-1).matrix;A=g.childNodes;for(C=A.length;C--;){var wa=A.item(C);v=E=0;if(wa.nodeType==1){var ha=V(wa);if(ha){v=ja(ha).matrix;E=ra(wa);var ka=$a,oa=[];$a=wa.getAttribute("transform");if(E||sa(ha)){var xa=e.createSVGTransform();xa.setMatrix(fa(R,aa,ua,v));ha.clear();
|
||
|
ha.appendItem(xa);oa.push(xa)}else{E=fa(v.inverse(),ua,v);xa=e.createSVGMatrix();xa.e=-E.e;xa.f=-E.f;v=fa(xa.inverse(),v.inverse(),R,aa,ua,v,E.inverse());var eb=e.createSVGTransform(),Db=e.createSVGTransform(),Pb=e.createSVGTransform();eb.setTranslate(E.e,E.f);Db.setScale(v.a,v.d);Pb.setTranslate(xa.e,xa.f);ha.appendItem(Pb);ha.appendItem(Db);ha.appendItem(eb);oa.push(Pb);oa.push(Db);oa.push(eb)}k.addSubCommand(pb(wa));$a=ka}}}h.removeItem(H-1);h.removeItem(H-2);h.removeItem(H-3)}else if(H>=3&&h.getItem(H-
|
||
|
1).type==1){F=3;v=ja(h).matrix;xa=e.createSVGTransform();xa.setMatrix(v);h.clear();h.appendItem(xa)}else if((H==1||H>1&&h.getItem(1).type!=3)&&h.getItem(0).type==2){F=2;E=ja(h).matrix;h.removeItem(0);v=ja(h).matrix.inverse();v=fa(v,E);E=v.e;v=v.f;if(E!=0||v!=0){A=g.childNodes;C=A.length;for(H=[];C--;){wa=A.item(C);if(wa.nodeType==1){if(wa.getAttribute("clip-path")){ka=wa.getAttribute("clip-path");if(H.indexOf(ka)===-1){Hb(ka,E,v);H.push(ka)}}ka=$a;$a=wa.getAttribute("transform");if(ha=V(wa)){R=e.createSVGTransform();
|
||
|
R.setTranslate(E,v);ha.numberOfItems?ha.insertItemBefore(R,0):ha.appendItem(R);k.addSubCommand(pb(wa));ha=g.getElementsByTagNameNS(c,"use");wa="#"+wa.id;for(R=ha.length;R--;){aa=ha.item(R);if(wa==ba(aa)){ua=e.createSVGTransform();ua.setTranslate(-E,-v);V(aa).insertItemBefore(ua,0);k.addSubCommand(pb(aa))}}$a=ka}}}H=[];$a=ka}}else if(H==1&&h.getItem(0).type==1&&!t){F=1;v=h.getItem(0).matrix;A=g.childNodes;for(C=A.length;C--;){wa=A.item(C);if(wa.nodeType==1){ka=$a;$a=wa.getAttribute("transform");if(ha=
|
||
|
V(wa)){E=fa(v,ja(ha).matrix);H=e.createSVGTransform();H.setMatrix(E);ha.clear();ha.appendItem(H,0);k.addSubCommand(pb(wa));$a=ka;ka=wa.getAttribute("stroke-width");wa.getAttribute("stroke")!=="none"&&!isNaN(ka)&&wa.setAttribute("stroke-width",ka*((Math.abs(E.a)+Math.abs(E.d))/2))}}}h.clear()}else{if(t){D=e.createSVGTransform();D.setRotate(t,G.x,G.y);h.numberOfItems?h.insertItemBefore(D,0):h.appendItem(D)}h.numberOfItems==0&&g.removeAttribute("transform");return null}if(F==2){if(t){G={x:D.x+P.e,y:D.y+
|
||
|
P.f};D=e.createSVGTransform();D.setRotate(t,G.x,G.y);h.numberOfItems?h.insertItemBefore(D,0):h.appendItem(D)}}else if(F==3){v=ja(h).matrix;P=e.createSVGTransform();P.setRotate(t,D.x,D.y);P=P.matrix;D=e.createSVGTransform();D.setRotate(t,G.x,G.y);G=D.matrix.inverse();ka=v.inverse();G=fa(ka,G,P,v);E=G.e;v=G.f;if(E!=0||v!=0){A=g.childNodes;for(C=A.length;C--;){wa=A.item(C);if(wa.nodeType==1){ka=$a;$a=wa.getAttribute("transform");ha=V(wa);R=e.createSVGTransform();R.setTranslate(E,v);ha.numberOfItems?
|
||
|
ha.insertItemBefore(R,0):ha.appendItem(R);k.addSubCommand(pb(wa));$a=ka}}}if(t)h.numberOfItems?h.insertItemBefore(D,0):h.appendItem(D)}}else{t=svgedit.utilities.getBBox(g);if(!t&&g.tagName!="path")return null;v=e.createSVGMatrix();if(E=ra(g)){D={x:t.x+t.width/2,y:t.y+t.height/2};G=O(t.x+t.width/2,t.y+t.height/2,ja(h).matrix);F=E*Math.PI/180;A=Math.abs(F)>1.0E-10?Math.sin(F)/(1-Math.cos(F)):2/F;for(F=0;F<h.numberOfItems;++F){v=h.getItem(F);if(v.type==4){v=v.matrix;D.y=(A*v.e+v.f)/2;D.x=(v.e-A*v.f)/
|
||
|
2;h.removeItem(F);break}}}F=0;H=h.numberOfItems;if(!svgedit.browser.isWebkit())if((P=g.getAttribute("fill"))&&P.indexOf("url(")===0){P=X(P);ka="pattern";if(P.tagName!==ka)ka="gradient";if(P.getAttribute(ka+"Units")==="userSpaceOnUse"){v=ja(h).matrix;t=V(P);t=ja(t).matrix;v=fa(v,t);t="matrix("+[v.a,v.b,v.c,v.d,v.e,v.f].join(",")+")";P.setAttribute(ka+"Transform",t)}}if(H>=3&&h.getItem(H-2).type==3&&h.getItem(H-3).type==2&&h.getItem(H-1).type==2){F=3;v=ja(h,H-3,H-1).matrix;h.removeItem(H-1);h.removeItem(H-
|
||
|
2);h.removeItem(H-3)}else if(H==4&&h.getItem(H-1).type==1){F=3;v=ja(h).matrix;xa=e.createSVGTransform();xa.setMatrix(v);h.clear();h.appendItem(xa);v=e.createSVGMatrix()}else if((H==1||H>1&&h.getItem(1).type!=3)&&h.getItem(0).type==2){F=2;P=h.getItem(0).matrix;ka=ja(h,1).matrix;t=ka.inverse();v=fa(t,P,ka);h.removeItem(0)}else if(H==1&&h.getItem(0).type==1&&!E){v=ja(h).matrix;switch(g.tagName){case "line":w=$(g).attr(["x1","y1","x2","y2"]);case "polyline":case "polygon":w.points=g.getAttribute("points");
|
||
|
if(w.points){t=g.points;A=t.numberOfItems;w.points=Array(A);for(F=0;F<A;++F){C=t.getItem(F);w.points[F]={x:C.x,y:C.y}}}case "path":w.d=g.getAttribute("d");F=1;h.clear()}}else{F=4;if(E){D=e.createSVGTransform();D.setRotate(E,G.x,G.y);h.numberOfItems?h.insertItemBefore(D,0):h.appendItem(D)}h.numberOfItems==0&&g.removeAttribute("transform");return null}if(F==1||F==2||F==3)xb(g,w,v);if(F==2){if(E){sa(h)||(G={x:D.x+v.e,y:D.y+v.f});D=e.createSVGTransform();D.setRotate(E,G.x,G.y);h.numberOfItems?h.insertItemBefore(D,
|
||
|
0):h.appendItem(D)}}else if(F==3&&E){v=ja(h).matrix;P=e.createSVGTransform();P.setRotate(E,D.x,D.y);P=P.matrix;D=e.createSVGTransform();D.setRotate(E,G.x,G.y);G=D.matrix.inverse();ka=v.inverse();G=fa(ka,G,P,v);xb(g,w,G);if(E)h.numberOfItems?h.insertItemBefore(D,0):h.appendItem(D)}}h.numberOfItems==0&&g.removeAttribute("transform");k.addSubCommand(new Wa(g,s));return k},Lb=null,bb=this.clearSelection=function(g){if(J[0]!=null)for(var h=J.length,k=0;k<h;++k){var v=J[k];if(v==null)break;Oa.releaseSelector(v);
|
||
|
J[k]=null}g||I("selected",J)},qb=this.addToSelection=function(g,h){if(g.length!=0){for(var k=0;k<J.length;){if(J[k]==null)break;++k}for(var v=g.length;v--;){var t=g[v];if(t&&svgedit.utilities.getBBox(t)){if(t.tagName==="a"&&t.childNodes.length===1)t=t.firstChild;if(J.indexOf(t)==-1){J[k]=t;k++;t=Oa.requestSelector(t);J.length>1&&t.showGrips(false)}}}I("selected",J);h||J.length==1?Oa.requestSelector(J[0]).showGrips(true):Oa.requestSelector(J[0]).showGrips(false);for(J.sort(function(E,w){if(E&&w&&E.compareDocumentPosition)return 3-
|
||
|
(w.compareDocumentPosition(E)&6);else if(E==null)return 1});J[0]==null;)J.shift(0)}},Qb=this.selectOnly=function(g,h){bb(true);qb(g,h)};this.removeFromSelection=function(g){if(J[0]!=null)if(g.length!=0){var h=Array(J.length);j=0;len=J.length;for(var k=0;k<len;++k){var v=J[k];if(v)if(g.indexOf(v)==-1){h[j]=v;j++}else Oa.releaseSelector(v)}J=h}};this.selectAllInCurrentLayer=function(){var g=z().getCurrentLayer();if(g){Na="select";Qb($(L||g).children())}};var $b=this.getMouseTarget=function(g){if(g==
|
||
|
null)return null;g=g.target;if(g.correspondingUseElement)g=g.correspondingUseElement;if(["http://www.w3.org/1998/Math/MathML","http://www.w3.org/1999/xhtml"].indexOf(g.namespaceURI)>=0&&g.id!="svgcanvas")for(;g.nodeName!="foreignObject";){g=g.parentNode;if(!g)return e}var h=z().getCurrentLayer();if([e,a,l,h].indexOf(g)>=0)return e;if($(g).closest("#selectorParentGroup").length)return Oa.selectorParentGroup;for(;g.parentNode!==(L||h);)g=g.parentNode;return g};(function(){var g=null,h=null,k=null,v=
|
||
|
null,t=null,E={},w={minx:null,miny:null,maxx:null,maxy:null};$(a).mousedown(function(s){if(!(b.spaceKey||s.button===1)){var A=s.button===2;s.altKey&&svgCanvas.cloneSelectedElements(0,0);Lb=l.getScreenCTM().inverse();var F=O(s.pageX,s.pageY,Lb),C=F.x*o,D=F.y*o;s.preventDefault();if(A){Na="select";yb=F}F=C/o;D=D/o;var G=$b(s);if(G.tagName==="a"&&G.childNodes.length===1)G=G.firstChild;C=v=h=F;var H=t=k=D;if(m.gridSnapping){F=Fa(F);D=Fa(D);h=Fa(h);k=Fa(k)}if(G==Oa.selectorParentGroup&&J[0]!=null){G=s.target;
|
||
|
var P=lb(G,"type");if(P=="rotate"){Na="rotate";current_rotate_mode=lb(G,"dir")}else if(P=="resize"){Na="resize";mb=lb(G,"dir")}G=J[0]}$a=G.getAttribute("transform");P=V(G);switch(Na){case "select":Ra=true;mb="none";if(A)Ra=false;if(G!=e){if(J.indexOf(G)==-1){s.shiftKey||bb(true);qb([G]);kb=G;Va.clear()}if(!A)for(A=0;A<J.length;++A)if(J[A]!=null){var R=V(J[A]);R.numberOfItems?R.insertItemBefore(e.createSVGTransform(),0):R.appendItem(e.createSVGTransform())}}else if(!A){bb();Na="multiselect";if(Ca==
|
||
|
null)Ca=Oa.getRubberBandBox();v*=o;t*=o;ma(Ca,{x:v,y:t,width:0,height:0,display:"inline"},100)}break;case "zoom":Ra=true;if(Ca==null)Ca=Oa.getRubberBandBox();ma(Ca,{x:C*o,y:C*o,width:0,height:0,display:"inline"},100);break;case "resize":Ra=true;h=F;k=D;E=svgedit.utilities.getBBox($("#selectedBox0")[0]);var aa={};$.each(E,function(ua,wa){aa[ua]=wa/o});E=aa;A=ra(G)?1:0;if(sa(P)){P.insertItemBefore(e.createSVGTransform(),A);P.insertItemBefore(e.createSVGTransform(),A);P.insertItemBefore(e.createSVGTransform(),
|
||
|
A)}else{P.appendItem(e.createSVGTransform());P.appendItem(e.createSVGTransform());P.appendItem(e.createSVGTransform());if(svgedit.browser.supportsNonScalingStroke()){if(F=svgedit.browser.isChrome())R=function(ua){var wa=ua.getAttributeNS(null,"stroke");ua.removeAttributeNS(null,"stroke");setTimeout(function(){ua.setAttributeNS(null,"stroke",wa)},1)};G.style.vectorEffect="non-scaling-stroke";F&&R(G);D=G.getElementsByTagName("*");C=D.length;for(A=0;A<C;A++){D[A].style.vectorEffect="non-scaling-stroke";
|
||
|
F&&R(D[A])}}}break;case "fhellipse":case "fhrect":case "fhpath":Ra=true;g=C+","+H+" ";R=N.stroke_width==0?1:N.stroke_width;da({element:"polyline",curStyles:true,attr:{points:g,id:M(),fill:"none",opacity:N.opacity/2,"stroke-linecap":"round",style:"pointer-events:none"}});w.minx=C;w.maxx=C;w.miny=H;w.maxy=H;break;case "image":Ra=true;R=da({element:"image",attr:{x:F,y:D,width:0,height:0,id:M(),opacity:N.opacity/2,style:"pointer-events:inherit"}});S(R,Ja);Zb(R);break;case "square":case "rect":Ra=true;
|
||
|
h=F;k=D;da({element:"rect",curStyles:true,attr:{x:F,y:D,width:0,height:0,id:M(),opacity:N.opacity/2}});break;case "line":Ra=true;R=N.stroke_width==0?1:N.stroke_width;da({element:"line",curStyles:true,attr:{x1:F,y1:D,x2:F,y2:D,id:M(),stroke:N.stroke,"stroke-width":R,"stroke-dasharray":N.stroke_dasharray,"stroke-linejoin":N.stroke_linejoin,"stroke-linecap":N.stroke_linecap,"stroke-opacity":N.stroke_opacity,fill:"none",opacity:N.opacity/2,style:"pointer-events:none"}});break;case "circle":Ra=true;da({element:"circle",
|
||
|
curStyles:true,attr:{cx:F,cy:D,r:0,id:M(),opacity:N.opacity/2}});break;case "ellipse":Ra=true;da({element:"ellipse",curStyles:true,attr:{cx:F,cy:D,rx:0,ry:0,id:M(),opacity:N.opacity/2}});break;case "text":Ra=true;da({element:"text",curStyles:true,attr:{x:F,y:D,id:M(),fill:cb.fill,"stroke-width":cb.stroke_width,"font-size":cb.font_size,"font-family":cb.font_family,"text-anchor":"left","xml:space":"preserve",opacity:N.opacity}});break;case "path":case "pathedit":h*=o;k*=o;Va.mouseDown(s,G,h,k);Ra=true;
|
||
|
break;case "textedit":h*=o;k*=o;rb.mouseDown(s,G,h,k);Ra=true;break;case "rotate":Ra=true;b.undoMgr.beginUndoableChange("transform",J);document.getElementById("workarea").className="rotate"}s=ob("mouseDown",{event:s,start_x:h,start_y:k,selectedElements:J},true);$.each(s,function(ua,wa){if(wa&&wa.started)Ra=true})}}).mousemove(function(s){if(Ra)if(!(s.button===1||b.spaceKey)){var A=J[0],F=O(s.pageX,s.pageY,Lb),C=F.x*o;F=F.y*o;var D=la(ta()),G=x=C/o,H=y=F/o;if(m.gridSnapping){x=Fa(x);y=Fa(y)}s.preventDefault();
|
||
|
switch(Na){case "select":if(J[0]!==null){G=x-h;var P=y-k;if(m.gridSnapping){G=Fa(G);P=Fa(P)}if(s.shiftKey){var R=ca(h,k,x,y);x=R.x;y=R.y}if(G!=0||P!=0){R=J.length;for(H=0;H<R;++H){A=J[H];if(A==null)break;var aa=e.createSVGTransform();D=V(A);aa.setTranslate(G,P);D.numberOfItems?D.replaceItem(aa,0):D.appendItem(aa);Oa.requestSelector(A).resize()}I("transition",J)}}break;case "multiselect":G*=o;H*=o;ma(Ca,{x:Math.min(v,G),y:Math.min(t,H),width:Math.abs(G-v),height:Math.abs(H-t)},100);D=[];G=[];aa=Kb();
|
||
|
R=J.length;for(H=0;H<R;++H){P=aa.indexOf(J[H]);if(P==-1)D.push(J[H]);else aa[P]=null}R=aa.length;for(H=0;H<R;++H)aa[H]&&G.push(aa[H]);D.length>0&&b.removeFromSelection(D);G.length>0&&qb(G);break;case "resize":D=V(A);G=(R=sa(D))?E:svgedit.utilities.getBBox(A);H=G.x;aa=G.y;var ua=G.width,wa=G.height;G=x-h;P=y-k;if(m.gridSnapping){G=Fa(G);P=Fa(P);wa=Fa(wa);ua=Fa(ua)}var ha=ra(A);if(ha){var ka=Math.sqrt(G*G+P*P);P=Math.atan2(P,G)-ha*Math.PI/180;G=ka*Math.cos(P);P=ka*Math.sin(P)}if(mb.indexOf("n")==-1&&
|
||
|
mb.indexOf("s")==-1)P=0;if(mb.indexOf("e")==-1&&mb.indexOf("w")==-1)G=0;var oa=ka=0,xa=wa?(wa+P)/wa:1,eb=ua?(ua+G)/ua:1;if(mb.indexOf("n")>=0){xa=wa?(wa-P)/wa:1;oa=wa}if(mb.indexOf("w")>=0){eb=ua?(ua-G)/ua:1;ka=ua}G=e.createSVGTransform();P=e.createSVGTransform();ua=e.createSVGTransform();if(m.gridSnapping){H=Fa(H);ka=Fa(ka);aa=Fa(aa);oa=Fa(oa)}G.setTranslate(-(H+ka),-(aa+oa));if(s.shiftKey)if(eb==1)eb=xa;else xa=eb;P.setScale(eb,xa);ua.setTranslate(H+ka,aa+oa);if(R){R=ha?1:0;D.replaceItem(G,2+R);
|
||
|
D.replaceItem(P,1+R);D.replaceItem(ua,0+R)}else{R=D.numberOfItems;D.replaceItem(ua,R-3);D.replaceItem(P,R-2);D.replaceItem(G,R-1)}Oa.requestSelector(A).resize();I("transition",J);break;case "zoom":G*=o;H*=o;ma(Ca,{x:Math.min(v*o,G),y:Math.min(t*o,H),width:Math.abs(G-v*o),height:Math.abs(H-t*o)},100);break;case "text":ma(D,{x:x,y:y},1E3);break;case "line":G=null;window.opera||e.suspendRedraw(1E3);if(m.gridSnapping){x=Fa(x);y=Fa(y)}H=x;R=y;if(s.shiftKey){R=ca(h,k,H,R);H=R.x;R=R.y}D.setAttributeNS(null,
|
||
|
"x2",H);D.setAttributeNS(null,"y2",R);window.opera||e.unsuspendRedraw(G);break;case "foreignObject":case "square":case "rect":case "image":G=Math.abs(x-h);R=Math.abs(y-k);if(Na=="square"||s.shiftKey){G=R=Math.max(G,R);H=h<x?h:h-G;aa=k<y?k:k-R}else{H=Math.min(h,x);aa=Math.min(k,y)}if(m.gridSnapping){G=Fa(G);R=Fa(R);H=Fa(H);aa=Fa(aa)}ma(D,{width:G,height:R,x:H,y:aa},1E3);break;case "circle":G=$(D).attr(["cx","cy"]);R=G.cx;H=G.cy;G=Math.sqrt((x-R)*(x-R)+(y-H)*(y-H));if(m.gridSnapping)G=Fa(G);D.setAttributeNS(null,
|
||
|
"r",G);break;case "ellipse":G=$(D).attr(["cx","cy"]);R=G.cx;H=G.cy;G=null;window.opera||e.suspendRedraw(1E3);if(m.gridSnapping){x=Fa(x);R=Fa(R);y=Fa(y);H=Fa(H)}D.setAttributeNS(null,"rx",Math.abs(x-R));D.setAttributeNS(null,"ry",Math.abs(s.shiftKey?x-R:y-H));window.opera||e.unsuspendRedraw(G);break;case "fhellipse":case "fhrect":w.minx=Math.min(G,w.minx);w.maxx=Math.max(G,w.maxx);w.miny=Math.min(H,w.miny);w.maxy=Math.max(H,w.maxy);case "fhpath":g+=+G+","+H+" ";D.setAttributeNS(null,"points",g);break;
|
||
|
case "path":case "pathedit":x*=o;y*=o;if(m.gridSnapping){x=Fa(x);y=Fa(y);h=Fa(h);k=Fa(k)}if(s.shiftKey){if(R=svgedit.path.path){D=R.dragging?R.dragging[0]:h;R=R.dragging?R.dragging[1]:k}else{D=h;R=k}R=ca(D,R,x,y);x=R.x;y=R.y}if(Ca&&Ca.getAttribute("display")!=="none"){G*=o;H*=o;ma(Ca,{x:Math.min(v*o,G),y:Math.min(t*o,H),width:Math.abs(G-v*o),height:Math.abs(H-t*o)},100)}Va.mouseMove(s,x,y);break;case "textedit":x*=o;y*=o;rb.mouseMove(C,F);break;case "rotate":G=svgedit.utilities.getBBox(A);R=G.x+G.width/
|
||
|
2;H=G.y+G.height/2;D=ea(A);D=O(R,H,D);R=D.x;H=D.y;D=G.x;aa=G.y;if(current_rotate_mode=="nw")D=G.x+G.width;if(current_rotate_mode=="se")aa=G.y+G.height;if(current_rotate_mode=="sw"){D=G.x+G.width;aa=G.y+G.height}compensation_angle=(Math.atan2(H-aa,R-D)*(180/Math.PI)-90)%360;ha=(Math.atan2(H-y,R-x)*(180/Math.PI)-90)%360;ha+=compensation_angle;if(m.gridSnapping)ha=Fa(ha);if(s.shiftKey)ha=Math.round(ha/45)*45;b.setRotationAngle(ha<-180?360+ha:ha,true);I("transition",J)}ob("mouseMove",{event:s,mouse_x:C,
|
||
|
mouse_y:F,selected:A})}}).click(function(s){s.preventDefault();return false}).dblclick(function(s){var A=s.target.parentNode;if(A!==L){var F=$b(s),C=F.tagName;if(C==="text"&&Na!=="textedit"){s=O(s.pageX,s.pageY,Lb);rb.select(F,s.x,s.y)}if((C==="g"||C==="a")&&ra(F)){fc(F);F=J[0];bb(true)}L&&ac();A.tagName!=="g"&&A.tagName!=="a"||A===z().getCurrentLayer()||F===Oa.selectorParentGroup||nc(F)}}).mouseup(function(s){if(s.button!==2){var A=kb;kb=null;if(Ra){var F=O(s.pageX,s.pageY,Lb),C=F.x*o;F=F.y*o;var D=
|
||
|
C/o,G=F/o,H=la(ta()),P=false;Ra=false;switch(Na){case "resize":case "multiselect":if(Ca!=null){Ca.setAttribute("display","none");wb=[]}Na="select";case "select":if(J[0]!=null){if(J[1]==null){C=J[0];switch(C.tagName){case "g":case "use":case "image":case "foreignObject":break;default:jb.fill=C.getAttribute("fill");jb.fill_opacity=C.getAttribute("fill-opacity");jb.stroke=C.getAttribute("stroke");jb.stroke_opacity=C.getAttribute("stroke-opacity");jb.stroke_width=C.getAttribute("stroke-width");jb.stroke_dasharray=
|
||
|
C.getAttribute("stroke-dasharray");jb.stroke_linejoin=C.getAttribute("stroke-linejoin");jb.stroke_linecap=C.getAttribute("stroke-linecap")}if(C.tagName=="text"){cb.font_size=C.getAttribute("font-size");cb.font_family=C.getAttribute("font-family")}Oa.requestSelector(C).showGrips(true)}Xa();if(D!=v||G!=t){s=J.length;for(C=0;C<s;++C){if(J[C]==null)break;J[C].firstChild||Oa.requestSelector(J[C]).resize()}}else{C=s.target;if(J[0].nodeName==="path"&&J[1]==null)Va.select(J[0]);else s.shiftKey&&A!=C&&b.removeFromSelection([C])}if(svgedit.browser.supportsNonScalingStroke())if(s=
|
||
|
J[0]){s.removeAttribute("style");svgedit.utilities.walkTree(s,function(ua){ua.removeAttribute("style")})}}return;case "zoom":Ca!=null&&Ca.setAttribute("display","none");I("zoomed",{x:Math.min(v,D),y:Math.min(t,G),width:Math.abs(D-v),height:Math.abs(G-t),factor:s.altKey?0.5:2});return;case "fhpath":A=H.getAttribute("points");D=A.indexOf(",");if(P=D>=0?A.indexOf(",",D+1)>=0:A.indexOf(" ",A.indexOf(" ")+1)>=0)H=Va.smoothPolylineIntoPath(H);break;case "line":A=$(H).attr(["x1","x2","y1","y2"]);P=A.x1!=
|
||
|
A.x2||A.y1!=A.y2;break;case "foreignObject":case "square":case "rect":case "image":A=$(H).attr(["width","height"]);P=A.width!=0||A.height!=0||Na==="image";break;case "circle":P=H.getAttribute("r")!=0;break;case "ellipse":A=$(H).attr(["rx","ry"]);P=A.rx!=null||A.ry!=null;break;case "fhellipse":if(w.maxx-w.minx>0&&w.maxy-w.miny>0){H=da({element:"ellipse",curStyles:true,attr:{cx:(w.minx+w.maxx)/2,cy:(w.miny+w.maxy)/2,rx:(w.maxx-w.minx)/2,ry:(w.maxy-w.miny)/2,id:ta()}});I("changed",[H]);P=true}break;
|
||
|
case "fhrect":if(w.maxx-w.minx>0&&w.maxy-w.miny>0){H=da({element:"rect",curStyles:true,attr:{x:w.minx,y:w.miny,width:w.maxx-w.minx,height:w.maxy-w.miny,id:ta()}});I("changed",[H]);P=true}break;case "text":P=true;Qb([H]);rb.start(H);break;case "path":H=null;Ra=true;A=Va.mouseUp(s,H,C,F);H=A.element;P=A.keep;break;case "pathedit":P=true;H=null;Va.mouseUp(s);break;case "textedit":P=false;H=null;rb.mouseUp(s,C,F);break;case "rotate":P=true;H=null;Na="select";A=b.undoMgr.finishUndoableChange();A.isEmpty()||
|
||
|
Ga(A);Xa();I("changed",J)}C=ob("mouseUp",{event:s,mouse_x:C,mouse_y:F},true);$.each(C,function(ua,wa){if(wa){P=wa.keep||P;H=wa.element;Ra=wa.started||Ra}});if(!P&&H!=null){z().releaseId(ta());H.parentNode.removeChild(H);H=null;for(C=s.target;C.parentNode.parentNode.tagName=="g";)C=C.parentNode;if((Na!="path"||!drawn_path)&&C.parentNode.id!="selectorParentGroup"&&C.id!="svgcanvas"&&C.id!="svgroot"){b.setMode("select");Qb([C],true)}}else if(H!=null){b.addedNew=true;s=0.2;var R;if(false.beginElement&&
|
||
|
H.getAttribute("opacity")!=N.opacity){R=$(false).clone().attr({to:N.opacity,dur:s}).appendTo(H);try{R[0].beginElement()}catch(aa){}}else s=0;setTimeout(function(){R&&R.remove();H.setAttribute("opacity",N.opacity);H.setAttribute("style","pointer-events:inherit");Y(H);if(Na==="path")Va.toEditMode(H);else m.selectNew&&Qb([H],true);Ga(new Ka(H));I("changed",[H])},s*1E3)}$a=null}}});$(a).bind("mousewheel DOMMouseScroll",function(s){if(s.shiftKey){s.preventDefault();Lb=l.getScreenCTM().inverse();var A=
|
||
|
O(s.pageX,s.pageY,Lb);A={x:A.x,y:A.y,width:0,height:0};if(s.wheelDelta)if(s.wheelDelta>=120)A.factor=2;else{if(s.wheelDelta<=-120)A.factor=0.5}else if(s.detail)if(s.detail>0)A.factor=0.5;else if(s.detail<0)A.factor=2;A.factor&&I("zoomed",A)}})})();var Zb=function(g){$(g).click(function(h){h.preventDefault()})},rb=b.textActions=function(){function g(ha){var ka=F.value==="";$(F).focus();if(!arguments.length)if(ka)ha=0;else{if(F.selectionEnd!==F.selectionStart)return;ha=F.selectionEnd}var oa;oa=H[ha];
|
||
|
ka||F.setSelectionRange(ha,ha);C=la("text_cursor");if(!C){C=document.createElementNS(c,"line");ma(C,{id:"text_cursor",stroke:"#333","stroke-width":1});C=la("selectorParentGroup").appendChild(C)}G||(G=setInterval(function(){var xa=C.getAttribute("display")==="none";C.setAttribute("display",xa?"inline":"none")},600));ka=E(oa.x,P.y);oa=E(oa.x,P.y+P.height);ma(C,{x1:ka.x,y1:ka.y,x2:oa.x,y2:oa.y,visibility:"visible",display:"inline"});D&&D.setAttribute("d","")}function h(ha,ka,oa){if(ha===ka)g(ka);else{oa||
|
||
|
F.setSelectionRange(ha,ka);D=la("text_selectblock");if(!D){D=document.createElementNS(c,"path");ma(D,{id:"text_selectblock",fill:"green",opacity:0.5,style:"pointer-events:none"});la("selectorParentGroup").appendChild(D)}ha=H[ha];var xa=H[ka];C.setAttribute("visibility","hidden");ka=E(ha.x,P.y);oa=E(ha.x+(xa.x-ha.x),P.y);var eb=E(ha.x,P.y+P.height);ha=E(ha.x+(xa.x-ha.x),P.y+P.height);ma(D,{d:"M"+ka.x+","+ka.y+" L"+oa.x+","+oa.y+" "+ha.x+","+ha.y+" "+eb.x+","+eb.y+"z",display:"inline"})}}function k(ha,
|
||
|
ka){var oa=e.createSVGPoint();oa.x=ha;oa.y=ka;if(H.length==1)return 0;oa=A.getCharNumAtPosition(oa);if(oa<0){oa=H.length-2;if(ha<=H[0].x)oa=0}else if(oa>=H.length-2)oa=H.length-2;var xa=H[oa];ha>xa.x+xa.width/2&&oa++;return oa}function v(ha,ka,oa){var xa=F.selectionStart;ha=k(ha,ka);h(Math.min(xa,ha),Math.max(xa,ha),!oa)}function t(ha,ka){var oa={x:ha,y:ka};oa.x/=o;oa.y/=o;if(R){var xa=O(oa.x,oa.y,R.inverse());oa.x=xa.x;oa.y=xa.y}return oa}function E(ha,ka){var oa={x:ha,y:ka};if(R){var xa=O(oa.x,
|
||
|
oa.y,R);oa.x=xa.x;oa.y=xa.y}oa.x*=o;oa.y*=o;return oa}function w(ha){h(0,A.textContent.length);$(this).unbind(ha)}function s(ha){if(wa&&A){var ka=O(ha.pageX,ha.pageY,Lb);ka=t(ka.x*o,ka.y*o);ka=k(ka.x,ka.y);var oa=A.textContent,xa=oa.substr(0,ka).replace(/[a-z0-9]+$/i,"").length;oa=oa.substr(ka).match(/^[a-z0-9]+/i);h(xa,(oa?oa[0].length:0)+ka);$(ha.target).click(w);setTimeout(function(){$(ha.target).unbind("click",w)},300)}}var A,F,C,D,G,H=[],P,R,aa,ua,wa;return{select:function(ha,ka,oa){A=ha;rb.toEditMode(ka,
|
||
|
oa)},start:function(ha){A=ha;rb.toEditMode()},mouseDown:function(ha,ka,oa,xa){ha=t(oa,xa);F.focus();g(k(ha.x,ha.y));aa=oa;ua=xa},mouseMove:function(ha,ka){var oa=t(ha,ka);v(oa.x,oa.y)},mouseUp:function(ha,ka,oa){var xa=t(ka,oa);v(xa.x,xa.y,true);ha.target!==A&&ka<aa+2&&ka>aa-2&&oa<ua+2&&oa>ua-2&&rb.toSelectMode(true)},setCursor:g,toEditMode:function(ha,ka){wa=false;Na="textedit";Oa.requestSelector(A).showGrips(false);Oa.requestSelector(A);rb.init();$(A).css("cursor","text");if(arguments.length){var oa=
|
||
|
t(ha,ka);g(k(oa.x,oa.y))}else g();setTimeout(function(){wa=true},300)},toSelectMode:function(ha){Na="select";clearInterval(G);G=null;D&&$(D).attr("display","none");C&&$(C).attr("visibility","hidden");$(A).css("cursor","move");if(ha){bb();$(A).css("cursor","move");I("selected",[A]);qb([A],true)}A&&!A.textContent.length&&b.deleteSelectedElements();$(F).blur();A=false},setInputElem:function(ha){F=ha},clear:function(){Na=="textedit"&&rb.toSelectMode()},init:function(){if(A){if(!A.parentNode){A=J[0];Oa.requestSelector(A).showGrips(false)}var ha=
|
||
|
A.textContent.length,ka=A.getAttribute("transform");P=svgedit.utilities.getBBox(A);R=ka?ea(A):null;H=Array(ha);F.focus();$(A).unbind("dblclick",s).dblclick(s);if(!ha)var oa={x:P.x+P.width/2,width:0};for(ka=0;ka<ha;ka++){var xa=A.getStartPositionOfChar(ka);oa=A.getEndPositionOfChar(ka);if(!svgedit.browser.supportsGoodTextCharPos()){var eb=b.contentW*o;xa.x-=eb;oa.x-=eb;xa.x/=o;oa.x/=o}H[ka]={x:xa.x,y:P.y,width:oa.x-xa.x,height:P.height}}H.push({x:oa.x,width:0});h(F.selectionStart,F.selectionEnd,true)}}}}(),
|
||
|
Va=b.pathActions=function(){var g=false,h,k,v;svgedit.path.Path.prototype.endChanges=function(w){if(svgedit.browser.isWebkit()){var s=this.elem;s.setAttribute("d",Va.convertPath(s))}w=new Wa(this.elem,{d:this.last_d},w);Ga(w);I("changed",[this.elem])};svgedit.path.Path.prototype.addPtsToSelection=function(w){$.isArray(w)||(w=[w]);for(var s=0;s<w.length;s++){var A=w[s],F=this.segs[A];F.ptgrip&&this.selected_pts.indexOf(A)==-1&&A>=0&&this.selected_pts.push(A)}this.selected_pts.sort();s=this.selected_pts.length;
|
||
|
for(w=Array(s);s--;){F=this.segs[this.selected_pts[s]];F.select(true);w[s]=F.ptgrip}Va.canDeleteNodes=true;Va.closed_subpath=this.subpathIsClosed(this.selected_pts[0]);I("selected",w)};var t=h=null,E=false;return{mouseDown:function(w,s,A,F){if(Na==="path"){mouse_x=A;mouse_y=F;F=mouse_x/o;s=mouse_y/o;A=la("path_stretch_line");k=[F,s];if(m.gridSnapping){F=Fa(F);s=Fa(s);mouse_x=Fa(mouse_x);mouse_y=Fa(mouse_y)}if(!A){A=document.createElementNS(c,"path");ma(A,{id:"path_stretch_line",stroke:"#22C","stroke-width":"0.5",
|
||
|
fill:"none"});A=la("selectorParentGroup").appendChild(A)}A.setAttribute("display","inline");var C=null;if(t){C=t.pathSegList;for(var D=C.numberOfItems,G=6/o,H=false;D;){D--;var P=C.getItem(D),R=P.x;P=P.y;if(F>=R-G&&F<=R+G&&s>=P-G&&s<=P+G){H=true;break}}G=ta();svgedit.path.removePath_(G);G=la(G);R=C.numberOfItems;if(H){if(D<=1&&R>=2){F=C.getItem(0).x;s=C.getItem(0).y;w=A.pathSegList.getItem(1);w=w.pathSegType===4?t.createSVGPathSegLinetoAbs(F,s):t.createSVGPathSegCurvetoCubicAbs(F,s,w.x1/o,w.y1/o,
|
||
|
F,s);F=t.createSVGPathSegClosePath();C.appendItem(w);C.appendItem(F)}else if(R<3)return C=false;$(A).remove();element=G;t=null;Ra=false;if(g){svgedit.path.path.matrix&&xb(G,{},svgedit.path.path.matrix.inverse());A=G.getAttribute("d");w=$(svgedit.path.path.elem).attr("d");$(svgedit.path.path.elem).attr("d",w+A);$(G).remove();svgedit.path.path.matrix&&svgedit.path.recalcRotatedPath();svgedit.path.path.init();Va.toEditMode(svgedit.path.path.elem);svgedit.path.path.selectPt();return false}}else{if(!$.contains(a,
|
||
|
$b(w))){console.log("Clicked outside canvas");return false}C=t.pathSegList.numberOfItems;D=t.pathSegList.getItem(C-1);G=D.x;D=D.y;if(w.shiftKey){w=ca(G,D,F,s);F=w.x;s=w.y}w=A.pathSegList.getItem(1);w=w.pathSegType===4?t.createSVGPathSegLinetoAbs(Cb(F),Cb(s)):t.createSVGPathSegCurvetoCubicAbs(Cb(F),Cb(s),w.x1/o,w.y1/o,w.x2/o,w.y2/o);t.pathSegList.appendItem(w);F*=o;s*=o;A.setAttribute("d",["M",F,s,F,s].join(" "));A=C;if(g)A+=svgedit.path.path.segs.length;svgedit.path.addPointGrip(A,F,s)}}else{d_attr=
|
||
|
"M"+F+","+s+" ";t=da({element:"path",curStyles:true,attr:{d:d_attr,id:M(),opacity:N.opacity/2}});A.setAttribute("d",["M",mouse_x,mouse_y,mouse_x,mouse_y].join(" "));A=g?svgedit.path.path.segs.length:0;svgedit.path.addPointGrip(A,mouse_x,mouse_y)}}else if(svgedit.path.path){svgedit.path.path.storeD();G=w.target.id;if(G.substr(0,14)=="pathpointgrip_"){s=svgedit.path.path.cur_pt=parseInt(G.substr(14));svgedit.path.path.dragging=[A,F];C=svgedit.path.path.segs[s];if(w.shiftKey)C.selected?svgedit.path.path.removePtFromSelection(s):
|
||
|
svgedit.path.path.addPtsToSelection(s);else{if(svgedit.path.path.selected_pts.length<=1||!C.selected)svgedit.path.path.clearSelection();svgedit.path.path.addPtsToSelection(s)}}else if(G.indexOf("ctrlpointgrip_")==0){svgedit.path.path.dragging=[A,F];w=G.split("_")[1].split("c");s=w[0]-0;svgedit.path.path.selectPt(s,w[1]-0)}if(!svgedit.path.path.dragging){if(Ca==null)Ca=Oa.getRubberBandBox();ma(Ca,{x:A*o,y:F*o,width:0,height:0,display:"inline"},100)}}},mouseMove:function(w,s,A){E=true;if(Na==="path"){if(t){var F=
|
||
|
t.pathSegList;w=F.numberOfItems-1;if(k){var C=svgedit.path.addCtrlGrip("1c1"),D=svgedit.path.addCtrlGrip("0c2");D.getAttribute("cx");D.getAttribute("cy");C.setAttribute("cx",s);C.setAttribute("cy",A);C.setAttribute("display","inline");C=k[0];var G=k[1];F.getItem(w);var H=C+(C-s/o),P=G+(G-A/o);D.setAttribute("cx",H*o);D.setAttribute("cy",P*o);D.setAttribute("display","inline");D=svgedit.path.getCtrlLine(1);var R=svgedit.path.getCtrlLine(2);ma(D,{x1:s,y1:A,x2:C*o,y2:G*o,display:"inline"});ma(R,{x1:H*
|
||
|
o,y1:P*o,x2:C*o,y2:G*o,display:"inline"});if(w===0)v=[s,A];else{F=F.getItem(w-1);s=F.x;A=F.y;if(F.pathSegType===6){s+=s-F.x2;A+=A-F.y2}else if(v){s=v[0]/o;A=v[1]/o}svgedit.path.replacePathSeg(6,w,[C,G,s,A,H,P],t)}}else if(C=la("path_stretch_line")){w=F.getItem(w);if(w.pathSegType===6)svgedit.path.replacePathSeg(6,1,[s,A,(w.x+(w.x-w.x2))*o,(w.y+(w.y-w.y2))*o,s,A],C);else v?svgedit.path.replacePathSeg(6,1,[s,A,v[0],v[1],s,A],C):svgedit.path.replacePathSeg(4,1,[s,A],C)}}}else if(svgedit.path.path.dragging){C=
|
||
|
svgedit.path.getPointFromGrip({x:svgedit.path.path.dragging[0],y:svgedit.path.path.dragging[1]},svgedit.path.path);G=svgedit.path.getPointFromGrip({x:s,y:A},svgedit.path.path);w=G.x-C.x;C=G.y-C.y;svgedit.path.path.dragging=[s,A];svgedit.path.path.dragctrl?svgedit.path.path.moveCtrl(w,C):svgedit.path.path.movePts(w,C)}else{svgedit.path.path.selected_pts=[];svgedit.path.path.eachSeg(function(){if(this.next||this.prev){var aa=Ca.getBBox(),ua=svgedit.path.getGripPt(this);aa=svgedit.math.rectsIntersect(aa,
|
||
|
{x:ua.x,y:ua.y,width:0,height:0});this.select(aa);aa&&svgedit.path.path.selected_pts.push(this.index)}})}},mouseUp:function(w,s){if(Na==="path"){k=null;if(!t){s=la(ta());Ra=false;v=null}return{keep:true,element:s}}if(svgedit.path.path.dragging){var A=svgedit.path.path.cur_pt;svgedit.path.path.dragging=false;svgedit.path.path.dragctrl=false;svgedit.path.path.update();E&&svgedit.path.path.endChanges("Move path point(s)");!w.shiftKey&&!E&&svgedit.path.path.selectPt(A)}else if(Ca&&Ca.getAttribute("display")!=
|
||
|
"none"){Ca.setAttribute("display","none");Ca.getAttribute("width")<=2&&Ca.getAttribute("height")<=2&&Va.toSelectMode(w.target)}else Va.toSelectMode(w.target);E=false},toEditMode:function(w){svgedit.path.path=svgedit.path.getPath_(w);Na="pathedit";bb();svgedit.path.path.show(true).update();svgedit.path.path.oldbbox=svgedit.utilities.getBBox(svgedit.path.path.elem);g=false},toSelectMode:function(w){var s=w==svgedit.path.path.elem;Na="select";svgedit.path.path.show(false);h=false;bb();svgedit.path.path.matrix&&
|
||
|
svgedit.path.recalcRotatedPath();if(s){I("selected",[w]);qb([w],true)}},addSubPath:function(w){if(w){Na="path";g=true}else{Va.clear(true);Va.toEditMode(svgedit.path.path.elem)}},select:function(w){if(h===w){Va.toEditMode(w);Na="pathedit"}else h=w},reorient:function(){var w=J[0];if(w)if(ra(w)!=0){var s=new La("Reorient path"),A={d:w.getAttribute("d"),transform:w.getAttribute("transform")};s.addSubCommand(new Wa(w,A));bb();this.resetOrientation(w);Ga(s);svgedit.path.getPath_(w).show(false).matrix=null;
|
||
|
this.clear();qb([w],true);I("changed",J)}},clear:function(){h=null;if(t){var w=la(ta());$(la("path_stretch_line")).remove();$(w).remove();$(la("pathpointgrip_container")).find("*").attr("display","none");t=v=null;Ra=false}else Na=="pathedit"&&this.toSelectMode();svgedit.path.path&&svgedit.path.path.init().show(false)},resetOrientation:function(w){if(w==null||w.nodeName!="path")return false;var s=V(w),A=ja(s).matrix;s.clear();w.removeAttribute("transform");s=w.pathSegList;for(var F=s.numberOfItems,
|
||
|
C=0;C<F;++C){var D=s.getItem(C),G=D.pathSegType;if(G!=1){var H=[];$.each(["",1,2],function(P,R){var aa=D["x"+R],ua=D["y"+R];if(aa!==undefined&&ua!==undefined){aa=O(aa,ua,A);H.splice(H.length,0,aa.x,aa.y)}});svgedit.path.replacePathSeg(G,C,H,w)}}f(w,A)},zoomChange:function(){Na=="pathedit"&&svgedit.path.path.update()},getNodePoint:function(){var w=svgedit.path.path.segs[svgedit.path.path.selected_pts.length?svgedit.path.path.selected_pts[0]:1];return{x:w.item.x,y:w.item.y,type:w.type}},linkControlPoints:function(w){svgedit.path.setLinkControlPoints(w)},
|
||
|
clonePathNode:function(){svgedit.path.path.storeD();for(var w=svgedit.path.path.selected_pts,s=w.length,A=[];s--;){var F=w[s];svgedit.path.path.addSeg(F);A.push(F+s);A.push(F+s+1)}svgedit.path.path.init().addPtsToSelection(A);svgedit.path.path.endChanges("Clone path node(s)")},opencloseSubPath:function(){var w=svgedit.path.path.selected_pts;if(w.length===1){var s=svgedit.path.path.elem,A=s.pathSegList,F=w[0],C=null,D=null;svgedit.path.path.eachSeg(function(R){if(this.type===2&&R<=F)D=this.item;if(R<=
|
||
|
F)return true;if(this.type===2){C=R;return false}else if(this.type===1)return C=false});if(C==null)C=svgedit.path.path.segs.length-1;if(C!==false){var G=s.createSVGPathSegLinetoAbs(D.x,D.y),H=s.createSVGPathSegClosePath();if(C==svgedit.path.path.segs.length-1){A.appendItem(G);A.appendItem(H)}else{svgedit.path.insertItemBefore(s,H,C);svgedit.path.insertItemBefore(s,G,C)}svgedit.path.path.init().selectPt(C+1)}else if(svgedit.path.path.segs[F].mate){A.removeItem(F);A.removeItem(F);svgedit.path.path.init().selectPt(F-
|
||
|
1)}else{for(w=0;w<A.numberOfItems;w++){var P=A.getItem(w);if(P.pathSegType===2)G=w;else if(w===F)A.removeItem(G);else if(P.pathSegType===1&&F<w){H=w-1;A.removeItem(w);break}}for(w=F-G-1;w--;)svgedit.path.insertItemBefore(s,A.getItem(G),H);s=A.getItem(G);svgedit.path.replacePathSeg(2,G,[s.x,s.y]);w=F;svgedit.path.path.init().selectPt(0)}}},deletePathNode:function(){if(Va.canDeleteNodes){svgedit.path.path.storeD();for(var w=svgedit.path.path.selected_pts,s=w.length;s--;)svgedit.path.path.deleteSeg(w[s]);
|
||
|
var A=function(){var F=svgedit.path.path.elem.pathSegList,C=F.numberOfItems,D=function(P,R){for(;R--;)F.removeItem(P)};if(C<=1)return true;for(;C--;){var G=F.getItem(C);if(G.pathSegType===1){G=F.getItem(C-1);var H=F.getItem(C-2);if(G.pathSegType===2){D(C-1,2);A();break}else if(H.pathSegType===2){D(C-2,3);A();break}}else if(G.pathSegType===2)if(C>0){G=F.getItem(C-1).pathSegType;if(G===2){D(C-1,1);A();break}else if(G===1&&F.numberOfItems-1===C){D(C,1);A();break}}}return false};A();if(svgedit.path.path.elem.pathSegList.numberOfItems<=
|
||
|
1){Va.toSelectMode(svgedit.path.path.elem);b.deleteSelectedElements()}else{svgedit.path.path.init();svgedit.path.path.clearSelection();if(window.opera){w=$(svgedit.path.path.elem);w.attr("d",w.attr("d"))}svgedit.path.path.endChanges("Delete path node(s)")}}},smoothPolylineIntoPath:function(w){var s=w.points,A=s.numberOfItems;if(A>=4){var F=s.getItem(0),C=null;w=[];w.push(["M",F.x,",",F.y," C"].join(""));for(var D=1;D<=A-4;D+=3){var G=s.getItem(D),H=s.getItem(D+1),P=s.getItem(D+2);if(C)if((F=svgedit.path.smoothControlPoints(C,
|
||
|
G,F))&&F.length==2){G=w[w.length-1].split(",");G[2]=F[0].x;G[3]=F[0].y;w[w.length-1]=G.join(",");G=F[1]}w.push([G.x,G.y,H.x,H.y,P.x,P.y].join(","));F=P;C=H}for(w.push("L");D<A;++D){H=s.getItem(D);w.push([H.x,H.y].join(","))}w=w.join(" ");w=da({element:"path",curStyles:true,attr:{id:ta(),d:w,fill:"none"}})}return w},setSegType:function(w){svgedit.path.path.setSegType(w)},moveNode:function(w,s){var A=svgedit.path.path.selected_pts;if(A.length){svgedit.path.path.storeD();A=svgedit.path.path.segs[A[0]];
|
||
|
var F={x:0,y:0};F[w]=s-A.item[w];A.move(F.x,F.y);svgedit.path.path.endChanges("Move path point")}},fixEnd:function(w){for(var s=w.pathSegList,A=s.numberOfItems,F,C=0;C<A;++C){var D=s.getItem(C);if(D.pathSegType===2)F=D;if(D.pathSegType===1){D=s.getItem(C-1);if(D.x!=F.x||D.y!=F.y){s=w.createSVGPathSegLinetoAbs(F.x,F.y);svgedit.path.insertItemBefore(w,s,C);Va.fixEnd(w);break}}}svgedit.browser.isWebkit()&&w.setAttribute("d",Va.convertPath(w))},convertPath:function(w,s){for(var A=w.pathSegList,F=A.numberOfItems,
|
||
|
C=0,D=0,G="",H=null,P=0;P<F;++P){var R=A.getItem(P),aa=R.x||0,ua=R.y||0,wa=R.x1||0,ha=R.y1||0,ka=R.x2||0,oa=R.y2||0,xa=R.pathSegType,eb=db[xa]["to"+(s?"Lower":"Upper")+"Case"](),Db=function(Pb,Jb,Ob){Jb=Jb?" "+Jb.join(" "):"";Ob=Ob?" "+svgedit.units.shortFloat(Ob):"";$.each(Pb,function(bc,kc){Pb[bc]=svgedit.units.shortFloat(kc)});G+=eb+Pb.join(" ")+Jb+Ob};switch(xa){case 1:G+="z";break;case 12:aa-=C;case 13:if(s){C+=aa;eb="l"}else{aa+=C;C=aa;eb="L"}Db([[aa,D]]);break;case 14:ua-=D;case 15:if(s){D+=
|
||
|
ua;eb="l"}else{ua+=D;D=ua;eb="L"}Db([[C,ua]]);break;case 2:case 4:case 18:aa-=C;ua-=D;case 5:case 3:if(H&&A.getItem(P-1).pathSegType===1&&!s){C=H[0];D=H[1]}case 19:if(s){C+=aa;D+=ua}else{aa+=C;ua+=D;C=aa;D=ua}if(xa===3)H=[C,D];Db([[aa,ua]]);break;case 6:aa-=C;wa-=C;ka-=C;ua-=D;ha-=D;oa-=D;case 7:if(s){C+=aa;D+=ua}else{aa+=C;wa+=C;ka+=C;ua+=D;ha+=D;oa+=D;C=aa;D=ua}Db([[wa,ha],[ka,oa],[aa,ua]]);break;case 8:aa-=C;wa-=C;ua-=D;ha-=D;case 9:if(s){C+=aa;D+=ua}else{aa+=C;wa+=C;ua+=D;ha+=D;C=aa;D=ua}Db([[wa,
|
||
|
ha],[aa,ua]]);break;case 10:aa-=C;ua-=D;case 11:if(s){C+=aa;D+=ua}else{aa+=C;ua+=D;C=aa;D=ua}Db([[R.r1,R.r2]],[R.angle,R.largeArcFlag?1:0,R.sweepFlag?1:0],[aa,ua]);break;case 16:aa-=C;ka-=C;ua-=D;oa-=D;case 17:if(s){C+=aa;D+=ua}else{aa+=C;ka+=C;ua+=D;oa+=D;C=aa;D=ua}Db([[ka,oa],[aa,ua]])}}return G}}}(),gc=this.removeUnusedDefElems=function(){var g=l.getElementsByTagNameNS(c,"defs");if(!g||!g.length)return 0;for(var h=[],k=0,v=["fill","stroke","filter","marker-start","marker-mid","marker-end"],t=v.length,
|
||
|
E=l.getElementsByTagNameNS(c,"*"),w=E.length,s=0;s<w;s++){for(var A=E[s],F=0;F<t;F++){var C=pa(A.getAttribute(v[F]));C&&h.push(C.substr(1))}(A=ba(A))&&A.indexOf("#")===0&&h.push(A.substr(1))}g=$(g).find("linearGradient, radialGradient, filter, marker, svg, symbol");defelem_ids=[];for(s=g.length;s--;){v=g[s];t=v.id;if(h.indexOf(t)<0){Bb[t]=v;v.parentNode.removeChild(v);k++}}return k};this.svgCanvasToString=function(){for(;gc()>0;);Va.clear(true);$.each(l.childNodes,function(k,v){k&&v.nodeType===8&&
|
||
|
v.data.indexOf("Created with")>=0&&l.insertBefore(v,l.firstChild)});if(L){ac();Qb([L])}var g=[];$(l).find("g:data(gsvg)").each(function(){for(var k=this.attributes,v=k.length,t=0;t<v;t++)if(k[t].nodeName=="id"||k[t].nodeName=="style")v--;if(v<=0){k=this.firstChild;g.push(k);$(this).replaceWith(k)}});var h=this.svgToString(l,0);g.length&&$(g).each(function(){na(this)});return h};this.svgToString=function(g,h){var k=[],v=svgedit.utilities.toXml,t=m.baseUnit,E=RegExp("^-?[\\d\\.]+"+t+"$");if(g){Y(g);
|
||
|
var w=g.attributes,s,A,F=g.childNodes;for(A=0;A<h;A++)k.push(" ");k.push("<");k.push(g.nodeName);if(g.id==="svgcontent"){A=Vb();if(t!=="px"){A.w=svgedit.units.convertUnit(A.w,t)+t;A.h=svgedit.units.convertUnit(A.h,t)+t}k.push(' width="'+A.w+'" height="'+A.h+'" xmlns="'+c+'"');var C={};$(g).find("*").andSelf().each(function(){$.each(this.attributes,function(P,R){var aa=R.namespaceURI;if(aa&&!C[aa]&&za[aa]!=="xmlns"&&za[aa]!=="xml"){C[aa]=true;k.push(" xmlns:"+za[aa]+'="'+aa+'"')}})});A=w.length;for(t=
|
||
|
["width","height","xmlns","x","y","viewBox","id","overflow"];A--;){s=w.item(A);var D=v(s.nodeValue);if(s.nodeName.indexOf("xmlns:")!==0)if(D!=""&&t.indexOf(s.localName)==-1)if(!s.namespaceURI||za[s.namespaceURI]){k.push(" ");k.push(s.nodeName);k.push('="');k.push(D);k.push('"')}}}else{if(g.nodeName==="defs"&&!g.firstChild)return;var G=["-moz-math-font-style","_moz-math-font-style"];for(A=w.length-1;A>=0;A--){s=w.item(A);D=v(s.nodeValue);if(!(G.indexOf(s.localName)>=0))if(D!="")if(D.indexOf("pointer-events")!==
|
||
|
0)if(!(s.localName==="class"&&D.indexOf("se_")===0)){k.push(" ");if(s.localName==="d")D=Va.convertPath(g,true);if(isNaN(D)){if(E.test(D))D=svgedit.units.shortFloat(D)+t}else D=svgedit.units.shortFloat(D);if(Za.apply&&g.nodeName==="image"&&s.localName==="href"&&Za.images&&Za.images==="embed"){var H=Sa[D];if(H)D=H}if(!s.namespaceURI||s.namespaceURI==c||za[s.namespaceURI]){k.push(s.nodeName);k.push('="');k.push(D);k.push('"')}}}}if(g.hasChildNodes()){k.push(">");h++;w=false;for(A=0;A<F.length;A++){t=
|
||
|
F.item(A);switch(t.nodeType){case 1:k.push("\n");k.push(this.svgToString(F.item(A),h));break;case 3:t=t.nodeValue.replace(/^\s+|\s+$/g,"");if(t!=""){w=true;k.push(v(t)+"")}break;case 4:k.push("\n");k.push(Array(h+1).join(" "));k.push("<![CDATA[");k.push(t.nodeValue);k.push("]]\>");break;case 8:k.push("\n");k.push(Array(h+1).join(" "));k.push("<!--");k.push(t.data);k.push("--\>")}}h--;if(!w){k.push("\n");for(A=0;A<h;A++)k.push(" ")}k.push("</");k.push(g.nodeName);k.push(">")}else k.push("/>")}return k.join("")};
|
||
|
this.embedImage=function(g,h){$(new Image).load(function(){var k=document.createElement("canvas");k.width=this.width;k.height=this.height;k.getContext("2d").drawImage(this,0,0);try{var v=";svgedit_url="+encodeURIComponent(g);v=k.toDataURL().replace(";base64",v+";base64");Sa[g]=v}catch(t){Sa[g]=false}Ja=g;h&&h(Sa[g])}).attr("src",g)};this.setGoodImage=function(g){Ja=g};this.open=function(){};this.save=function(g){bb();g&&$.extend(Za,g);Za.apply=true;g=this.svgCanvasToString();I("saved",g)};this.rasterExport=
|
||
|
function(){bb();var g=[],h={feGaussianBlur:Gb.exportNoBlur,foreignObject:Gb.exportNoforeignObject,"[stroke-dasharray]":Gb.exportNoDashArray},k=$(l);if(!("font"in $("<canvas>")[0].getContext("2d")))h.text=Gb.exportNoText;$.each(h,function(v,t){k.find(v).length&&g.push(t)});h=this.svgCanvasToString();I("exported",{svg:h,issues:g})};this.getSvgString=function(){Za.apply=false;return this.svgCanvasToString()};this.randomizeIds=function(){arguments.length>0&&arguments[0]==false?svgedit.draw.randomizeIds(false,
|
||
|
z()):svgedit.draw.randomizeIds(true,z())};var cc=this.uniquifyElems=function(g){var h={},k=["filter","linearGradient","pattern","radialGradient","symbol","textPath","use"];svgedit.utilities.walkTree(g,function(s){if(s.nodeType==1){if(s.id){s.id in h||(h[s.id]={elem:null,attrs:[],hrefs:[]});h[s.id].elem=s}$.each(Nb,function(F,C){var D=s.getAttributeNode(C);if(D){var G=svgedit.utilities.getUrlFromAttr(D.value);if(G=G?G.substr(1):null){G in h||(h[G]={elem:null,attrs:[],hrefs:[]});h[G].attrs.push(D)}}});
|
||
|
var A=svgedit.utilities.getHref(s);if(A&&k.indexOf(s.nodeName)>=0)if(A=A.substr(1)){A in h||(h[A]={elem:null,attrs:[],hrefs:[]});h[A].hrefs.push(s)}}});for(var v in h)if(v){var t=h[v].elem;if(t){g=M();t.id=g;t=h[v].attrs;for(var E=t.length;E--;){var w=t[E];w.ownerElement.setAttribute(w.name,"url(#"+g+")")}t=h[v].hrefs;for(E=t.length;E--;)svgedit.utilities.setHref(t[E],"#"+g)}}},Ub=this.setUseData=function(g){var h=$(g);if(g.tagName!=="use")h=h.find("use");h.each(function(){var k=ba(this).substr(1);
|
||
|
if(k=la(k)){$(this).data("ref",k);if(k.tagName=="symbol"||k.tagName=="svg")$(this).data("symbol",k).data("ref",k)}})},hc=this.convertGradients=function(g){var h=$(g).find("linearGradient, radialGradient");if(!h.length&&svgedit.browser.isWebkit())h=$(g).find("*").filter(function(){return this.tagName.indexOf("Gradient")>=0});h.each(function(){if($(this).attr("gradientUnits")==="userSpaceOnUse"){var k=$(l).find('[fill="url(#'+this.id+')"],[stroke="url(#'+this.id+')"]');if(k.length)if(k=svgedit.utilities.getBBox(k[0]))if(this.tagName===
|
||
|
"linearGradient"){var v=$(this).attr(["x1","y1","x2","y2"]),t=this.gradientTransform.baseVal;if(t&&t.numberOfItems>0){var E=ja(t).matrix;t=O(v.x1,v.y1,E);E=O(v.x2,v.y2,E);v.x1=t.x;v.y1=t.y;v.x2=E.x;v.y2=E.y;this.removeAttribute("gradientTransform")}$(this).attr({x1:(v.x1-k.x)/k.width,y1:(v.y1-k.y)/k.height,x2:(v.x2-k.x)/k.width,y2:(v.y2-k.y)/k.height});this.removeAttribute("gradientUnits")}}})},lc=this.convertToGroup=function(g){g||(g=J[0]);var h=$(g),k=new La,v;if(h.data("gsvg")){k=$(g.firstChild).attr(["x",
|
||
|
"y"]);$(g.firstChild.firstChild).unwrap();$(g).removeData("gsvg");v=V(g);var t=e.createSVGTransform();t.setTranslate(k.x,k.y);v.appendItem(t);pb(g);I("selected",[g])}else if(h.data("symbol")){g=h.data("symbol");v=h.attr("transform");t=h.attr(["x","y"]);var E=g.getAttribute("viewBox");if(E){E=E.split(" ");t.x-=+E[0];t.y-=+E[1]}v+=" translate("+(t.x||0)+","+(t.y||0)+")";t=h.prev();k.addSubCommand(new Ua(h[0],h[0].nextSibling,h[0].parentNode));h.remove();E=$(l).find("use:data(symbol)").length;h=d.createElementNS(c,
|
||
|
"g");for(var w=g.childNodes,s=0;s<w.length;s++)h.appendChild(w[s].cloneNode(true));if(svgedit.browser.isGecko()){w=$(ub()).children("linearGradient,radialGradient,pattern").clone();$(h).append(w)}v&&h.setAttribute("transform",v);v=g.parentNode;cc(h);svgedit.browser.isGecko()&&$(ub()).append($(h).find("linearGradient,radialGradient,pattern"));h.id=M();t.after(h);if(v){if(!E){t=g.nextSibling;v.removeChild(g);k.addSubCommand(new Ua(g,t,v))}k.addSubCommand(new Ka(h))}Ub(h);svgedit.browser.isGecko()?hc(ub()):
|
||
|
hc(h);svgedit.utilities.walkTreePost(h,function(A){try{pb(A)}catch(F){console.log(F)}});$(h).find("a,circle,ellipse,foreignObject,g,image,line,path,polygon,polyline,rect,svg,text,tspan,use").each(function(){if(!this.id)this.id=M()});Qb([h]);(g=fc(h,true))&&k.addSubCommand(g);Ga(k)}else console.log("Unexpected element to ungroup:",g)};this.setSvgString=function(g){try{var h=svgedit.utilities.text2xml(g);this.prepareSvg(h);var k=new La("Change Source"),v=l.nextSibling,t=e.removeChild(l);k.addSubCommand(new Ua(t,
|
||
|
v,e));l=d.adoptNode?d.adoptNode(h.documentElement):d.importNode(h.documentElement,true);e.appendChild(l);var E=$(l);b.current_drawing_=new svgedit.draw.Drawing(l,u);var w=z().getNonce();w?I("setnonce",w):I("unsetnonce");E.find("image").each(function(){var H=this;Zb(H);var P=ba(this);if(P.indexOf("data:")===0){var R=P.match(/svgedit_url=(.*?);/);if(R){var aa=decodeURIComponent(R[1]);$(new Image).load(function(){H.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",aa)}).attr("src",aa)}}b.embedImage(P)});
|
||
|
E.find("svg").each(function(){if(!$(this).closest("defs").length){cc(this);var H=this.parentNode;if(H.childNodes.length===1&&H.nodeName==="g"){$(H).data("gsvg",this);H.id=H.id||M()}else na(this)}});svgedit.browser.isGecko()&&E.find("linearGradient, radialGradient, pattern").appendTo(ub());Ub(E);hc(E[0]);svgedit.utilities.walkTreePost(l,function(H){try{pb(H)}catch(P){console.log(P)}});var s={id:"svgcontent",overflow:m.show_outside_canvas?"visible":"hidden"},A=false;if(E.attr("viewBox")){var F=E.attr("viewBox").split(" ");
|
||
|
s.width=F[2];s.height=F[3]}else $.each(["width","height"],function(H,P){var R=E.attr(P);R||(R="100%");if((R+"").substr(-1)==="%")A=true;else s[P]=qa(P,R)});Wb();E.children().find("a,circle,ellipse,foreignObject,g,image,line,path,polygon,polyline,rect,svg,text,tspan,use").each(function(){if(!this.id)this.id=M()});if(A){var C=getStrokedBBox();s.width=C.width+C.x;s.height=C.height+C.y}if(s.width<=0)s.width=100;if(s.height<=0)s.height=100;E.attr(s);this.contentW=s.width;this.contentH=s.height;k.addSubCommand(new Ka(l));
|
||
|
var D=E.attr(["width","height"]);k.addSubCommand(new Wa(e,D));o=1;svgedit.transformlist.resetListMap();bb();svgedit.path.clearData();e.appendChild(Oa.selectorParentGroup);Ga(k);I("changed",[l])}catch(G){console.log(G);return false}return true};this.importSvgString=function(g){try{var h=svgedit.utilities.encode64(g.length+g).substr(0,32),k=false;if(Ab[h])if($(Ab[h].symbol).parents("#svgroot").length)k=true;var v=new La("Import SVG");if(k)var t=Ab[h].symbol,E=Ab[h].xform;else{var w=svgedit.utilities.text2xml(g);
|
||
|
this.prepareSvg(w);var s;s=d.adoptNode?d.adoptNode(w.documentElement):d.importNode(w.documentElement,true);cc(s);var A=qa("width",s.getAttribute("width")),F=qa("height",s.getAttribute("height")),C=s.getAttribute("viewBox"),D=C?C.split(" "):[0,0,A,F];for(g=0;g<4;++g)D[g]=+D[g];l.getAttribute("width");var G=+l.getAttribute("height");E=F>A?"scale("+G/3/D[3]+")":"scale("+G/3/D[2]+")";E="translate(0) "+E+" translate(0)";t=d.createElementNS(c,"symbol");var H=ub();for(svgedit.browser.isGecko()&&$(s).find("linearGradient, radialGradient, pattern").appendTo(H);s.firstChild;)t.appendChild(s.firstChild);
|
||
|
var P=s.attributes;for(s=0;s<P.length;s++){var R=P[s];t.setAttribute(R.nodeName,R.nodeValue)}t.id=M();Ab[h]={symbol:t,xform:E};ub().appendChild(t);v.addSubCommand(new Ka(t))}var aa=d.createElementNS(c,"use");aa.id=M();S(aa,"#"+t.id);(L||z().getCurrentLayer()).appendChild(aa);v.addSubCommand(new Ka(aa));bb();aa.setAttribute("transform",E);pb(aa);$(aa).data("symbol",t).data("ref",t);qb([aa]);Ga(v);I("changed",[l])}catch(ua){console.log(ua);return false}return true};var Wb=b.identifyLayers=function(){ac();
|
||
|
z().identifyLayers()};this.createLayer=function(g){var h=new La("Create Layer");g=z().createLayer(g);h.addSubCommand(new Ka(g));Ga(h);bb();I("changed",[g])};this.cloneLayer=function(g){var h=new La("Duplicate Layer"),k=d.createElementNS(c,"g"),v=d.createElementNS(c,"title");v.textContent=g;k.appendChild(v);v=z().getCurrentLayer();$(v).after(k);v=v.childNodes;for(var t=0;t<v.length;t++){var E=v[t];E.localName!="title"&&k.appendChild(Z(E))}bb();Wb();h.addSubCommand(new Ka(k));Ga(h);b.setCurrentLayer(g);
|
||
|
I("changed",[k])};this.deleteCurrentLayer=function(){var g=z().getCurrentLayer(),h=g.nextSibling,k=g.parentNode;if(g=z().deleteCurrentLayer()){var v=new La("Delete Layer");v.addSubCommand(new Ua(g,h,k));Ga(v);bb();I("changed",[k]);return true}return false};this.setCurrentLayer=function(g){(g=z().setCurrentLayer(svgedit.utilities.toXml(g)))&&bb();return g};this.renameCurrentLayer=function(g){var h=z();if(h.current_layer){var k=h.current_layer;if(!b.setCurrentLayer(g)){for(var v=new La("Rename Layer"),
|
||
|
t=0;t<h.getNumLayers();++t)if(h.all_layers[t][1]==k)break;var E=h.getLayerName(t);h.all_layers[t][0]=svgedit.utilities.toXml(g);var w=k.childNodes.length;for(t=0;t<w;++t){var s=k.childNodes.item(t);if(s&&s.tagName=="title"){for(;s.firstChild;)s.removeChild(s.firstChild);s.textContent=g;v.addSubCommand(new Wa(s,{"#text":E}));Ga(v);I("changed",[k]);return true}}}h.current_layer=k}return false};this.setCurrentLayerPosition=function(g){var h=z();if(h.current_layer&&g>=0&&g<h.getNumLayers()){for(var k=
|
||
|
0;k<h.getNumLayers();++k)if(h.all_layers[k][1]==h.current_layer)break;if(k==h.getNumLayers())return false;if(k!=g){var v=null,t=h.current_layer.nextSibling;if(g>k){if(g<h.getNumLayers()-1)v=h.all_layers[g+1][1]}else v=h.all_layers[g][1];l.insertBefore(h.current_layer,v);Ga(new Qa(h.current_layer,t,l));Wb();b.setCurrentLayer(h.getLayerName(g));return true}}return false};this.setLayerVisibility=function(g,h){var k=z(),v=k.getLayerVisibility(g),t=k.setLayerVisibility(g,h);if(t)Ga(new Wa(t,{display:v?
|
||
|
"inline":"none"},"Layer Visibility"));else return false;if(t==k.getCurrentLayer()){bb();Va.clear()}return true};this.moveSelectedToLayer=function(g){for(var h=null,k=z(),v=0;v<k.getNumLayers();++v)if(k.getLayerName(v)==g){h=k.all_layers[v][1];break}if(!h)return false;g=new La("Move Elements to Layer");k=J;for(v=k.length;v--;){var t=k[v];if(t){var E=t.nextSibling,w=t.parentNode;h.appendChild(t);g.addSubCommand(new Qa(t,E,w))}}Ga(g);return true};this.mergeLayer=function(g){var h=new La("Merge Layer"),
|
||
|
k=z(),v=$(k.current_layer).prev()[0];if(v){for(h.addSubCommand(new Ua(k.current_layer,k.current_layer.nextSibling,l));k.current_layer.firstChild;){var t=k.current_layer.firstChild;if(t.localName=="title"){h.addSubCommand(new Ua(t,t.nextSibling,k.current_layer));k.current_layer.removeChild(t)}else{var E=t.nextSibling;v.appendChild(t);h.addSubCommand(new Qa(t,E,k.current_layer))}}l.removeChild(k.current_layer);if(!g){bb();Wb();I("changed",[l]);Ga(h)}k.current_layer=v;return h}};this.mergeAllLayers=
|
||
|
function(){var g=new La("Merge all Layers"),h=z();for(h.current_layer=h.all_layers[h.getNumLayers()-1][1];$(l).children("g").length>1;)g.addSubCommand(b.mergeLayer(true));bb();Wb();I("changed",[l]);Ga(g)};var ac=this.leaveContext=function(){var g=Ea.length;if(g){for(var h=0;h<g;h++){var k=Ea[h],v=lb(k,"orig_opac");v!==1?k.setAttribute("opacity",v):k.removeAttribute("opacity");k.setAttribute("style","pointer-events: inherit")}Ea=[];bb(true);I("contextset",null)}L=null},nc=this.setContext=function(g){ac();
|
||
|
if(typeof g==="string")g=la(g);L=g;$(g).parentsUntil("#svgcontent").andSelf().siblings().each(function(){var h=this.getAttribute("opacity")||1;lb(this,"orig_opac",h);this.setAttribute("opacity",h*0.33);this.setAttribute("style","pointer-events: none");Ea.push(this)});bb();I("contextset",L)};this.clear=function(){Va.clear();bb();b.clearSvgContentElement();b.current_drawing_=new svgedit.draw.Drawing(l);b.createLayer("Layer 1");b.undoMgr.resetUndoStack();Oa.initGroup();Ca=Oa.getRubberBandBox();I("cleared")};
|
||
|
this.linkControlPoints=Va.linkControlPoints;this.getContentElem=function(){return l};this.getRootElem=function(){return e};this.getSelectedElems=function(){return J};var Vb=this.getResolution=function(){var g=l.getAttribute("width")/o,h=l.getAttribute("height")/o;return{w:g,h:h,zoom:o}};this.getZoom=function(){return o};this.getVersion=function(){return"svgcanvas.js ($Rev: 2082 $)"};this.setUiStrings=function(g){$.extend(Gb,g.notification)};this.setConfig=function(g){$.extend(m,g)};this.getTitle=
|
||
|
function(g){if(g=g||J[0]){g=$(g).data("gsvg")||$(g).data("symbol")||g;g=g.childNodes;for(var h=0;h<g.length;h++)if(g[h].nodeName=="title")return g[h].textContent;return""}};this.setGroupTitle=function(g){var h=J[0];h=$(h).data("gsvg")||h;var k=$(h).children("title"),v=new La("Set Label");if(g.length)if(k.length){k=k[0];v.addSubCommand(new Wa(k,{"#text":k.textContent}));k.textContent=g}else{k=d.createElementNS(c,"title");k.textContent=g;$(h).prepend(k);v.addSubCommand(new Ka(k))}else{v.addSubCommand(new Ua(k[0],
|
||
|
k.nextSibling,h));k.remove()}Ga(v)};this.getDocumentTitle=function(){return b.getTitle(l)};this.setDocumentTitle=function(g){for(var h=l.childNodes,k=false,v="",t=new La("Change Image Title"),E=0;E<h.length;E++)if(h[E].nodeName=="title"){k=h[E];v=k.textContent;break}if(!k){k=d.createElementNS(c,"title");l.insertBefore(k,l.firstChild)}if(g.length)k.textContent=g;else k.parentNode.removeChild(k);t.addSubCommand(new Wa(k,{"#text":v}));Ga(t)};this.getEditorNS=function(g){g&&l.setAttribute("xmlns:se",
|
||
|
"http://svg-edit.googlecode.com");return"http://svg-edit.googlecode.com"};this.setResolution=function(g,h){var k=Vb(),v=k.w;k=k.h;var t;if(g=="fit"){var E=getStrokedBBox();if(E){t=new La("Fit Canvas to Content");var w=Ib();qb(w);var s=[],A=[];$.each(w,function(){s.push(E.x*-1);A.push(E.y*-1)});w=b.moveSelectedElements(s,A,true);t.addSubCommand(w);bb();g=Math.round(E.width);h=Math.round(E.height)}else return false}if(g!=v||h!=k){w=e.suspendRedraw(1E3);t||(t=new La("Change Image Dimensions"));g=qa("width",
|
||
|
g);h=qa("height",h);l.setAttribute("width",g);l.setAttribute("height",h);this.contentW=g;this.contentH=h;t.addSubCommand(new Wa(l,{width:v,height:k}));l.setAttribute("viewBox",[0,0,g/o,h/o].join(" "));t.addSubCommand(new Wa(l,{viewBox:["0 0",v,k].join(" ")}));Ga(t);e.unsuspendRedraw(w);I("changed",[l])}return true};this.getOffset=function(){return $(l).attr(["x","y"])};this.setBBoxZoom=function(g,h,k){var v=0.85,t=function(E){if(!E)return false;var w=Math.min(Math.round(h/E.width*100*v)/100,Math.round(k/
|
||
|
E.height*100*v)/100);b.setZoom(w);return{zoom:w,bbox:E}};if(typeof g=="object"){g=g;if(g.width==0||g.height==0){b.setZoom(g.zoom?g.zoom:o*g.factor);return{zoom:o,bbox:g}}return t(g)}switch(g){case "selection":if(!J[0])return;g=$.map(J,function(E){if(E)return E});g=getStrokedBBox(g);break;case "canvas":g=Vb();v=0.95;g={width:g.w,height:g.h,x:0,y:0};break;case "content":g=getStrokedBBox();break;case "layer":g=getStrokedBBox(Ib(z().getCurrentLayer()));break;default:return}return t(g)};this.setZoom=function(g){var h=
|
||
|
Vb();l.setAttribute("viewBox","0 0 "+h.w/g+" "+h.h/g);o=g;$.each(J,function(k,v){v&&Oa.requestSelector(v).resize()});Va.zoomChange();ob("zoomChanged",g)};this.getMode=function(){return Na};this.setMode=function(g){Va.clear(true);rb.clear();$("#workarea").attr("class",g);jb=J[0]&&J[0].nodeName=="text"?cb:N;Na=g};this.getColor=function(g){return jb[g]};this.setColor=function(g,h,k){N[g]=h;jb[g+"_paint"]={type:"solidColor"};for(var v=[],t=J.length;t--;){var E=J[t];if(E)if(E.tagName=="g")svgedit.utilities.walkTree(E,
|
||
|
function(w){w.nodeName!="g"&&v.push(w)});else if(g=="fill")E.tagName!="polyline"&&E.tagName!="line"&&v.push(E);else v.push(E)}if(v.length>0)if(k)Sb(g,h,v);else{vb(g,h,v);I("changed",v)}};var ub=function(){var g=l.getElementsByTagNameNS(c,"defs");if(g.length>0)g=g[0];else{g=d.createElementNS(c,"defs");l.firstChild?l.insertBefore(g,l.firstChild.nextSibling):l.appendChild(g)}return g},ic=this.setGradient=function(g){if(!(!jb[g+"_paint"]||jb[g+"_paint"].type=="solidColor")){var h=b[g+"Grad"],k=dc(h),
|
||
|
v=ub();if(k)h=k;else{h=v.appendChild(d.importNode(h,true));h.id=M()}b.setColor(g,"url(#"+h.id+")")}},dc=function(g){var h=ub();h=$(h).find("linearGradient, radialGradient");for(var k=h.length,v=["r","cx","cy","fx","fy"];k--;){var t=h[k];if(g.tagName=="linearGradient"){if(g.getAttribute("x1")!=t.getAttribute("x1")||g.getAttribute("y1")!=t.getAttribute("y1")||g.getAttribute("x2")!=t.getAttribute("x2")||g.getAttribute("y2")!=t.getAttribute("y2"))continue}else{var E=$(g).attr(v),w=$(t).attr(v),s=false;
|
||
|
$.each(v,function(H,P){if(E[P]!=w[P])s=true});if(s)continue}var A=g.getElementsByTagNameNS(c,"stop"),F=t.getElementsByTagNameNS(c,"stop");if(A.length==F.length){for(var C=A.length;C--;){var D=A[C],G=F[C];if(D.getAttribute("offset")!=G.getAttribute("offset")||D.getAttribute("stop-opacity")!=G.getAttribute("stop-opacity")||D.getAttribute("stop-color")!=G.getAttribute("stop-color"))break}if(C==-1)return t}}return null};this.setPaint=function(g,h){var k=new $.jGraduate.Paint(h);this.setPaintOpacity(g,
|
||
|
k.alpha/100,true);jb[g+"_paint"]=k;switch(k.type){case "solidColor":if(k.solidColor!="none")this.setColor(g,"#"+k.solidColor);else{this.setColor(g,"none");document.querySelector(g=="fill"?"#fill_color rect":"#stroke_color rect").setAttribute("fill","transparent")}break;case "linearGradient":case "radialGradient":b[g+"Grad"]=k[k.type];ic(g)}};this.getStrokeWidth=function(){return jb.stroke_width};this.setStrokeWidth=function(g){if(g==0&&["line","path"].indexOf(Na)>=0)b.setStrokeWidth(1);else{jb.stroke_width=
|
||
|
g;for(var h=[],k=J.length;k--;){var v=J[k];if(v)v.tagName=="g"?svgedit.utilities.walkTree(v,function(t){t.nodeName!="g"&&h.push(t)}):h.push(v)}if(h.length>0){vb("stroke-width",g,h);I("changed",J)}}};this.setStrokeAttr=function(g,h){N[g.replace("-","_")]=h;for(var k=[],v=J.length;v--;){var t=J[v];if(t)t.tagName=="g"?svgedit.utilities.walkTree(t,function(E){E.nodeName!="g"&&k.push(E)}):k.push(t)}if(k.length>0){vb(g,h,k);I("changed",J)}};this.getStyle=function(){return N};this.getOpacity=function(){return N.opacity};
|
||
|
this.setOpacity=function(g){N.opacity=g;vb("opacity",g)};this.getFillOpacity=function(){return N.fill_opacity};this.getStrokeOpacity=function(){return N.stroke_opacity};this.setPaintOpacity=function(g,h,k){N[g+"_opacity"]=h;k?Sb(g+"-opacity",h):vb(g+"-opacity",h)};this.getBlur=function(g){var h=0;if(g)if(g.getAttribute("filter"))if(g=la(g.id+"_blur"))h=g.firstChild.getAttribute("stdDeviation");return h};(function(){function g(){var t=b.undoMgr.finishUndoableChange();h.addSubCommand(t);Ga(h);k=h=null}
|
||
|
var h=null,k=null,v=false;b.setBlurNoUndo=function(t){if(k)if(t===0){Sb("filter","");v=true}else{var E=J[0];v&&Sb("filter","url(#"+E.id+"_blur)");if(svgedit.browser.isWebkit()){E.removeAttribute("filter");E.setAttribute("filter","url(#"+E.id+"_blur)")}Sb("stdDeviation",t,[k.firstChild]);b.setBlurOffsets(k,t)}else b.setBlur(t)};b.setBlurOffsets=function(t,E){if(E>3)ma(t,{x:"-50%",y:"-50%",width:"200%",height:"200%"},100);else if(!svgedit.browser.isWebkit()){t.removeAttribute("x");t.removeAttribute("y");
|
||
|
t.removeAttribute("width");t.removeAttribute("height")}};b.setBlur=function(t,E){if(h)g();else{var w=J[0],s=w.id;k=la(s+"_blur");t-=0;var A=new La;if(k){if(t===0)k=null}else{var F=da({element:"feGaussianBlur",attr:{"in":"SourceGraphic",stdDeviation:t}});k=da({element:"filter",attr:{id:s+"_blur"}});k.appendChild(F);ub().appendChild(k);A.addSubCommand(new Ka(k))}F={filter:w.getAttribute("filter")};if(t===0){w.removeAttribute("filter");A.addSubCommand(new Wa(w,F))}else{vb("filter","url(#"+s+"_blur)");
|
||
|
A.addSubCommand(new Wa(w,F));b.setBlurOffsets(k,t);h=A;b.undoMgr.beginUndoableChange("stdDeviation",[k?k.firstChild:null]);if(E){b.setBlurNoUndo(t);g()}}}}})();this.getBold=function(){var g=J[0];if(g!=null&&g.tagName=="text"&&J[1]==null)return g.getAttribute("font-weight")=="bold";return false};this.setBold=function(g){var h=J[0];if(h!=null&&h.tagName=="text"&&J[1]==null)vb("font-weight",g?"bold":"normal");J[0].textContent||rb.setCursor()};this.getItalic=function(){var g=J[0];if(g!=null&&g.tagName==
|
||
|
"text"&&J[1]==null)return g.getAttribute("font-style")=="italic";return false};this.setItalic=function(g){var h=J[0];if(h!=null&&h.tagName=="text"&&J[1]==null)vb("font-style",g?"italic":"normal");J[0].textContent||rb.setCursor()};this.getFontFamily=function(){return cb.font_family};this.setFontFamily=function(g){cb.font_family=g;vb("font-family",g);J[0]&&!J[0].textContent&&rb.setCursor()};this.setFontColor=function(g){cb.fill=g;vb("fill",g)};this.getFontSize=function(){return cb.fill};this.getFontSize=
|
||
|
function(){return cb.font_size};this.setFontSize=function(g){cb.font_size=g;vb("font-size",g);J[0].textContent||rb.setCursor()};this.getText=function(){var g=J[0];if(g==null)return"";return g.textContent};this.setTextContent=function(g){vb("#text",g);rb.init(g);rb.setCursor()};this.setImageURL=function(g){var h=J[0];if(h){var k=$(h).attr(["width","height"]);k=!k.width||!k.height;var v=ba(h);if(v!==g)k=true;else if(!k)return;var t=new La("Change Image URL");S(h,g);t.addSubCommand(new Wa(h,{"#href":v}));
|
||
|
k?$(new Image).load(function(){var E=$(h).attr(["width","height"]);$(h).attr({width:this.width,height:this.height});Oa.requestSelector(h).resize();t.addSubCommand(new Wa(h,E));Ga(t);I("changed",[h])}).attr("src",g):Ga(t)}};this.setLinkURL=function(g){var h=J[0];if(h){if(h.tagName!=="a"){h=$(h).parents("a");if(h.length)h=h[0];else return}var k=ba(h);if(k!==g){var v=new La("Change Link URL");S(h,g);v.addSubCommand(new Wa(h,{"#href":k}));Ga(v)}}};this.setRectRadius=function(g){var h=J[0];if(h!=null&&
|
||
|
h.tagName=="rect"){var k=h.getAttribute("rx");if(k!=g){h.setAttribute("rx",g);h.setAttribute("ry",g);Ga(new Wa(h,{rx:k,ry:k},"Radius"));I("changed",[h])}}};this.makeHyperlink=function(g){b.groupSelectedElements("a",g)};this.removeHyperlink=function(){b.ungroupSelectedElement()};this.setSegType=function(g){Va.setSegType(g)};this.convertToPath=function(g,h){if(g==null)$.each(J,function(wa,ha){ha&&b.convertToPath(ha)});else{if(!h)var k=new La("Convert element to Path");var v=h?{}:{fill:N.fill,"fill-opacity":N.fill_opacity,
|
||
|
stroke:N.stroke,"stroke-width":N.stroke_width,"stroke-dasharray":N.stroke_dasharray,"stroke-linejoin":N.stroke_linejoin,"stroke-linecap":N.stroke_linecap,"stroke-opacity":N.stroke_opacity,opacity:N.opacity,visibility:"hidden"};$.each(["marker-start","marker-end","marker-mid","filter","clip-path"],function(){if(g.getAttribute(this))v[this]=g.getAttribute(this)});var t=da({element:"path",attr:v}),E=g.getAttribute("transform");E&&t.setAttribute("transform",E);var w=g.id,s=g.parentNode;g.nextSibling?
|
||
|
s.insertBefore(t,g):s.appendChild(t);var A="",F=function(wa){$.each(wa,function(ha,ka){var oa=ka[1];A+=ka[0];for(var xa=0;xa<oa.length;xa+=2)A+=oa[xa]+","+oa[xa+1]+" "})},C=1.81;switch(g.tagName){case "ellipse":case "circle":var D=$(g).attr(["rx","ry","cx","cy"]),G=D.cx,H=D.cy,P=D.rx;D=D.ry;if(g.tagName=="circle")P=D=$(g).attr("r");F([["M",[G-P,H]],["C",[G-P,H-D/C,G-P/C,H-D,G,H-D]],["C",[G+P/C,H-D,G+P,H-D/C,G+P,H]],["C",[G+P,H+D/C,G+P/C,H+D,G,H+D]],["C",[G-P/C,H+D,G-P,H+D/C,G-P,H]],["Z",[]]]);break;
|
||
|
case "path":A=g.getAttribute("d");break;case "line":D=$(g).attr(["x1","y1","x2","y2"]);A="M"+D.x1+","+D.y1+"L"+D.x2+","+D.y2;break;case "polyline":case "polygon":A="M"+g.getAttribute("points");break;case "rect":D=$(g).attr(["rx","ry"]);P=D.rx;D=D.ry;var R=g.getBBox();G=R.x;H=R.y;var aa=R.width;R=R.height;C=4-C;!P&&!D?F([["M",[G,H]],["L",[G+aa,H]],["L",[G+aa,H+R]],["L",[G,H+R]],["L",[G,H]],["Z",[]]]):F([["M",[G,H+D]],["C",[G,H+D/C,G+P/C,H,G+P,H]],["L",[G+aa-P,H]],["C",[G+aa-P/C,H,G+aa,H+D/C,G+aa,H+
|
||
|
D]],["L",[G+aa,H+R-D]],["C",[G+aa,H+R-D/C,G+aa-P/C,H+R,G+aa-P,H+R]],["L",[G+P,H+R]],["C",[G+P/C,H+R,G,H+R-D/C,G,H+R-D]],["L",[G,H+D]],["Z",[]]]);break;default:t.parentNode.removeChild(t)}A&&t.setAttribute("d",A);if(h){Va.resetOrientation(t);k=false;try{k=t.getBBox()}catch(ua){}t.parentNode.removeChild(t);return k}else{if(E){E=V(t);sa(E)&&Va.resetOrientation(t)}k.addSubCommand(new Ua(g,g.nextSibling,s));k.addSubCommand(new Ka(t));bb();g.parentNode.removeChild(g);t.setAttribute("id",w);t.removeAttribute("visibility");
|
||
|
qb([t],true);Ga(k)}}};var Sb=function(g,h,k){var v=e.suspendRedraw(1E3);Na=="pathedit"&&Va.moveNode(g,h);k=k||J;for(var t=k.length,E=["g","polyline","path"];t--;){var w=k[t];if(w!=null){Na==="textedit"&&g!=="#text"&&w.textContent.length&&rb.toSelectMode(w);if((g==="x"||g==="y")&&E.indexOf(w.tagName)>=0){var s=getStrokedBBox([w]);b.moveSelectedElements((g==="x"?h-s.x:0)*o,(g==="y"?h-s.y:0)*o,true)}else{s=g==="#text"?w.textContent:w.getAttribute(g);if(s==null)s="";if(s!==String(h)){if(g=="#text"){svgedit.utilities.getBBox(w);
|
||
|
w.textContent=h;if(/rotate/.test(w.getAttribute("transform")))w=Ma(w)}else g=="#href"?S(w,h):w.setAttribute(g,h);if(svgedit.browser.isGecko()&&w.nodeName==="text"&&/rotate/.test(w.getAttribute("transform")))if((h+"").indexOf("url")===0||["font-size","font-family","x","y"].indexOf(g)>=0&&w.textContent)w=Ma(w);J.indexOf(w)>=0&&setTimeout(function(){w.parentNode&&Oa.requestSelector(w).resize()},0);s=ra(w);if(s!=0&&g!="transform")for(var A=V(w),F=A.numberOfItems;F--;)if(A.getItem(F).type==4){A.removeItem(F);
|
||
|
var C=svgedit.utilities.getBBox(w),D=O(C.x+C.width/2,C.y+C.height/2,ja(A).matrix);C=D.x;D=D.y;var G=e.createSVGTransform();G.setRotate(s,C,D);A.insertItemBefore(G,F);break}}}}}e.unsuspendRedraw(v)},vb=this.changeSelectedAttribute=function(g,h,k){k=k||J;b.undoMgr.beginUndoableChange(g,k);Sb(g,h,k);g=b.undoMgr.finishUndoableChange();g.isEmpty()||Ga(g)};this.deleteSelectedElements=function(){for(var g=new La("Delete Elements"),h=J.length,k=[],v=0;v<h;++v){var t=J[v];if(t==null)break;var E=t.parentNode,
|
||
|
w=t;Oa.releaseSelector(w);svgedit.path.removePath_(w.id);if(E.tagName==="a"&&E.childNodes.length===1){w=E;E=E.parentNode}var s=w.nextSibling;w=E.removeChild(w);k.push(t);J[v]=null;g.addSubCommand(new Ua(w,s,E))}g.isEmpty()||Ga(g);I("changed",k);bb()};this.cutSelectedElements=function(){for(var g=new La("Cut Elements"),h=J.length,k=[],v=0;v<h;++v){var t=J[v];if(t==null)break;var E=t.parentNode,w=t;Oa.releaseSelector(w);svgedit.path.removePath_(w.id);var s=w.nextSibling;w=E.removeChild(w);k.push(t);
|
||
|
J[v]=null;g.addSubCommand(new Ua(w,s,E))}g.isEmpty()||Ga(g);I("changed",k);bb();b.clipBoard=k};this.copySelectedElements=function(){b.clipBoard=$.merge([],J)};this.pasteElements=function(g,h,k){var v=b.clipBoard,t=v.length;if(t){for(var E=[],w=new La("Paste elements");t--;){var s=v[t];if(s){var A=Z(s);if(!la(s.id))A.id=s.id;E.push(A);(L||z().getCurrentLayer()).appendChild(A);w.addSubCommand(new Ka(A))}}Qb(E);if(g!="in_place"){if(yb==null){yb.x=0;yb.y=0}var F,C;if(g){if(g==="point"){F=h;C=k}}else{F=
|
||
|
yb.x;C=yb.y}g=getStrokedBBox(E);var D=F-(g.x+g.width/2),G=C-(g.y+g.height/2),H=[],P=[];$.each(E,function(){H.push(D);P.push(G)});F=b.moveSelectedElements(H,P,false);w.addSubCommand(F)}Ga(w);I("changed",E)}};this.groupSelectedElements=function(g){g||(g="g");var h="";switch(g){case "a":h="Make hyperlink";var k="";if(arguments.length>1)k=arguments[1];break;default:g="g";h="Group Elements"}h=new La(h);var v=da({element:g,attr:{id:M()}});g==="a"&&S(v,k);h.addSubCommand(new Ka(v));for(k=J.length;k--;){var t=
|
||
|
J[k];if(t!=null){if(t.parentNode.tagName==="a"&&t.parentNode.childNodes.length===1)t=t.parentNode;var E=t.nextSibling,w=t.parentNode;v.appendChild(t);h.addSubCommand(new Qa(t,E,w))}}h.isEmpty()||Ga(h);Qb([v],true)};var fc=this.pushGroupProperties=function(g,h){var k=g.childNodes,v=k.length,t=g.getAttribute("transform"),E=V(g),w=ja(E).matrix,s=new La("Push group properties"),A=0,F=ra(g),C=$(g).attr(["filter","opacity"]),D,G;for(A=0;A<v;A++){var H=k[A];if(H.nodeType===1){if(C.opacity!==null&&C.opacity!==
|
||
|
1){H.getAttribute("opacity");var P=Math.round((H.getAttribute("opacity")||1)*C.opacity*100)/100;vb("opacity",P,[H])}if(C.filter){var R=P=this.getBlur(H);G||(G=this.getBlur(g));if(P)P=G-0+(P-0);else if(P===0)P=G;if(R)D=X(H.getAttribute("filter"));else if(D){D=Z(D);ub().appendChild(D)}else D=X(C.filter);D.id=H.id+"_"+(D.firstChild.tagName==="feGaussianBlur"?"blur":"filter");vb("filter","url(#"+D.id+")",[H]);if(P){vb("stdDeviation",P,[D.firstChild]);b.setBlurOffsets(D,P)}}P=V(H);if(~H.tagName.indexOf("Gradient"))P=
|
||
|
null;if(P)if(H.tagName!=="defs")if(E.numberOfItems){if(F&&E.numberOfItems==1){var aa=E.getItem(0).matrix,ua=e.createSVGMatrix();if(R=ra(H))ua=P.getItem(0).matrix;var wa=svgedit.utilities.getBBox(H),ha=ja(P).matrix,ka=O(wa.x+wa.width/2,wa.y+wa.height/2,ha);wa=F+R;ha=e.createSVGTransform();ha.setRotate(wa,ka.x,ka.y);aa=fa(aa,ua,ha.matrix.inverse());R&&P.removeItem(0);if(wa)P.numberOfItems?P.insertItemBefore(ha,0):P.appendItem(ha);if(aa.e||aa.f){R=e.createSVGTransform();R.setTranslate(aa.e,aa.f);P.numberOfItems?
|
||
|
P.insertItemBefore(R,0):P.appendItem(R)}}else{R=H.getAttribute("transform");aa={};aa.transform=R?R:"";R=e.createSVGTransform();aa=ja(P).matrix;ua=aa.inverse();aa=fa(ua,w,aa);R.setMatrix(aa);P.appendItem(R)}(H=pb(H))&&s.addSubCommand(H)}}}if(t){aa={};aa.transform=t;g.setAttribute("transform","");g.removeAttribute("transform");s.addSubCommand(new Wa(g,aa))}if(h&&!s.isEmpty())return s};this.ungroupSelectedElement=function(){var g=J[0];if($(g).data("gsvg")||$(g).data("symbol"))lc(g);else if(g.tagName===
|
||
|
"use"){var h=la(ba(g).substr(1));$(g).data("symbol",h).data("ref",h);lc(g)}else{h=$(g).parents("a");if(h.length)g=h[0];if(g.tagName==="g"||g.tagName==="a"){h=new La("Ungroup Elements");var k=fc(g,true);k&&h.addSubCommand(k);k=g.parentNode;for(var v=g.nextSibling,t=Array(g.childNodes.length),E=0;g.firstChild;){var w=g.firstChild,s=w.nextSibling,A=w.parentNode;if(w.tagName==="title"){h.addSubCommand(new Ua(w,w.nextSibling,A));A.removeChild(w)}else{t[E++]=w=k.insertBefore(w,v);h.addSubCommand(new Qa(w,
|
||
|
s,A))}}bb();v=g.nextSibling;g=k.removeChild(g);h.addSubCommand(new Ua(g,v,k));h.isEmpty()||Ga(h);qb(t)}}};this.moveToTopSelectedElement=function(){var g=J[0];if(g!=null){g=g;var h=g.parentNode,k=g.nextSibling;g=g.parentNode.appendChild(g);if(k!=g.nextSibling){Ga(new Qa(g,k,h,"top"));I("changed",[g])}}};this.moveToBottomSelectedElement=function(){var g=J[0];if(g!=null){g=g;var h=g.parentNode,k=g.nextSibling,v=g.parentNode.firstChild;if(v.tagName=="title")v=v.nextSibling;if(v.tagName=="defs")v=v.nextSibling;
|
||
|
g=g.parentNode.insertBefore(g,v);if(k!=g.nextSibling){Ga(new Qa(g,k,h,"bottom"));I("changed",[g])}}};this.moveUpDownSelected=function(g){var h=J[0];if(h){wb=[];var k,v,t=$(Kb(getStrokedBBox([h]))).toArray();g=="Down"&&t.reverse();$.each(t,function(){if(v){k=this;return false}else if(this==h)v=true});if(k){t=h.parentNode;var E=h.nextSibling;$(k)[g=="Down"?"before":"after"](h);if(E!=h.nextSibling){Ga(new Qa(h,E,t,"Move "+g));I("changed",[h])}}}};this.moveSelectedElements=function(g,h,k){if(g.constructor!=
|
||
|
Array){g/=o;h/=o}k=k||true;for(var v=new La("position"),t=J.length;t--;){var E=J[t];if(E!=null){var w=e.createSVGTransform(),s=V(E);g.constructor==Array?w.setTranslate(g[t],h[t]):w.setTranslate(g,h);s.numberOfItems?s.insertItemBefore(w,0):s.appendItem(w);(w=pb(E))&&v.addSubCommand(w);Oa.requestSelector(E).resize()}}if(!v.isEmpty()){k&&Ga(v);I("changed",J);return v}};this.cloneSelectedElements=function(g,h){for(var k=new La("Clone Elements"),v=J.length,t=0;t<v;++t){var E=J[t];if(E==null)break}v=J.slice(0,
|
||
|
t);this.clearSelection(true);for(t=v.length;t--;){E=v[t]=Z(v[t]);(L||z().getCurrentLayer()).appendChild(E);k.addSubCommand(new Ka(E))}if(!k.isEmpty()){qb(v.reverse());this.moveSelectedElements(g,h,false);Ga(k)}};this.alignSelectedElements=function(g,h){var k=[],v=Number.MAX_VALUE,t=Number.MIN_VALUE,E=Number.MAX_VALUE,w=Number.MIN_VALUE,s=Number.MIN_VALUE,A=Number.MIN_VALUE,F=J.length;if(F){for(var C=0;C<F;++C){if(J[C]==null)break;k[C]=getStrokedBBox([J[C]]);switch(h){case "smallest":if((g=="l"||g==
|
||
|
"c"||g=="r")&&(s==Number.MIN_VALUE||s>k[C].width)||(g=="t"||g=="m"||g=="b")&&(A==Number.MIN_VALUE||A>k[C].height)){v=k[C].x;E=k[C].y;t=k[C].x+k[C].width;w=k[C].y+k[C].height;s=k[C].width;A=k[C].height}break;case "largest":if((g=="l"||g=="c"||g=="r")&&(s==Number.MIN_VALUE||s<k[C].width)||(g=="t"||g=="m"||g=="b")&&(A==Number.MIN_VALUE||A<k[C].height)){v=k[C].x;E=k[C].y;t=k[C].x+k[C].width;w=k[C].y+k[C].height;s=k[C].width;A=k[C].height}break;default:if(k[C].x<v)v=k[C].x;if(k[C].y<E)E=k[C].y;if(k[C].x+
|
||
|
k[C].width>t)t=k[C].x+k[C].width;if(k[C].y+k[C].height>w)w=k[C].y+k[C].height}}if(h=="page"){E=v=0;t=b.contentW;w=b.contentH}s=Array(F);A=Array(F);for(C=0;C<F;++C){if(J[C]==null)break;var D=k[C];s[C]=0;A[C]=0;switch(g){case "l":s[C]=v-D.x;break;case "c":s[C]=(v+t)/2-(D.x+D.width/2);break;case "r":s[C]=t-(D.x+D.width);break;case "t":A[C]=E-D.y;break;case "m":A[C]=(E+w)/2-(D.y+D.height/2);break;case "b":A[C]=w-(D.y+D.height)}}this.moveSelectedElements(s,A)}};this.contentW=Vb().w;this.contentH=Vb().h;
|
||
|
this.updateCanvas=function(g,h){e.setAttribute("width",g);e.setAttribute("height",h);var k=$("#canvasBackground")[0],v=l.getAttribute("x"),t=l.getAttribute("y"),E=g/2-this.contentW*o/2,w=h/2-this.contentH*o/2;ma(l,{width:this.contentW*o,height:this.contentH*o,x:E,y:w,viewBox:"0 0 "+this.contentW+" "+this.contentH});ma(k,{width:l.getAttribute("width"),height:l.getAttribute("height"),x:E,y:w});(k=la("background_image"))&&ma(k,{width:"100%",height:"100%"});Oa.selectorParentGroup.setAttribute("transform",
|
||
|
"translate("+E+","+w+")");return{x:E,y:w,old_x:v,old_y:t,d_x:E-v,d_y:w-t}};this.setBackground=function(g,h){var k=la("canvasBackground"),v=$(k).find("rect")[0],t=la("background_image");v.setAttribute("fill",g);if(h){if(!t){t=d.createElementNS(c,"image");ma(t,{id:"background_image",width:"100%",height:"100%",preserveAspectRatio:"xMinYMin",style:"pointer-events:none"})}S(t,h);k.appendChild(t)}else t&&t.parentNode.removeChild(t)};this.cycleElement=function(g){var h=J[0],k=false,v=Ib(L||z().getCurrentLayer());
|
||
|
if(v.length){if(h==null){g=g?v.length-1:0;k=v[g]}else for(var t=v.length;t--;)if(v[t]==h){g=g?t-1:t+1;if(g>=v.length)g=0;else if(g<0)g=v.length-1;k=v[g];break}Qb([k],true);I("selected",J)}};this.clear();this.getPrivateMethods=function(){return{addCommandToHistory:Ga,setGradient:ic,addSvgElementFromJson:da,assignAttributes:ma,BatchCommand:La,call:I,ChangeElementCommand:Wa,copyElem:Z,ffClone:Ma,findDefs:ub,findDuplicateGradient:dc,getElem:la,getId:ta,getIntersectionList:Kb,getMouseTarget:$b,getNextId:M,
|
||
|
getPathBBox:U,getUrlFromAttr:pa,hasMatrixTransform:sa,identifyLayers:Wb,InsertElementCommand:Ka,isIdentity:svgedit.math.isIdentity,logMatrix:tb,matrixMultiply:fa,MoveElementCommand:Qa,preventClickDefault:Zb,recalculateAllSelectedDimensions:Xa,recalculateDimensions:pb,remapElement:xb,RemoveElementCommand:Ua,removeUnusedDefElems:gc,round:Cb,runExtensions:ob,sanitizeSvg:Ia,SVGEditTransformList:svgedit.transformlist.SVGTransformList,toString:toString,transformBox:svgedit.math.transformBox,transformListToTransform:ja,
|
||
|
transformPoint:O,walkTree:svgedit.utilities.walkTree}}};(function(){document.addEventListener("touchstart",touchHandler,true);document.addEventListener("touchmove",touchHandler,true);document.addEventListener("touchend",touchHandler,true);document.addEventListener("touchcancel",touchHandler,true);if(!window.svgEditor)window.svgEditor=function(a){function n(z,o){var L=f.setSvgString(z)!==false;o=o||a.noop;L?o(true):a.alert(e.notification.errorLoadingSVG,function(){o(false)})}var f,c={},m=false,p={lang:"en",iconsize:"m",bkgd_color:"FFF",bkgd_url:"",img_save:"embed"},
|
||
|
b={},d={canvas_expansion:1,dimensions:[640,480],initFill:{color:"fff",opacity:1},initStroke:{width:1.5,color:"000",opacity:1},initOpacity:1,imgPath:"images/",langPath:"locale/",extPath:"extensions/",jGraduatePath:"jgraduate/images/",extensions:["ext-markers.js","ext-eyedropper.js","ext-shapes.js","ext-grid.js"],initTool:"select",wireframe:false,colorPickerCSS:false,gridSnapping:false,gridColor:"#000",baseUnit:"px",snappingStep:10,showRulers:true,show_outside_canvas:false},e=c.uiStrings={common:{ok:"OK",
|
||
|
cancel:"Cancel",key_up:"Up",key_down:"Down",key_backspace:"Backspace",key_del:"Del"},layers:{layer:"Layer"},notification:{invalidAttrValGiven:"Invalid value given",noContentToFitTo:"No content to fit to",dupeLayerName:"There is already a layer named that!",enterUniqueLayerName:"Please enter a unique layer name",enterNewLayerName:"Please enter the new layer name",layerHasThatName:"Layer already has that name",QmoveElemsToLayer:'Move selected elements to layer "%s"?',QwantToClear:"Do you want to clear the drawing?\nThis will also erase your undo history!",
|
||
|
QwantToOpen:"Do you want to open a new file?\nThis will also erase your undo history!",QerrorsRevertToSource:"There were parsing errors in your SVG source.\nRevert back to original SVG source?",QignoreSourceChanges:"Ignore changes made to SVG source?",featNotSupported:"Feature not supported",enterNewImgURL:"Enter the new image URL",defsFailOnSave:"NOTE: Due to a bug in your browser, this image may appear wrong (missing gradients or elements). It will however appear correct once actually saved.",loadingImage:"Loading image, please wait...",
|
||
|
saveFromBrowser:'Select "Save As..." in your browser to save this image as a %s file.',noteTheseIssues:"Also note the following issues: ",unsavedChanges:"There are unsaved changes.",enterNewLinkURL:"Enter the new hyperlink URL",errorLoadingSVG:"Error: Unable to load SVG data",URLloadFail:"Unable to load from URL",retrieving:'Retrieving "%s" ...'}};b={};var l={};c.curConfig=d;c.tool_scale=1;a.pref=function(z,o){if(o)b[z]=o;z="svg-edit-"+z;var L=location.hostname,T=L&&L.indexOf(".")>=0,N=o!=undefined,
|
||
|
J=false;try{if(window.localStorage)J=localStorage}catch(da){}try{if(window.globalStorage&&T)J=globalStorage[L]}catch(V){}if(J)if(N)J.setItem(z,o);else{if(J.getItem(z))return J.getItem(z)+""}else if(window.widget)if(N)widget.setPreferenceForKey(o,z);else return widget.preferenceForKey(z);else if(N){L=new Date;L.setTime(L.getTime()+31536E6);o=encodeURIComponent(o);document.cookie=z+"="+o+"; expires="+L.toUTCString()}else return(L=document.cookie.match(RegExp(z+"=([^;]+)")))?decodeURIComponent(L[1]):
|
||
|
""};c.setConfig=function(z){a.each(z,function(o,L){o in p&&a.pref(o,L)});a.extend(true,d,z);if(z.extensions)d.extensions=z.extensions};c.setCustomHandlers=function(z){c.ready(function(){if(z.open){a('#tool_open > input[type="file"]').remove();a("#tool_open").show();f.open=z.open}if(z.save){c.show_save_warning=false;f.bind("saved",z.save)}z.pngsave&&f.bind("exported",z.pngsave);l=z})};c.randomizeIds=function(){f.randomizeIds(arguments)};c.init=function(){function z(q,B){var K=q.id,Q=K.split("_"),W=
|
||
|
Q[0];Q=Q[1];B&&f.setStrokeAttr("stroke-"+W,Q);cb();H("#cur_"+W,K,20);a(q).addClass("current").siblings().removeClass("current")}function o(q,B){a.pref("bkgd_color",q);a.pref("bkgd_url",B);f.setBackground(q,B)}function L(){var q=f.getHref(Y);q=q.indexOf("data:")===0?"":q;a.prompt(e.notification.enterNewImgURL,q,function(B){B&&Ja(B)})}function T(){if(f.deleteCurrentLayer()){Za();Eb();a("#layerlist tr.layer").removeClass("layersel");a("#layerlist tr.layer:first").addClass("layersel")}}function N(){var q=
|
||
|
f.getCurrentDrawing().getCurrentLayerName()+" copy";a.prompt(e.notification.enterUniqueLayerName,q,function(B){if(B)if(f.getCurrentDrawing().hasLayer(B))a.alert(e.notification.dupeLayerName);else{f.cloneLayer(B);Za();Eb()}})}function J(q){var B=a("#layerlist tr.layersel").index(),K=f.getCurrentDrawing().getNumLayers();if(B>0||B<K-1){B+=q;f.setCurrentLayerPosition(K-B-1);Eb()}}function da(q,B){var K=document.getElementById("ruler_x_cursor"),Q=document.getElementById("ruler_y_cursor"),W=document.getElementById("workarea"),
|
||
|
ia=document.getElementById("title_show");a("#workarea").unbind("mousemove.rulers").bind("mousemove.rulers",function(Xb){Xb.stopPropagation();K.style.left=Xb.pageX-66+W.scrollLeft+"px";Q.style.top=Xb.pageY-48+W.scrollTop+"px";Xb=Xb.target.getAttribute("title");typeof Xb!="undefined"&&Xb&&ia.innerHTML(Xb)});B||(B=f.getZoom());q||(q=a("#svgcanvas"));for(var va=f.getContentElem(),ya=svgedit.units.getTypeMap()[d.baseUnit],Da=0;Da<2;Da++){var Ha=Da===0,Aa=Ha?"x":"y",fb=Ha?"width":"height",gb=va.getAttribute(Aa)-
|
||
|
0;Aa=a("#ruler_"+Aa+" canvas:first");$hcanv=Aa.clone();Aa.replaceWith($hcanv);var ga=$hcanv[0];var zb=Aa=q[fb]()*2;ga.parentNode.style[fb]=zb+"px";var hb=0,Ta,Pa=ga.getContext("2d");Pa.fillStyle="rgb(200,0,0)";Pa.fillRect(0,0,ga.width,ga.height);$hcanv.siblings().remove();if(Aa>=3E4){var Ya=parseInt(Aa/3E4)+1;Ta=Array(Ya);Ta[0]=Pa;for(var Ba=1;Ba<Ya;Ba++){ga[fb]=3E4;var ib=ga.cloneNode(true);ga.parentNode.appendChild(ib);Ta[Ba]=ib.getContext("2d")}ib[fb]=Aa%3E4;Aa=3E4}ga[fb]=Aa;fb=ya*B;var sb=50/
|
||
|
fb;ga=1;for(Ba=0;Ba<jc.length;Ba++){ga=Ya=jc[Ba];if(sb<=Ya)break}sb=ga*fb;Pa.font="normal 9px 'Lucida Grande', sans-serif";Pa.fillStyle="#777";for(var Fb=gb/fb%ga*fb,Yb=Fb-sb;Fb<zb;Fb+=sb){Yb+=sb;Ba=Math.round(Fb)+0.5;if(Ha){Pa.moveTo(Ba,15);Pa.lineTo(Ba,0)}else{Pa.moveTo(15,Ba);Pa.lineTo(0,Ba)}Ya=(Yb-gb)/fb;if(ga>=1)Ba=Math.round(Ya);else{Ba=(ga+"").split(".")[1].length;Ba=Ya.toFixed(Ba)-0}if(Ba!==0&&Ba!==1E3&&Ba%1E3===0)Ba=Ba/1E3+"K";if(Ha){Pa.fillText(Ba,Fb+2,8);Pa.fillStyle="#777"}else{Ya=(Ba+
|
||
|
"").split("");for(Ba=0;Ba<Ya.length;Ba++){Pa.fillText(Ya[Ba],1,Fb+9+Ba*9);Pa.fillStyle="#777"}}Ya=sb/10;for(Ba=1;Ba<10;Ba++){var Mb=Math.round(Fb+Ya*Ba)+0.5;if(Ta&&Mb>Aa){hb++;Pa.stroke();if(hb>=Ta.length){Ba=10;Fb=zb;continue}Pa=Ta[hb];Fb-=3E4;Mb=Math.round(Fb+Ya*Ba)+0.5}var qc=Ba%2?12:10;if(Ha){Pa.moveTo(Mb,15);Pa.lineTo(Mb,qc)}else{Pa.moveTo(15,Mb);Pa.lineTo(qc,Mb)}}}Pa.strokeStyle="#666";Pa.stroke()}}(function(){var q=window.opener;if(q)try{var B=q.document.createEvent("Event");B.initEvent("svgEditorReady",
|
||
|
true,true);q.document.documentElement.dispatchEvent(B)}catch(K){}})();(function(){var q=a.deparam.querystring(true);if(!a.isEmptyObject(q)){if(q.dimensions)q.dimensions=q.dimensions.split(",");if(q.extensions)q.extensions=q.extensions.split(",");if(q.bkgd_color)q.bkgd_color="#"+q.bkgd_color;svgEditor.setConfig(q);var B=q.source,K=a.param.querystring();if(!B)if(K.indexOf("source=data:")>=0)B=K.match(/source=(data:[^&]*)/)[1];if(B)if(B.indexOf("data:")===0){B=B.replace(/ /g,"+");c.loadFromDataURI(B)}else c.loadFromString(B);
|
||
|
else if(K.indexOf("paramurl=")!==-1)svgEditor.loadFromURL(K.substr(9));else q.url&&svgEditor.loadFromURL(q.url)}})();var V=function(){a.each(d.extensions,function(){var B=this;a.getScript(d.extPath+B,function(K){if(!K){K=document.createElement("script");K.src=d.extPath+B;document.querySelector("head").appendChild(K)}})});var q=[];a("#lang_select option").each(function(){q.push(this.value)});c.putLocale(null,q)};document.location.protocol==="file:"?setTimeout(V,100):V();a.svgIcons(d.imgPath+"svg_edit_icons.svg",
|
||
|
{w:24,h:24,id_match:false,no_img:!svgedit.browser.isWebkit(),fallback_path:d.imgPath,fallback:{new_image:"clear.png",save:"save.png",open:"open.png",source:"source.png",docprops:"document-properties.png",wireframe:"wireframe.png",undo:"undo.png",redo:"redo.png",select:"select.png",select_node:"select_node.png",pencil:"fhpath.png",pen:"line.png",square:"square.png",rect:"rect.png",fh_rect:"freehand-square.png",circle:"circle.png",ellipse:"ellipse.png",fh_ellipse:"freehand-circle.png",path:"path.png",
|
||
|
text:"text.png",image:"image.png",zoom:"zoom.png",clone:"clone.png",node_clone:"node_clone.png","delete":"delete.png",node_delete:"node_delete.png",move_top:"move_top.png",move_bottom:"move_bottom.png",to_path:"to_path.png",link_controls:"link_controls.png",reorient:"reorient.png",align_left:"align-left.png",align_center:"align-center",align_right:"align-right",align_top:"align-top",align_middle:"align-middle",align_bottom:"align-bottom",go_up:"go-up.png",go_down:"go-down.png",ok:"save.png",cancel:"cancel.png",
|
||
|
arrow_right:"flyouth.png",arrow_down:"dropdown.gif"},placement:{"#tool_docprops > div":"docprops","#tool_select":"select","#tool_fhpath":"pencil","#tool_line":"pen","#tool_rect,#tools_rect_show":"rect","#tool_square":"square","#tool_fhrect":"fh_rect","#tool_ellipse,#tools_ellipse_show":"ellipse","#tool_circle":"circle","#tool_fhellipse":"fh_ellipse","#tool_path":"path","#tool_text,#layer_rename":"text","#tool_image":"image","#tool_zoom":"zoom","#tool_node_clone":"node_clone","#tool_node_delete":"node_delete",
|
||
|
"#tool_add_subpath":"add_subpath","#tool_openclose_path":"open_path","#tool_alignleft, #tool_posleft":"align_left","#tool_aligncenter, #tool_poscenter":"align_center","#tool_alignright, #tool_posright":"align_right","#tool_aligntop, #tool_postop":"align_top","#tool_alignmiddle, #tool_posmiddle":"align_middle","#tool_alignbottom, #tool_posbottom":"align_bottom","#cur_position":"align","#linecap_butt,#cur_linecap":"linecap_butt","#linecap_round":"linecap_round","#linecap_square":"linecap_square","#linejoin_miter,#cur_linejoin":"linejoin_miter",
|
||
|
"#linejoin_round":"linejoin_round","#linejoin_bevel":"linejoin_bevel","#url_notice":"warning","#layer_up":"go_up","#layer_down":"go_down","#layer_moreopts":"context_menu","#layerlist td.layervis":"eye","#tool_source_save,#tool_docprops_save,#tool_prefs_save":"ok","#tool_source_cancel,#tool_docprops_cancel,#tool_prefs_cancel":"cancel","#rwidthLabel, #iwidthLabel":"width","#rheightLabel, #iheightLabel":"height","#angleLabel":"angle","#linkLabel,#tool_make_link,#tool_make_link_multi":"globe_link","#zoomLabel":"zoom",
|
||
|
"#blurLabel":"blur",".flyout_arrow_horiz":"arrow_right","#palette .palette_item:first, #fill_bg, #stroke_bg":"no_color"},resize:{"#logo .svg_icon":32,".flyout_arrow_horiz .svg_icon":5,".layer_button .svg_icon, #layerlist td.layervis .svg_icon":14,"#main_button .dropdown .svg_icon":9,"#fill_bg .svg_icon, #stroke_bg .svg_icon":24,".palette_item:first .svg_icon":16,".toolbar_button button .svg_icon":16,".stroke_tool div div .svg_icon":20,"#tools_bottom label .svg_icon":18,"#zoom_dropdown .svg_icon":7},
|
||
|
callback:function(){a(".toolbar_button button > svg, .toolbar_button button > img").each(function(){a(this).parent().prepend(this)});var q=a("#tools_left");if(q.length!=0){q.offset();q.outerHeight()}a(".tools_flyout").each(function(){var B=a("#"+this.id+"_show"),K=B.attr("data-curopt");if(!B.children("svg, img").length){K=a(K).children().clone();if(K.length){K[0].removeAttribute("style");B.append(K)}}});svgEditor.runCallbacks();setTimeout(function(){a(".flyout_arrow_horiz:empty").each(function(){a(this).append(a.getSvgIcon("arrow_right").width(5).height(5))})},
|
||
|
1)}});c.canvas=f=new a.SvgCanvas(document.getElementById("svgcanvas"),d);c.show_save_warning=false;V=navigator.platform.indexOf("Mac")>=0;var O=navigator.userAgent.indexOf("AppleWebKit")>=0,fa=V?"meta+":"ctrl+",sa=f.pathActions,ja=f.undoMgr,ca=svgedit.utilities,ea=d.imgPath+"placeholder.svg",qa=a("#workarea"),pa=a("#cmenu_canvas");a("#cmenu_layers");var ba=null,S=1,U="toolbars",ra="",la={fill:null,stroke:null};(function(){a("#dialog_container").draggable({cancel:"#dialog_content, #dialog_buttons *",
|
||
|
containment:"window"});var q=a("#dialog_box"),B=a("#dialog_buttons"),K=function(Q,W,ia,va){a("#dialog_content").html("<p>"+W.replace(/\n/g,"</p><p>")+"</p>").toggleClass("prompt",Q=="prompt");B.empty();var ya=a('<input type="button" value="'+e.common.ok+'">').appendTo(B);Q!="alert"&&a('<input type="button" value="'+e.common.cancel+'">').appendTo(B).click(function(){q.hide();ia(false)});if(Q=="prompt"){var Da=a('<input type="text">').prependTo(B);Da.val(va||"");Da.bind("keydown","return",function(){ya.click()})}Q==
|
||
|
"process"&&ya.hide();q.show();ya.click(function(){q.hide();var Ha=Q=="prompt"?Da.val():true;ia&&ia(Ha)}).focus();Q=="prompt"&&Da.focus()};a.alert=function(Q,W){K("alert",Q,W)};a.confirm=function(Q,W){K("confirm",Q,W)};a.process_cancel=function(Q,W){K("process",Q,W)};a.prompt=function(Q,W,ia){K("prompt",Q,ia,W)}})();var ma=function(){var q=a(".tool_button_current");if(q.length&&q[0].id!=="tool_select"){q.removeClass("tool_button_current").addClass("tool_button");a("#tool_select").addClass("tool_button_current").removeClass("tool_button");
|
||
|
a("#styleoverrides").text("#svgcanvas svg *{cursor:move;pointer-events:all} #svgcanvas svg{cursor:default}")}f.setMode("select")},Y=null,za=false,Ia=false,Qa=false,Ka=false,Ua="",Wa=a("title:first").text(),La=function(q,B,K){f.getResolution();a("#svgcanvas").position();if(B=f.setBBoxZoom(B,qa.width()-15,qa.height()-15)){q=B.zoom;B=B.bbox;if(q<0.0010)Na({value:0.1});else{a("#zoom").val(q*100);K?Tb():Tb(false,{x:B.x*q+B.width*q/2,y:B.y*q+B.height*q/2});f.getMode()=="zoom"&&B.width&&ma();t()}}};a("#cur_context_panel").delegate("a",
|
||
|
"click",function(){var q=a(this);q.attr("data-root")?f.leaveContext():f.setContext(q.text());return false});var Ga={},Oa=function(q){a.each(q,function(B,K){var Q=a(B).children(),W=B+"_show",ia=a(W),va=false;Q.addClass("tool_button").unbind("click mousedown mouseup").each(function(Ha){var Aa=K[Ha];Ga[Aa.sel]=Aa.fn;if(Aa.isDefault)va=Ha;Ha=function(fb){var gb=Aa;if(fb.type==="keydown"){var ga=a(gb.parent+"_show").hasClass("tool_button_current"),zb=a(gb.parent+"_show").attr("data-curopt");a.each(q[Aa.parent],
|
||
|
function(Ta,Pa){if(Pa.sel==zb)gb=!fb.shiftKey||!ga?Pa:q[Aa.parent][Ta+1]||q[Aa.parent][0]})}if(a(this).hasClass("disabled"))return false;kb(W)&&gb.fn();var hb=gb.icon?a.getSvgIcon(gb.icon,true):a(gb.sel).children().eq(0).clone();hb[0].setAttribute("width",ia.width());hb[0].setAttribute("height",ia.height());ia.children(":not(.flyout_arrow_horiz)").remove();ia.append(hb).attr("data-curopt",gb.sel)};a(this).mouseup(Ha);Aa.key&&a(document).bind("keydown",Aa.key[0]+" shift+"+Aa.key[0],Ha)});if(va)ia.attr("data-curopt",
|
||
|
K[va].sel);else ia.attr("data-curopt")||ia.attr("data-curopt",K[0].sel);var ya,Da=a(W).position();a(B).css({left:Da.left+34,top:Da.top+77});ia.mousedown(function(Ha){a("#tools_shapelib").is(":visible")&&kb(W,false);if(ia.hasClass("disabled"))return false;var Aa=a(B),fb=Da.left+34,gb=Aa.width()*-1,ga=Aa.data("shown_popop")?200:0;ya=setTimeout(function(){ia.data("isLibrary")?Aa.css("left",fb).show():Aa.css("left",gb).show().animate({left:fb},150);Aa.data("shown_popop",true)},ga);Ha.preventDefault()}).mouseup(function(){clearTimeout(ya);
|
||
|
var Ha=a(this).attr("data-curopt");if(ia.data("isLibrary")&&a(W.replace("_show","")).is(":visible"))kb(W,true);else kb(W)&&Ha in Ga&&Ga[Ha]()})});Nb()},Fa=function(q,B){return a("<div>",{"class":"tools_flyout",id:q}).appendTo("#svg_editor").append(B)},Gb=function(){a(".tools_flyout").each(function(){var q=a("#"+this.id+"_show"),B=q.offset();q=q.outerWidth();a(this).css({left:(B.left+q)*S,top:B.top})})},Nb=function(){a(".tools_flyout").each(function(){var q=a("#"+this.id+"_show");if(!q.data("isLibrary")){var B=
|
||
|
[];a(this).children().each(function(){B.push(this.title)});q[0].title=B.join(" / ")}})},lb,ab=function(q,B,K){var Q=null;if(q.indexOf("url(#")===0){q=(q=f.getRefElem(q))?q.cloneNode(true):a("#"+K+"_color defs *")[0];Q={alpha:B};Q[q.tagName]=q}else Q=q.indexOf("#")===0?{alpha:B,solidColor:q.substr(1)}:{alpha:B,solidColor:"none"};return new a.jGraduate.Paint(Q)},Sa=f.getResolution();if(d.baseUnit!=="px"){Sa.w=svgedit.units.convertUnit(Sa.w)+d.baseUnit;Sa.h=svgedit.units.convertUnit(Sa.h)+d.baseUnit}a(".canvas_width").val(Sa.w);
|
||
|
a(".canvas_height").val(Sa.h);a("#docprops_button").on("click",function(){w()});var Ja=c.setImageURL=function(q){q||(q=ea);f.setImageURL(q);a("#image_url").val(q);if(q.indexOf("data:")===0){a("#image_url").hide();a("#change_image_url").show()}else{f.embedImage(q,function(B){B?a("#url_notice").hide():a("#url_notice").show();ea=q});a("#image_url").show();a("#change_image_url").hide()}},Ea=function(q){var B=Math.min(Math.max(12+q.value.length*6,50),300);a(q).width(B)},Za=function(){var q=Y;if(q!=null&&
|
||
|
!q.parentNode)q=null;var B=f.getCurrentDrawing().getCurrentLayerName(),K=f.getMode(),Q=d.baseUnit!=="px"?d.baseUnit:null,W=K=="pathedit",ia=a("#cmenu_canvas li");a("#selected_panel, #multiselected_panel, #g_panel, #path_panel, #rect_panel, #canvas_panel, #circle_panel,\t\t\t\t\t#ellipse_panel, #line_panel, #text_panel, #image_panel, #container_panel, #use_panel, #a_panel").hide();a(".menu_item","#edit_menu").addClass("disabled");a(".menu_item","#object_menu").addClass("disabled");!q&&!za&&a("#canvas_panel").show();
|
||
|
if(q!=null){var va=q.nodeName,ya=f.getRotationAngle(q);a("#angle").val(Math.round(ya));ya=f.getBlur(q);a("#blur").val(ya);a("#blur_slider").slider("option","value",ya);f.addedNew&&va==="image"&&f.getHref(q).indexOf("data:")!==0&&L();if(!W&&K!="pathedit"){a("#selected_panel").show();a(".action_selected").removeClass("disabled");if(["line","circle","ellipse"].indexOf(va)>=0)a("#xy_panel").hide();else{var Da,Ha;if(["g","polyline","path"].indexOf(va)>=0){if(K=f.getStrokedBBox([q])){Da=K.x;Ha=K.y}}else{Da=
|
||
|
q.getAttribute("x");Ha=q.getAttribute("y")}if(Q){Da=svgedit.units.convertUnit(Da);Ha=svgedit.units.convertUnit(Ha)}a("#selected_x").val(Da||0);a("#selected_y").val(Ha||0);a("#xy_panel").show()}["image","text","path","g","use"].indexOf(va)==-1&&a(".action_path_convert_selected").removeClass("disabled");va==="path"&&a(".action_path_selected").removeClass("disabled")}else{B=sa.getNodePoint();a("#tool_add_subpath").removeClass("push_button_pressed").addClass("tool_button");a("#tool_node_delete").toggleClass("disabled",
|
||
|
!sa.canDeleteNodes);H("#tool_openclose_path",sa.closed_subpath?"open_path":"close_path");if(B){W=a("#seg_type");if(Q){B.x=svgedit.units.convertUnit(B.x);B.y=svgedit.units.convertUnit(B.y)}a("#path_node_x").val(B.x);a("#path_node_y").val(B.y);B.type?W.val(B.type).removeAttr("disabled"):W.val(4).attr("disabled","disabled")}return}Q={g:[],a:[],rect:["rx","width","height"],image:["width","height"],circle:["cx","cy","r"],ellipse:["cx","cy","rx","ry"],line:["x1","y1","x2","y2"],text:[],use:[]};var Aa=q.tagName;
|
||
|
a(q).data("gsvg")&&a("#g_panel").show();Aa=="path"&&a("#path_panel").show();if(Q[Aa]){Q=Q[Aa];a("#"+Aa+"_panel").show();a.each(Q,function(fb,gb){var ga=q.getAttribute(gb);if(d.baseUnit!=="px"&&q[gb])ga=svgedit.units.convertUnit(q[gb].baseVal.value);a("#"+Aa+"_"+gb).val(ga||0)});if(Aa=="text"){a("#text_panel").css("display","inline");f.getItalic()?a("#tool_italic").addClass("push_button_pressed").removeClass("tool_button"):a("#tool_italic").removeClass("push_button_pressed").addClass("tool_button");
|
||
|
f.getBold()?a("#tool_bold").addClass("push_button_pressed").removeClass("tool_button"):a("#tool_bold").removeClass("push_button_pressed").addClass("tool_button");a("#font_family").val(q.getAttribute("font-family"));a("#font_size").val(q.getAttribute("font-size"));a("#text").val(q.textContent);f.addedNew&&setTimeout(function(){a("#text").focus().select()},100)}else if(Aa=="image")Ja(f.getHref(q));else if(Aa==="g"||Aa==="use"){a("#container_panel").show();a(".action_group_selected").removeClass("disabled");
|
||
|
Q=f.getTitle();va=a("#g_title")[0];va.value=Q;Ea(va);Aa=="use"?va.setAttribute("disabled","disabled"):va.removeAttribute("disabled")}}ia[(Aa==="g"?"en":"dis")+"ableContextMenuItems"]("#ungroup");ia[(Aa==="g"||!za?"dis":"en")+"ableContextMenuItems"]("#group")}else if(za){a("#multiselected_panel").show();a(".action_multi_selected").removeClass("disabled");ia.enableContextMenuItems("#group").disableContextMenuItems("#ungroup")}else ia.disableContextMenuItems("#delete,#cut,#copy,#group,#ungroup,#move_front,#move_up,#move_down,#move_back");
|
||
|
ja.getUndoStackSize()>0?a("#tool_undo").removeClass("disabled"):a("#tool_undo").addClass("disabled");ja.getRedoStackSize()>0?a("#tool_redo").removeClass("disabled"):a("#tool_redo").addClass("disabled");f.addedNew=false;if(q&&!W||za){a("#selLayerNames").removeAttr("disabled").val(B);pa.enableContextMenuItems("#delete,#cut,#copy,#move_front,#move_up,#move_down,#move_back")}else a("#selLayerNames").attr("disabled","disabled")};a("#text").focus(function(){});a("#text").blur(function(){});f.bind("selected",
|
||
|
function(q,B){var K=f.getMode();K==="select"&&ma();K=K=="pathedit";Y=B.length==1||B[1]==null?B[0]:null;za=B.length>=2&&B[1]!=null;if(Y!=null)if(!K){if(Y!=null)switch(Y.tagName){case "use":case "image":case "foreignObject":break;case "g":case "a":for(var Q=null,W=Y.getElementsByTagName("*"),ia=0,va=W.length;ia<va;ia++){var ya=W[ia].getAttribute("stroke-width");if(ia===0)Q=ya;else if(Q!==ya)Q=null}a("#stroke_width").val(Q===null?"":Q);la.fill.update(true);la.stroke.update(true);break;default:la.fill.update(true);
|
||
|
la.stroke.update(true);a("#stroke_width").val(Y.getAttribute("stroke-width")||1);a("#stroke_style").val(Y.getAttribute("stroke-dasharray")||"none");Q=Y.getAttribute("stroke-linejoin")||"miter";a("#linejoin_"+Q).length!=0&&z(a("#linejoin_"+Q)[0]);Q=Y.getAttribute("stroke-linecap")||"butt";a("#linecap_"+Q).length!=0&&z(a("#linecap_"+Q)[0])}if(Y!=null){Q=(Y.getAttribute("opacity")||1)*100;a("#group_opacity").val(Q);a("#opac_slider").slider("option","value",Q);a("#elem_id").val(Y.id)}bc()}a("#path_node_panel").toggle(K);
|
||
|
a("#tools_bottom_2,#tools_bottom_3").toggle(!K);if(K){a(".tool_button_current").removeClass("tool_button_current").addClass("tool_button");a("#tool_select").addClass("tool_button_current").removeClass("tool_button");H("#tool_select","select_node");za=false;if(B.length)Y=B[0]}else H("#tool_select","select");Za();f.runExtensions("selectedChanged",{elems:B,selectedElement:Y,multiselected:za})});f.bind("transition",function(q,B){var K=f.getMode(),Q=B[0];if(Q){za=B.length>=2&&B[1]!=null;if(!za)switch(K){case "rotate":K=
|
||
|
f.getRotationAngle(Q);a("#angle").val(Math.round(K));a("#tool_reorient").toggleClass("disabled",K==0)}f.runExtensions("elementTransition",{elems:B})}});f.bind("changed",function(q,B){var K=f.getMode();K==="select"&&ma();for(var Q=0;Q<B.length;++Q){var W=B[Q];if(W&&W.tagName==="svg"){Eb();Tb()}else if(W&&Y&&Y.parentNode==null)Y=W}c.show_save_warning=true;Za();if(Y&&K==="select"){la.fill.update();la.stroke.update()}f.runExtensions("elementChanged",{elems:B})});f.bind("saved",function(q,B){c.show_save_warning=
|
||
|
false;B='<?xml version="1.0"?>\n'+B;var K=navigator.userAgent;if(~K.indexOf("Chrome")&&a.browser.version>=533||~K.indexOf("MSIE"))E(0,true);else{var Q=q.open("data:image/svg+xml;base64,"+ca.encode64(B)),W=a.pref("save_notice_done");if(W!=="all"){var ia=e.notification.saveFromBrowser.replace("%s","SVG");if(K.indexOf("Gecko/")!==-1)if(B.indexOf("<defs")!==-1){ia+="\n\n"+e.notification.defsFailOnSave;a.pref("save_notice_done","all");W="all"}else a.pref("save_notice_done","part");else a.pref("save_notice_done",
|
||
|
"all");W!=="part"&&Q.alert(ia)}}});f.bind("exported",function(q,B){var K=B.issues;a("#export_canvas").length||a("<canvas>",{id:"export_canvas"}).hide().appendTo("body");var Q=a("#export_canvas")[0];Q.width=f.contentW;Q.height=f.contentH;canvg(Q,B.svg,{renderCallback:function(){var W=Q.toDataURL("image/png");ba.location.href=W;if(a.pref("export_notice_done")!=="all"){W=e.notification.saveFromBrowser.replace("%s","PNG");if(K.length)W+="\n\n"+e.notification.noteTheseIssues+"\n \u2022 "+K.join("\n \u2022 ");
|
||
|
a.pref("export_notice_done","all");ba.alert(W)}}})});f.bind("zoomed",La);f.bind("contextset",function(q,B){var K="";if(B){var Q="";K='<a href="#" data-root="y">'+f.getCurrentDrawing().getCurrentLayerName()+"</a>";a(B).parentsUntil("#svgcontent > g").andSelf().each(function(){if(this.id){Q+=" > "+this.id;K+=this!==B?' > <a href="#">'+this.id+"</a>":" > "+this.id}});Ua=Q}else Ua=null;a("#cur_context_panel").toggle(!!B).html(K);C()});f.bind("extension_added",function(q,B){function K(){if(lb){clearTimeout(lb);
|
||
|
lb=null}W||(lb=setTimeout(function(){W=true;aa(b.iconsize)},50))}var Q=false,W=false,ia=true,va=function(){if(B.callback&&!Q&&ia){Q=true;B.callback()}},ya=[];B.context_tools&&a.each(B.context_tools,function(gb,ga){var zb=ga.container_id?' id="'+ga.container_id+'"':"",hb=a("#"+ga.panel);hb.length||(hb=a("<div>",{id:ga.panel}).appendTo("#tools_top"));switch(ga.type){case "tool_button":var Ta='<div class="tool_button">'+ga.id+"</div>",Pa=a(Ta).appendTo(hb);ga.events&&a.each(ga.events,function(ib,sb){a(Pa).bind(ib,
|
||
|
sb)});break;case "select":Ta="<label"+zb+'><select id="'+ga.id+'">';a.each(ga.options,function(ib,sb){Ta+='<option value="'+ib+'"'+(ib==ga.defval?" selected":"")+">"+sb+"</option>"});Ta+="</select></label>";var Ya=a(Ta).appendTo(hb).find("select");a.each(ga.events,function(ib,sb){a(Ya).bind(ib,sb)});break;case "button-select":Ta='<div id="'+ga.id+'" class="dropdown toolset" title="'+ga.title+'"><div id="cur_'+ga.id+'" class="icon_label"></div><button></button></div>';zb=a('<ul id="'+ga.id+'_opts"></ul>').appendTo("#option_lists");
|
||
|
ga.colnum&&zb.addClass("optcols"+ga.colnum);a(Ta).appendTo(hb).children();ya.push({elem:"#"+ga.id,list:"#"+ga.id+"_opts",title:ga.title,callback:ga.events.change,cur:"#cur_"+ga.id});break;case "input":Ta="<label"+zb+'><span id="'+ga.id+'_label">'+ga.label+':</span><input id="'+ga.id+'" title="'+ga.title+'" size="'+(ga.size||"4")+'" value="'+(ga.defval||"")+'" type="text"/></label>';var Ba=a(Ta).appendTo(hb).find("input");ga.spindata&&Ba.SpinButton(ga.spindata);ga.events&&a.each(ga.events,function(ib,
|
||
|
sb){Ba.bind(ib,sb)})}});if(B.buttons){var Da={},Ha={},Aa=B.svgicons,fb={};a.each(B.buttons,function(gb,ga){for(var zb,hb=ga.id,Ta=gb;a("#"+hb).length;)hb=ga.id+"_"+ ++Ta;if(Aa){Da[hb]=ga.icon;Ta=ga.svgicon?ga.svgicon:ga.id;if(ga.type=="app_menu")Ha["#"+hb+" > div"]=Ta;else Ha["#"+hb]=Ta}else zb=ga.type=="menu"?"":a('<img src="'+ga.icon+'">');var Pa,Ya;switch(ga.type){case "mode_flyout":case "mode":Pa="tool_button";if(ga.cls)Pa+=" "+ga.cls;Ya="#tools_left";break;case "context":Pa="tool_button";Ya=
|
||
|
"#"+ga.panel;a(Ya).length||a("<div>",{id:ga.panel}).appendTo("#tools_top");break;case "menu":Pa="menu_item tool_button";Ya="#"+(ga.after||ga.panel);break;case "app_menu":Pa="";Ya=ga.parent||"#main_menu ul";a(Ya).length||a("<div>",{id:ga.panel}).appendTo("#tools_top")}var Ba=a(ga.list||ga.type=="app_menu"?"<li/>":"<div/>").attr("id",hb).attr("title",ga.title).addClass(Pa);if(!ga.includeWith&&!ga.list){if("position"in ga)a(Ya).children().eq(ga.position).before(Ba);else ga.type!="menu"||!ga.after?Ba.appendTo(Ya):
|
||
|
a(Ya).after(Ba);if(ga.type=="mode_flyout"){Ta=a(Ba);Pa=Ta.parent();if(!Ta.parent().hasClass("tools_flyout")){var ib=Ta[0].id.replace("tool_","tools_"),sb=Ta.clone().attr("id",ib+"_show").append(a("<div>",{"class":"flyout_arrow_horiz"}));Ta.before(sb);Pa=Fa(ib,Ta);Pa.data("isLibrary",true);sb.data("isLibrary",true)}Ha["#"+ib+"_show"]=ga.id;hb=fb["#"+Pa[0].id]=[{sel:"#"+hb,fn:ga.events.click,icon:ga.id,isDefault:true},Fb]}else if(ga.type=="app_menu"||ga.type=="menu")Ba.append(ga.title)}else if(ga.list){Ba.addClass("push_button");
|
||
|
a("#"+ga.list+"_opts").append(Ba);if(ga.isDefault){a("#cur_"+ga.list).append(Ba.children().clone());Ta=ga.svgicon?ga.svgicon:ga.id;Ha["#cur_"+ga.list]=Ta}}else if(ga.includeWith){Ya=ga.includeWith;Ta=a(Ya.button);Pa=Ta.parent();if(!Ta.parent().hasClass("tools_flyout")){ib=Ta[0].id.replace("tool_","tools_");sb=Ta.clone().attr("id",ib+"_show").append(a("<div>",{"class":"flyout_arrow_horiz"}));Ta.before(sb);Pa=Fa(ib,Ta)}var Fb=oc.getButtonData(Ya.button);if(Ya.isDefault)Ha["#"+ib+"_show"]=ga.id;hb=fb["#"+
|
||
|
Pa[0].id]=[{sel:"#"+hb,fn:ga.events.click,icon:ga.id,key:ga.key,isDefault:ga.includeWith?ga.includeWith.isDefault:0},Fb];ib="position"in Ya?Ya.position:"last";Fb=Pa.children().length;if(!isNaN(ib)&&ib>=0&&ib<Fb)Pa.children().eq(ib).before(Ba);else{Pa.append(Ba);hb.reverse()}}Aa||Ba.append(zb);ga.list||a.each(ga.events,function(Yb,Mb){if(Yb=="click")if(ga.type=="mode"){ga.includeWith?Ba.bind(Yb,Mb):Ba.bind(Yb,function(){kb(Ba)&&Mb()});if(ga.key){a(document).bind("keydown",ga.key,Mb);ga.title&&Ba.attr("title",
|
||
|
ga.title+" ["+ga.key+"]")}}else Ba.bind(Yb,Mb);else Ba.bind(Yb,Mb)});Oa(fb)});a.each(ya,function(){nb(this.elem,this.list,this.callback,{seticon:true})});if(Aa)ia=false;a.svgIcons(Aa,{w:24,h:24,id_match:false,no_img:!O,fallback:Da,placement:Ha,callback:function(){b.iconsize&&b.iconsize!="m"&&K();ia=true;va()}})}va()});f.textActions.setInputElem(a("#text")[0]);var Ra='<div class="palette_item" data-rgb="#none"></div>';a.each(["#000000","#3f3f3f","#7f7f7f","#bfbfbf","#ffffff","#ff0000","#ff7f00","#ffff00",
|
||
|
"#7fff00","#00ff00","#00ff7f","#00ffff","#007fff","#0000ff","#7f00ff","#ff00ff","#ff007f","#7f0000","#7f3f00","#7f7f00","#3f7f00","#007f00","#007f3f","#007f7f","#003f7f","#00007f","#3f007f","#7f007f","#7f003f","#ffaaaa","#ffd4aa","#ffffaa","#d4ffaa","#aaffaa","#aaffd4","#aaffff","#aad4ff"],function(q,B){Ra+='<div class="palette_item" style="background-color: '+B+';" data-rgb="'+B+'"></div>'});a("#palette").append(Ra);Ra="";a.each(["#FFF","#888","#000"],function(){Ra+='<div class="color_block" style="background-color:'+
|
||
|
this+';"></div>'});a("#bg_blocks").append(Ra);var $a=a("#bg_blocks div");$a.each(function(){a(this).click(function(){$a.removeClass("cur_background");a(this).addClass("cur_background")})});if(a.pref("bkgd_color"))o(a.pref("bkgd_color"),a.pref("bkgd_url"));else a.pref("bkgd_url")&&o(p.bkgd_color,a.pref("bkgd_url"));if(a.pref("img_save")){b.img_save=a.pref("img_save");a("#image_save_opts input").val([b.img_save])}var Na=function(q){var B=q.value/100;if(B<0.0010)q.value=0.1;else{q=f.getZoom();La(window,
|
||
|
{width:0,height:0,x:(qa[0].scrollLeft+qa.width()/2)/q,y:(qa[0].scrollTop+qa.height()/2)/q,zoom:B},true)}},mb=function(q,B){if(B==null)B=q.value;a("#group_opacity").val(B);if(!q||!q.handle)a("#opac_slider").slider("option","value",B);f.setOpacity(B/100)},Ab=function(q,B,K){if(B==null)B=q.value;a("#blur").val(B);var Q=false;if(!q||!q.handle){a("#blur_slider").slider("option","value",B);Q=true}K?f.setBlurNoUndo(B):f.setBlur(B,Q)},cb=function(){window.opera&&a("<p/>").hide().appendTo("body").remove()};
|
||
|
a("#stroke_style").change(function(){f.setStrokeAttr("stroke-dasharray",a(this).val());cb()});a("#stroke_linejoin").change(function(){f.setStrokeAttr("stroke-linejoin",a(this).val());cb()});a("select").change(function(){a(this).blur()});var jb=false;a("#selLayerNames").change(function(){var q=this.options[this.selectedIndex].value,B=e.notification.QmoveElemsToLayer.replace("%s",q),K=function(Q){if(Q){jb=true;f.moveSelectedToLayer(q);f.clearSelection();Eb()}};if(q)jb?K(true):a.confirm(B,K)});a("#font_family").change(function(){f.setFontFamily(this.value)});
|
||
|
a("#seg_type").change(function(){f.setSegType(a(this).val())});a("#text").keyup(function(){f.setTextContent(this.value)});a("#image_url").change(function(){Ja(this.value)});a("#link_url").change(function(){this.value.length?f.setLinkURL(this.value):f.removeHyperlink()});a("#g_title").change(function(){f.setGroupTitle(this.value)});a(".attr_changer").change(function(){var q=this.getAttribute("data-attr"),B=this.value;if(svgedit.units.isValidUnit(q,B,Y))this.blur();else{a.alert(e.notification.invalidAttrValGiven);
|
||
|
this.value=Y.getAttribute(q);return false}if(q!=="id")if(isNaN(B))B=f.convertToNum(q,B);else if(d.baseUnit!=="px"){var K=svgedit.units.getTypeMap();if(Y[q]||f.getMode()==="pathedit"||q==="x"||q==="y")B*=K[d.baseUnit]}if(q==="id"){q=Y;f.clearSelection();q.id=B;f.addToSelection([q],true)}else f.changeSelectedAttribute(q,B);this.blur()});a("#palette").mouseover(function(){var q=a('<input type="hidden">');a(this).append(q);q.focus().remove()});a(".palette_item").mousedown(function(){var q=a("#tool_stroke").hasClass("active"),
|
||
|
B=q?"stroke":"fill",K=a(this).attr("data-rgb"),Q=null;console.log(K);if(K==="transparent"||K==="initial"||K==="#none"){K="none";Q=new a.jGraduate.Paint}else Q=new a.jGraduate.Paint({alpha:100,solidColor:K.substr(1)});la[B].setPaint(Q);if(q){f.setColor("stroke",K);K!="none"&&f.getStrokeOpacity()!=1&&f.setPaintOpacity("stroke",1)}else{f.setColor("fill",K);K!="none"&&f.getFillOpacity()!=1&&f.setPaintOpacity("fill",1)}bc()}).bind("contextmenu",function(q){q.preventDefault()});a("#toggle_stroke_tools").toggle(function(){a(".stroke_tool").css("display",
|
||
|
"table-cell");a(this).addClass("expanded");xa()},function(){a(".stroke_tool").css("display","none");a(this).removeClass("expanded");xa()});var kb=function(q,B){if(a(q).hasClass("disabled"))return false;if(a(q).parent().hasClass("tools_flyout"))return true;var K=K||"normal";B||a(".tools_flyout").fadeOut(K);a("#styleoverrides").text("");a(".tool_button_current").removeClass("tool_button_current").addClass("tool_button");a(q).addClass("tool_button_current").removeClass("tool_button");return true};(function(){var q=
|
||
|
null,B=null,K=qa[0],Q=false,W=false;a("#svgcanvas").bind("mousemove mouseup",function(ia){if(Q!==false){K.scrollLeft-=ia.clientX-q;K.scrollTop-=ia.clientY-B;q=ia.clientX;B=ia.clientY;if(ia.type==="mouseup")Q=false;return false}}).mousedown(function(ia){if(ia.button===1||W===true){Q=true;q=ia.clientX;B=ia.clientY;return false}});a(window).mouseup(function(){Q=false});a(document).bind("keydown","space",function(ia){f.spaceKey=W=true;ia.preventDefault()}).bind("keyup","space",function(ia){ia.preventDefault();
|
||
|
f.spaceKey=W=false}).bind("keydown","alt",function(){f.getMode()==="zoom"&&qa.addClass("out")}).bind("keyup","alt",function(){f.getMode()==="zoom"&&qa.removeClass("out")})})();var Ca=a(".menu"),wb=function(q){q.target.style.background="#fff";setTimeout(function(){q.target.style.background="#ddd"},50);setTimeout(function(){q.target.style.background="#fff"},150);setTimeout(function(){q.target.style.background="#ddd"},200);setTimeout(function(){q.target.style.background=""},200);setTimeout(function(){a("#menu_bar").removeClass("active")},
|
||
|
220);return false};a(".menu_item").live("click",function(q){wb(q)});a("svg, body").on("click",function(q){if(!a(q.target).hasClass("menu_title")&&a("#menu_bar").hasClass("active"))if(!a(q.target).hasClass("disabled")&&a(q.target).hasClass("menu_item"))wb(q);else{a("#menu_bar").removeClass("active");a(".tools_flyout").hide();a("input").blur()}});a(".menu_title").on("click",function(){a("#menu_bar").toggleClass("active")});a(".menu_title").on("mouseover",function(){Ca.removeClass("open");a(this).parent().addClass("open")});
|
||
|
c.addDropDown=function(q,B,K){if(a(q).length!=0){var Q=a(q).find("button"),W=a(q).find("ul").attr("id",a(q)[0].id+"-list");K||a("#option_lists").append(W);var ia=false;K&&a(q).addClass("dropup");W.find("li").bind("mouseup",B);a(window).mouseup(function(){if(!ia){Q.removeClass("down");W.hide()}ia=false});Q.bind("mousedown",function(){if(Q.hasClass("down")){Q.removeClass("down");W.hide()}else{Q.addClass("down");if(!K){var va=a(q).offset();W.css({top:va.top,left:va.left-110})}W.show();ia=true}}).hover(function(){ia=
|
||
|
true}).mouseout(function(){ia=false})}};var nb=function(q,B,K,Q){var W=a(q);B=a(B);var ia=false,va=Q.dropUp;va&&a(q).addClass("dropup");B.find("li").bind("mouseup",function(){if(Q.seticon){H("#cur_"+W[0].id,a(this).children());a(this).addClass("current").siblings().removeClass("current")}K.apply(this,arguments)});a(window).mouseup(function(){if(!ia){W.removeClass("down");B.hide();B.css({top:0,left:0})}ia=false});B.height();a(q).bind("mousedown",function(){var ya=a(q).offset();if(va){ya.top-=B.height();
|
||
|
ya.left+=8}else ya.top+=a(q).height();a(B).offset(ya);if(W.hasClass("down")){W.removeClass("down");B.hide();B.css({top:0,left:0})}else{W.addClass("down");B.show();ia=true;return false}}).hover(function(){ia=true}).mouseout(function(){ia=false});Q.multiclick&&B.mousedown(function(){ia=true})};c.addDropDown("#font_family_dropdown",function(){a(this).text();a("#font_family").val(a(this).text()).change()});c.addDropDown("#opacity_dropdown",function(){if(!a(this).find("div").length){var q=parseInt(a(this).text().split("%")[0]);
|
||
|
mb(false,q)}},false);a("#opac_slider").slider({start:function(){a("#opacity_dropdown li:not(.special)").hide()},stop:function(){a("#opacity_dropdown li").show();a(window).mouseup()},slide:function(q,B){mb(B)}});c.addDropDown("#blur_dropdown",a.noop);var yb=false;a("#blur_slider").slider({max:10,step:0.1,stop:function(q,B){yb=false;Ab(B);a("#blur_dropdown li").show();a(window).mouseup()},start:function(){yb=true},slide:function(q,B){Ab(B,null,yb)}});c.addDropDown("#zoom_dropdown",function(){var q=
|
||
|
a(this),B=q.attr("data-val");B?La(window,B):Na({value:parseInt(q.text())})},true);nb("#stroke_linecap","#linecap_opts",function(){z(this,true)},{dropUp:true});nb("#stroke_linejoin","#linejoin_opts",function(){z(this,true)},{dropUp:true});a("div","#position_opts").each(function(){this.addEventListener("mouseup",function(){var q=this.id.replace("tool_pos","").charAt(0);f.alignSelectedElements(q,"page")})});(function(){var q,B=function(){a(q).blur()};a("#svg_editor").find("button, select, input:not(#text)").focus(function(){q=
|
||
|
this;U="toolbars";qa.mousedown(B)}).blur(function(){U="canvas";qa.unbind("mousedown",B);f.getMode()=="textedit"&&a("#text").focus()})})();var Bb=function(){if(kb("#tool_select")){f.setMode("select");a("#styleoverrides").text("#svgcanvas svg *{cursor:move;pointer-events:all}, #svgcanvas svg{cursor:default}")}},ob=function(){kb("#tool_fhpath")&&f.setMode("fhpath")},Cb=function(){kb("#tool_line")&&f.setMode("line")},Kb=function(){kb("#tool_rect")&&f.setMode("rect")},Ib=function(){kb("#tool_ellipse")&&
|
||
|
f.setMode("ellipse")},Rb=function(){kb("#tool_image")&&f.setMode("image")},na=function(){kb("#tool_zoom")&&f.setMode("zoom")},Z=function(){if(kb("#tool_zoom")){h();ma()}},ta=function(){kb("#tool_text")&&f.setMode("text")},M=function(){kb("#tool_path")&&f.setMode("path")},I=function(){if(Y!=null||za)f.deleteSelectedElements()},X=function(){if(Y!=null||za)f.cutSelectedElements()},Ma=function(){if(Y!=null||za)f.copySelectedElements()},Xa=function(){var q=f.getZoom(),B=(qa[0].scrollLeft+qa.width()/2)/
|
||
|
q-f.contentW;q=(qa[0].scrollTop+qa.height()/2)/q-f.contentH;f.pasteElements("point",B,q)},db=function(){Y!=null&&f.moveToTopSelectedElement()},tb=function(){Y!=null&&f.moveToBottomSelectedElement()},xb=function(){Y!=null&&f.moveUpDownSelected("Up")},Hb=function(){Y!=null&&f.moveUpDownSelected("Down")},pb=function(){Y!=null&&f.convertToPath()},Lb=function(){Y!=null&&sa.reorient()},bb=function(){if(Y!=null||za)a.prompt(e.notification.enterNewLinkURL,"http://",function(q){q&&f.makeHyperlink(q)})},qb=
|
||
|
function(q,B){if(Y!=null||za){if(d.gridSnapping){var K=f.getZoom()*d.snappingStep;q*=K;B*=K}f.moveSelectedElements(q,B)}},Qb=function(){var q=!a("#tool_node_link").hasClass("push_button_pressed");q?a("#tool_node_link").addClass("push_button_pressed").removeClass("tool_button").find("input").attr("checked",true):a("#tool_node_link").removeClass("push_button_pressed").addClass("tool_button").find("input").attr("checked",false);sa.linkControlPoints(q)},$b=function(){sa.getNodePoint()&&sa.clonePathNode()},
|
||
|
Zb=function(){sa.getNodePoint()&&sa.deletePathNode()},rb=function(){var q=a("#tool_add_subpath"),B=!q.hasClass("push_button_pressed");B?q.addClass("push_button_pressed").removeClass("tool_button"):q.removeClass("push_button_pressed").addClass("tool_button");sa.addSubPath(B)},Va=function(){sa.opencloseSubPath()},gc=function(){f.cycleElement(1)},cc=function(){f.cycleElement(0)},Ub=function(q,B){if(!(Y==null||za)){q||(B*=-1);var K=a("#angle").val()*1+B;f.setRotationAngle(K);Za()}},hc=function(){var q=
|
||
|
d.dimensions;a.confirm(e.notification.QwantToClear,function(B){if(B){ma();f.clear();f.setResolution(q[0],q[1]);Tb(true);h();Eb();Za();la.fill.prep();la.stroke.prep();f.runExtensions("onNewDocument")}})},lc=function(){f.setBold(!f.getBold());Za();return false},Wb=function(){f.setItalic(!f.getItalic());Za();return false},ac=function(){if(!l.pngsave){var q=e.notification.loadingImage;ba=window.open("data:text/html;charset=utf-8,<title>"+q+"</title><h1>"+q+"</h1>")}window.canvg?f.rasterExport():a.getScript("canvg/rgbcolor.js",
|
||
|
function(){a.getScript("canvg/canvg.js",function(){f.rasterExport()})})},nc=function(){f.open()},Vb=function(){},ub=function(q){var B=q.prev();B.css("background","#09f");setTimeout(function(){B.css("background","")},200)},ic=function(){if(ja.getUndoStackSize()>0){window.event.type==="keydown"&&ub(a("#edit_menu"));ja.undo();Eb()}},dc=function(){if(ja.getRedoStackSize()>0){window.event.type==="keydown"&&ub(a("#edit_menu"));ja.redo();Eb()}},Sb=function(){if(za)f.groupSelectedElements();else Y&&f.ungroupSelectedElement()},
|
||
|
vb=function(){window.event.type==="keydown"&&ub(a("#edit_menu"));f.cloneSelectedElements(20,20)},fc=function(){var q=this.id.replace("tool_align","").charAt(0);f.alignSelectedElements(q,a("#align_relative_to").val())},g=function(){var q=document.querySelector("#tool_stroke rect"),B=document.querySelector("#tool_fill rect"),K=B.getAttribute("fill"),Q=q.getAttribute("fill");q=parseFloat(q.getAttribute("stroke-opacity"));if(isNaN(q))q=100;B=parseFloat(B.getAttribute("fill-opacity"));if(isNaN(B))B=100;
|
||
|
Q=ab(Q,q,"stroke");K=ab(K,B,"fill");la.fill.setPaint(Q,true);la.stroke.setPaint(K,true)},h=function(q){var B=f.getResolution();q=q?B.zoom*q:1;a("#zoom").val(q*100);f.setZoom(q);t();Tb(true)},k=function(){!a("#tool_wireframe").hasClass("push_button_pressed")?a("#tool_wireframe").addClass("push_button_pressed"):a("#tool_wireframe").removeClass("push_button_pressed");qa.toggleClass("wireframe");if(!kc){var q=a("#wireframe_rules");q.length?q.empty():a('<style id="wireframe_rules"></style>').appendTo("head");
|
||
|
t()}},v=function(){if(a("#tool_rulers").hasClass("push_button_pressed")){a("#tool_rulers").removeClass("push_button_pressed");a("#show_rulers").attr("checked",false);d.showRulers=false}else{a("#tool_rulers").addClass("push_button_pressed");a("#show_rulers").attr("checked",true);d.showRulers=true}a("#rulers").toggle(!!d.showRulers)},t=function(){if(!kc){var q="#workarea.wireframe #svgcontent * { stroke-width: "+1/f.getZoom()+"px; }";a("#wireframe_rules").text(qa.hasClass("wireframe")?q:"")}},E=function(q,
|
||
|
B){if(!Ia){Ia=true;a("#save_output_btns").toggle(!!B);a("#tool_source_back").toggle(!B);var K=ra=f.getSvgString();a("#svg_source_textarea").val(K);a("#svg_source_editor").fadeIn();A();a("#svg_source_textarea").focus()}},w=function(){if(!Qa){Qa=true;a("#image_save_opts input").val([b.img_save]);var q=f.getResolution();if(d.baseUnit!=="px"){q.w=svgedit.units.convertUnit(q.w)+d.baseUnit;q.h=svgedit.units.convertUnit(q.h)+d.baseUnit}a(".canvas_width").val(q.w);a(".canvas_height").val(q.h);a("#canvas_title").val(f.getDocumentTitle());
|
||
|
a("#svg_docprops").show()}},s=function(){if(!Ka){Ka=true;var q=a("#bg_blocks div"),B=a.pref("bkgd_color"),K=a.pref("bkgd_url");q.each(function(){var Q=a(this),W=Q.css("background-color")==B;Q.toggleClass("cur_background",W);W&&a("#canvas_bg_url").removeClass("cur_background")});B||q.eq(0).addClass("cur_background");K&&a("#canvas_bg_url").val(K);a("grid_snapping_step").attr("value",d.snappingStep);d.gridSnapping==true?a("#grid_snapping_on").attr("checked","checked"):a("#grid_snapping_on").removeAttr("checked");
|
||
|
a("#svg_prefs").show()}},A=function(){var q=a("#svg_source_container").height()-50;a("#svg_source_textarea").css("height",q)},F=function(){if(Ia){var q=function(){f.clearSelection();wa();h();Eb();C();la.fill.prep();la.stroke.prep()};f.setSvgString(a("#svg_source_textarea").val())?q():a.confirm(e.notification.QerrorsRevertToSource,function(B){if(!B)return false;q()});ma()}},C=function(q){q=q||f.getDocumentTitle();q=Wa+(q?": "+q:"");a("title:first").text(q)},D=function(){var q=a("#canvas_width"),B=
|
||
|
q.val(),K=a("#canvas_height"),Q=K.val();if(B!="fit"&&!svgedit.units.isValidUnit("width",B)){a.alert(e.notification.invalidAttrValGiven);q.parent().addClass("error");return false}q.parent().removeClass("error");if(Q!="fit"&&!svgedit.units.isValidUnit("height",Q)){a.alert(e.notification.invalidAttrValGiven);K.parent().addClass("error");return false}K.parent().removeClass("error");if(!f.setResolution(B,Q)){a.alert(e.notification.noContentToFitTo);return false}b.img_save=a("#image_save_opts :checked").val();
|
||
|
a.pref("img_save",b.img_save);Tb();ha()},G=function(){var q=a("#bg_blocks div.cur_background").css("background-color")||"#FFF";o(q,a("#canvas_bg_url").val());q=a("#lang_select").val();q!=b.lang&&c.putLocale(q);aa(a("#iconsize").val());d.gridSnapping=a("#grid_snapping_on")[0].checked;d.snappingStep=a("#grid_snapping_step").val();d.showRulers=a("#show_rulers")[0].checked;a("#rulers").toggle(d.showRulers);d.showRulers&&da();d.baseUnit=a("#base_unit").val();f.setConfig(d);Tb();ka()},H=c.setIcon=function(q,
|
||
|
B){var K=typeof B==="string"?a.getSvgIcon(B,true):B.clone();K?a(q).append(K):console.log("NOTE: Icon image missing: "+B)},P;P=function(){var q=/^(Moz|Webkit|Khtml|O|ms|Icab)(?=[A-Z])/,B=document.getElementsByTagName("script")[0],K;for(K in B.style)if(q.test(K))return K.match(q)[0];if("WebkitOpacity"in B.style)return"Webkit";if("KhtmlOpacity"in B.style)return"Khtml";return""}();var R=function(q,B){P.toLowerCase();var K=["top","left","bottom","right"];q.each(function(){for(var Q=a(this),W=Q.outerWidth()*
|
||
|
(B-1),ia=Q.outerHeight()*(B-1),va=0;va<4;va++){var ya=K[va],Da=Q.data("orig_margin-"+ya);if(Da==null){Da=parseInt(Q.css("margin-"+ya));Q.data("orig_margin-"+ya,Da)}Da=Da*B;if(ya==="right")Da+=W;else if(ya==="bottom")Da+=ia;Q.css("margin-"+ya,Da)}})},aa=c.setIconSize=function(q,B){if(!(q==b.size&&!B)){console.log("size",q);var K=a("#tools_top .toolset, #editor_panel > *, #history_panel > *,\t\t\t\t#main_button, #tools_left > *, #path_node_panel > *, #multiselected_panel > *,\t\t\t\t#g_panel > *, #tool_font_size > *, .tools_flyout"),
|
||
|
Q=1;Q=typeof q=="number"?q:{s:0.75,m:1,l:1.25,xl:1.5}[q];c.tool_scale=S=Q;Gb();var W=K.parents(":hidden");W.css("visibility","hidden").show();R(K,Q);W.css("visibility","visible").hide();a.pref("iconsize",q);a("#iconsize").val(q);W={"#tools_top":{left:50,height:72},"#tools_left":{width:31,top:74},"div#workarea":{left:38,top:74}};K=a("#tool_size_rules");if(K.length)K.empty();else K=a('<style id="tool_size_rules"></style>').appendTo("head");if(q!="m"){var ia="";a.each(W,function(va,ya){va="#svg_editor "+
|
||
|
va.replace(/,/g,", #svg_editor");ia+=va+"{";a.each(ya,function(Da,Ha){if(typeof Ha==="number")var Aa=Ha*Q+"px";else if(Ha[q]||Ha.all)Aa=Ha[q]||Ha.all;ia+=Da+":"+Aa+";"});ia+="}"});W="-"+P.toLowerCase()+"-";ia+="#tools_top .toolset, #editor_panel > *, #history_panel > *,\t\t\t\t#main_button, #tools_left > *, #path_node_panel > *, #multiselected_panel > *,\t\t\t\t#g_panel > *, #tool_font_size > *, .tools_flyout{"+W+"transform: scale("+Q+");} #svg_editor div.toolset .toolset {"+W+"transform: scale(1); margin: 1px !important;} #svg_editor .ui-slider {"+
|
||
|
W+"transform: scale("+1/Q+");}";K.text(ia)}Gb()}},ua=function(){a("#dialog_box").hide();if(!Ia&&!Qa&&!Ka)Ua&&f.leaveContext();else{if(Ia)ra!==a("#svg_source_textarea").val()?a.confirm(e.notification.QignoreSourceChanges,function(q){q&&wa()}):wa();else if(Qa)ha();else Ka&&ka();xa()}},wa=function(){a("#svg_source_editor").hide();Ia=false;a("#svg_source_textarea").blur()},ha=function(){a("#svg_docprops").hide();a("#canvas_width,#canvas_height").removeAttr("disabled");a("#resolution")[0].selectedIndex=
|
||
|
0;a("#image_save_opts input").val([b.img_save]);Qa=false},ka=function(){a("#svg_prefs").hide();Ka=false},oa={width:a(window).width(),height:a(window).height()},xa=a.noop,eb;svgedit.browser.isIE()&&function(){xa=function(){if(qa[0].scrollLeft===0&&qa[0].scrollTop===0){qa[0].scrollLeft=eb.left;qa[0].scrollTop=eb.top}};eb={left:qa[0].scrollLeft,top:qa[0].scrollTop};a(window).resize(xa);svgEditor.ready(function(){setTimeout(function(){xa()},500)});qa.scroll(function(){eb={left:qa[0].scrollLeft,top:qa[0].scrollTop}})}();
|
||
|
a(window).resize(function(){Ia&&A();a.each(oa,function(q,B){var K=a(window)[q]();qa[0]["scroll"+(q==="width"?"Left":"Top")]-=(K-B)/2;oa[q]=K})});(function(){qa.scroll(function(){if(a("#ruler_x").length!=0)a("#ruler_x")[0].scrollLeft=qa[0].scrollLeft;if(a("#ruler_y").length!=0)a("#ruler_y")[0].scrollTop=qa[0].scrollTop})})();a("#url_notice").click(function(){a.alert(this.title)});a("#change_image_url").click(L);(function(){var q=["clear","open","save","source","delete","delete_multi","paste","clone",
|
||
|
"clone_multi","move_top","move_bottom"],B="";a.each(q,function(K,Q){B+="#tool_"+Q+(K==q.length-1?",":"")});a(B).mousedown(function(){a(this).addClass("tool_button_current")}).bind("mousedown mouseout",function(){a(this).removeClass("tool_button_current")});a("#tool_undo, #tool_redo").mousedown(function(){a(this).hasClass("disabled")||a(this).addClass("tool_button_current")}).bind("mousedown mouseout",function(){a(this).removeClass("tool_button_current")})})();if(V&&!window.opera){V=["tool_clear",
|
||
|
"tool_save","tool_source","tool_undo","tool_redo","tool_clone"];for(Sa=V.length;Sa--;){var Db=document.getElementById(V[Sa]);if(Db!=null){var Pb=Db.title,Jb=Pb.indexOf("Ctrl+");Db.title=[Pb.substr(0,Jb),"Cmd+",Pb.substr(Jb+5)].join("")}}}var Ob=function(q){var B=q.attr("id")=="stroke_color"?"stroke":"fill",K=la[B].paint,Q=B=="stroke"?"Pick a Stroke Paint and Opacity":"Pick a Fill Paint and Opacity";q=q.position();a("#color_picker").draggable({cancel:".jGraduate_tabs, .jGraduate_colPick, .jGraduate_gradPick, .jPicker",
|
||
|
containment:"window"}).css(d.colorPickerCSS||{left:q.left,bottom:50-q.top}).jGraduate({paint:K,window:{pickerTitle:Q},images:{clientPath:d.jGraduatePath},newstop:"inverse"},function(W){K=new a.jGraduate.Paint(W);la[B].setPaint(K);f.setPaint(B,K);a("#color_picker").hide()},function(){a("#color_picker").hide()})},bc=function(){var q=f.getColor("fill")=="none",B=f.getColor("stroke")=="none",K=["#tool_fhpath","#tool_line"],Q=["#tools_rect .tool_button","#tools_ellipse .tool_button","#tool_text","#tool_path"];
|
||
|
if(B)for(var W in K){var ia=K[W];a(ia).hasClass("tool_button_current")&&Bb();a(ia).addClass("disabled")}else for(W in K){ia=K[W];a(ia).removeClass("disabled")}if(B&&q)for(W in Q){ia=Q[W];a(ia).hasClass("tool_button_current")&&Bb();a(ia).addClass("disabled")}else for(W in Q){ia=Q[W];a(ia).removeClass("disabled")}f.runExtensions("toolButtonStateUpdate",{nofill:q,nostroke:B});a(".tools_flyout").each(function(){var va=a("#"+this.id+"_show"),ya=false;a(this).children().each(function(){a(this).hasClass("disabled")||
|
||
|
(ya=true)});va.toggleClass("disabled",!ya)});cb()};V=function(q,B){var K=d[B==="fill"?"initFill":"initStroke"],Q=(new DOMParser).parseFromString('<svg xmlns="http://www.w3.org/2000/svg"><rect width="100%" height="100%"\t\t\t\t\tfill="#'+K.color+'" opacity="'+K.opacity+'"/>\t\t\t\t\t<defs><linearGradient id="gradbox_"/></defs></svg>',"text/xml").documentElement;Q=a(q)[0].appendChild(document.importNode(Q,true));Q.setAttribute("width",24.5);this.rect=Q.firstChild;this.defs=Q.getElementsByTagName("defs")[0];
|
||
|
this.grad=this.defs.firstChild;this.paint=new a.jGraduate.Paint({solidColor:K.color});this.type=B;this.setPaint=function(W,ia){this.paint=W;var va="none",ya=W.type,Da=W.alpha/100;switch(ya){case "solidColor":va="#"+W[ya];break;case "linearGradient":case "radialGradient":this.defs.removeChild(this.grad);this.grad=this.defs.appendChild(W[ya]);va="url(#"+(this.grad.id="gradbox_"+this.type)+")"}this.rect.setAttribute("fill",va);this.rect.setAttribute("opacity",Da);if(ia){f.setColor(this.type,va,true);
|
||
|
f.setPaintOpacity(this.type,Da,true)}};this.update=function(W){if(Y){var ia=this.type;switch(Y.tagName){case "use":case "image":case "foreignObject":return;case "g":case "a":for(var va=null,ya=Y.getElementsByTagName("*"),Da=0,Ha=ya.length;Da<Ha;Da++){var Aa=ya[Da].getAttribute(ia);if(Da===0)va=Aa;else if(va!==Aa){va=null;break}}if(va===null){ya=null;return}ya=va;va=1;break;default:va=parseFloat(Y.getAttribute(ia+"-opacity"));if(isNaN(va))va=1;ya=ia==="fill"?"black":"none";ya=Y.getAttribute(ia)||ya}if(W){f.setColor(ia,
|
||
|
ya,true);f.setPaintOpacity(ia,va,true)}va*=100;this.setPaint(ab(ya,va,ia))}};this.prep=function(){switch(this.paint.type){case "linearGradient":case "radialGradient":var W=new a.jGraduate.Paint({copy:this.paint});f.setPaint(B,W)}}};la.fill=new V("#fill_color","fill");la.stroke=new V("#stroke_color","stroke");a("#stroke_width").val(d.initStroke.width);a("#group_opacity").val(d.initOpacity*100);V=la.fill.rect.cloneNode(false);V.setAttribute("style","vector-effect:non-scaling-stroke");var kc=V.style.vectorEffect===
|
||
|
"non-scaling-stroke";V.removeAttribute("style");V=la.fill.rect.ownerDocument.createElementNS("http://www.w3.org/2000/svg","feGaussianBlur");typeof V.stdDeviationX==="undefined"&&a("#tool_blur").hide();a(V).remove();setTimeout(function(){f.embedImage("images/placeholder.svg",function(q){if(!q){a("#image_save_opts [value=embed]").attr("disabled","disabled");a("#image_save_opts input").val(["ref"]);b.img_save="ref";a("#image_opt_embed").css("color","#666").attr("title",e.notification.featNotSupported)}})},
|
||
|
1E3);a("#tool_fill").click(function(){if(a("#tool_fill").hasClass("active")){Ob(a("#fill_color"));bc()}else{a("#tool_fill").addClass("active");a("#tool_stroke").removeClass("active")}});a("#tool_stroke").click(function(){if(a("#tool_stroke").hasClass("active")){Ob(a("#stroke_color"));bc()}else{a("#tool_stroke").addClass("active");console.log(a("#tool_stroke"));a("#tool_fill").removeClass("active")}});a("#group_opacityLabel").click(function(){a("#opacity_dropdown button").mousedown();a(window).mouseup()});
|
||
|
a("#zoomLabel").click(function(){a("#zoom_dropdown button").mousedown();a(window).mouseup()});a("#tool_move_top").mousedown(function(q){a("#tools_stacking").show();q.preventDefault()});a(".layer_button").mousedown(function(){a(this).addClass("layer_buttonpressed")}).mouseout(function(){a(this).removeClass("layer_buttonpressed")}).mouseup(function(){a(this).removeClass("layer_buttonpressed")});a(".push_button").mousedown(function(){a(this).hasClass("disabled")||a(this).addClass("push_button_pressed").removeClass("push_button")}).mouseout(function(){a(this).removeClass("push_button_pressed").addClass("push_button")}).mouseup(function(){a(this).removeClass("push_button_pressed").addClass("push_button")});
|
||
|
a("#layer_new").click(function(){var q=f.getCurrentDrawing().getNumLayers();do var B=e.layers.layer+" "+ ++q;while(f.getCurrentDrawing().hasLayer(B));a.prompt(e.notification.enterUniqueLayerName,B,function(K){if(K)if(f.getCurrentDrawing().hasLayer(K))a.alert(e.notification.dupeLayerName);else{f.createLayer(K);Za();Eb()}})});a("#layer_delete").click(T);a("#layer_up").click(function(){J(-1)});a("#layer_down").click(function(){J(1)});a("#layer_rename").click(function(){a("#layerlist tr.layersel").prevAll();
|
||
|
var q=a("#layerlist tr.layersel td.layername").text();a.prompt(e.notification.enterNewLayerName,"",function(B){if(B)if(q==B||f.getCurrentDrawing().hasLayer(B))a.alert(e.notification.layerHasThatName);else{f.renameCurrentLayer(B);Eb()}})});var ec=-1,mc=false,pc=false,rc=function(q){if(pc)if(ec!=-1){mc=true;q=ec-q.pageX;var B=a("#sidepanels"),K=parseInt(B.css("width"));if(K+q>300)q=300-K;else if(K+q<2)q=2-K;if(q!=0){ec-=q;K=a("#layerpanel");qa.css("right",parseInt(qa.css("right"))+q);B.css("width",
|
||
|
parseInt(B.css("width"))+q);K.css("width",parseInt(K.css("width"))+q);B=a("#ruler_x");B.css("right",parseInt(B.css("right"))+q)}}};a("#sidepanel_handle").mousedown(function(q){ec=q.pageX;a(window).mousemove(rc);pc=false;setTimeout(function(){pc=true},20)}).mouseup(function(){mc||sc();ec=-1;mc=false});a(window).mouseup(function(){ec=-1;mc=false;a("#svg_editor").unbind("mousemove",rc)});var sc=function(q){var B=parseInt(a("#sidepanels").css("width"));q=(B>2||q?2:150)-B;B=a("#sidepanels");var K=a("#layerpanel"),
|
||
|
Q=a("#ruler_x");qa.css("right",parseInt(qa.css("right"))+q);B.css("width",parseInt(B.css("width"))+q);K.css("width",parseInt(K.css("width"))+q);Q.css("right",parseInt(Q.css("right"))+q)},tc=function(q){for(var B=Array(f.getCurrentDrawing().getNumLayers()),K=0;K<B.length;++K)B[K]=f.getCurrentDrawing().getLayerName(K);if(q)for(K=0;K<B.length;++K)B[K]!=q&&f.getCurrentDrawing().setLayerOpacity(B[K],0.5);else for(K=0;K<B.length;++K)f.getCurrentDrawing().setLayerOpacity(B[K],1)},Eb=function(){var q=a("#layerlist tbody"),
|
||
|
B=a("#selLayerNames");q.empty();B.empty();for(var K=f.getCurrentDrawing().getCurrentLayerName(),Q=f.getCurrentDrawing().getNumLayers(),W=a.getSvgIcon("eye");Q--;){var ia=f.getCurrentDrawing().getLayerName(Q),va='<tr class="layer';if(ia==K)va+=" layersel";va+='">';va+=f.getCurrentDrawing().getLayerVisibility(ia)?'<td class="layervis"/><td class="layername" >'+ia+"</td></tr>":'<td class="layervis layerinvis"/><td class="layername" >'+ia+"</td></tr>";q.append(va);B.append('<option value="'+ia+'">'+ia+
|
||
|
"</option>")}if(W!==undefined){W.clone();a("td.layervis",q).append(W.clone());a.resizeSvgIcons({"td.layervis .svg_icon":14})}a("#layerlist td.layername").mouseup(function(ya){a("#layerlist tr.layer").removeClass("layersel");a(this.parentNode).addClass("layersel");f.setCurrentLayer(this.textContent);ya.preventDefault()}).mouseover(function(){a(this).css({"font-style":"italic",color:"blue"});tc(this.textContent)}).mouseout(function(){a(this).css({"font-style":"normal",color:"black"});tc()});a("#layerlist td.layervis").click(function(){var ya=
|
||
|
a(this.parentNode).prevAll().length;ya=a("#layerlist tr.layer:eq("+ya+") td.layername").text();var Da=a(this).hasClass("layerinvis");f.setLayerVisibility(ya,Da);Da?a(this).removeClass("layerinvis"):a(this).addClass("layerinvis")});for(B=5-a("#layerlist tr.layer").size();B-- >0;)q.append('<tr><td style="color:white">_</td><td/></tr>')};Eb();a(window).bind("load resize",function(){qa.css("line-height",qa.height()+"px")});a("#resolution").change(function(){var q=a("#canvas_width,#canvas_height");if(this.selectedIndex)if(this.value==
|
||
|
"content")q.val("fit").attr("disabled","disabled");else{var B=this.value.split("x");a("#canvas_width").val(B[0]);a("#canvas_height").val(B[1]);q.removeAttr("disabled")}else a("#canvas_width").val()=="fit"&&q.removeAttr("disabled").val(100)});a("input,select").attr("autocomplete","off");var oc=function(){var q=[{sel:"#tool_select",fn:Bb,evt:"click",key:["V",true]},{sel:"#tool_fhpath",fn:ob,evt:"click",key:["Q",true]},{sel:"#tool_line",fn:Cb,evt:"click",key:["L",true]},{sel:"#tool_rect",fn:Kb,evt:"click",
|
||
|
key:["R",true],icon:"rect"},{sel:"#tool_ellipse",fn:Ib,evt:"mouseup",key:["C",true],icon:"ellipse"},{sel:"#tool_path",fn:M,evt:"click",key:["P",true]},{sel:"#tool_text",fn:ta,evt:"click",key:["T",true]},{sel:"#tool_image",fn:Rb,evt:"mouseup"},{sel:"#tool_zoom",fn:na,evt:"mouseup",key:["Z",true]},{sel:"#tool_clear",fn:hc,evt:"mouseup",key:[fa+"N",true]},{sel:"#tool_save",fn:function(){Ia?F():f.save({images:b.img_save,round_digits:6})},evt:"mouseup",key:[fa+"S",true]},{sel:"#tool_export",fn:ac,evt:"mouseup"},
|
||
|
{sel:"#tool_open",fn:nc,evt:"mouseup"},{sel:"#tool_import",fn:Vb,evt:"mouseup"},{sel:"#tool_source",fn:E,evt:"click",key:[fa+"U",true]},{sel:"#tool_wireframe",fn:k,evt:"click"},{sel:"#tool_rulers",fn:v,evt:"click"},{sel:"#tool_source_cancel,#svg_source_overlay,#tool_docprops_cancel,#tool_prefs_cancel",fn:ua,evt:"click",key:["esc",false,false],hidekey:true},{sel:"#tool_source_save",fn:F,evt:"click"},{sel:"#tool_docprops_save",fn:D,evt:"click"},{sel:"#tool_docprops",fn:w,evt:"mouseup"},{sel:"#tool_prefs_save",
|
||
|
fn:G,evt:"click"},{sel:"#tool_prefs_option",fn:function(){s();return false},evt:"mouseup"},{sel:"#tool_delete,#tool_delete_multi",fn:I,evt:"click",key:["del/backspace",true]},{sel:"#tool_reorient",fn:Lb,evt:"click"},{sel:"#tool_node_link",fn:Qb,evt:"click"},{sel:"#tool_node_clone",fn:$b,evt:"click"},{sel:"#tool_node_delete",fn:Zb,evt:"click"},{sel:"#tool_openclose_path",fn:Va,evt:"click"},{sel:"#tool_add_subpath",fn:rb,evt:"click"},{sel:"#tool_move_top",fn:db,evt:"click",key:fa+"shift+up"},{sel:"#tool_move_bottom",
|
||
|
fn:tb,evt:"click",key:fa+"shift+down"},{sel:"#tool_move_up",fn:xb,evt:"click",key:[fa+"up",true]},{sel:"#tool_move_down",fn:Hb,evt:"click",key:[fa+"down",true]},{sel:"#tool_topath",fn:pb,evt:"click"},{sel:"#tool_make_link,#tool_make_link_multi",fn:bb,evt:"click"},{sel:"#tool_undo",fn:ic,evt:"click",key:[fa+"Z",true]},{sel:"#tool_redo",fn:dc,evt:"click",key:["Y",true]},{sel:"#tool_clone,#tool_clone_multi",fn:vb,evt:"click",key:[fa+"D",true]},{sel:"#tool_group",fn:Sb,evt:"click",key:[fa+"G",true]},
|
||
|
{sel:"#tool_ungroup",fn:Sb,evt:"click",key:fa+"shift+G"},{sel:"#tool_unlink_use",fn:Sb,evt:"click"},{sel:"[id^=tool_align]",fn:fc,evt:"click"},{sel:"#tool_switch",fn:g,evt:"click",key:["X",true]},{sel:"#tool_bold",fn:lc,evt:"mousedown",key:[fa+"B",true]},{sel:"#tool_italic",fn:Wb,evt:"mousedown",key:[fa+"I",true]},{sel:"#copy_save_done",fn:ua,evt:"click"},{key:"ctrl+left",fn:function(){Ub(0,1)}},{key:"ctrl+right",fn:function(){Ub(1,1)}},{key:"ctrl+shift+left",fn:function(){Ub(0,5)}},{key:"ctrl+shift+right",
|
||
|
fn:function(){Ub(1,5)}},{key:"shift+O",fn:cc},{key:"shift+P",fn:gc},{key:[fa+"+",true],fn:function(){h(2)}},{key:[fa+"-",true],fn:function(){h(0.5)}},{key:["up",true],fn:function(){qb(0,-1)}},{key:["down",true],fn:function(){qb(0,1)}},{key:["left",true],fn:function(){qb(-1,0)}},{key:["right",true],fn:function(){qb(1,0)}},{key:"shift+up",fn:function(){qb(0,-10)}},{key:"shift+down",fn:function(){qb(0,10)}},{key:"shift+left",fn:function(){qb(-10,0)}},{key:"shift+right",fn:function(){qb(10,0)}},{key:["alt+up",
|
||
|
true],fn:function(){f.cloneSelectedElements(0,-1)}},{key:["alt+down",true],fn:function(){f.cloneSelectedElements(0,1)}},{key:["alt+left",true],fn:function(){f.cloneSelectedElements(-1,0)}},{key:["alt+right",true],fn:function(){f.cloneSelectedElements(1,0)}},{key:["alt+shift+up",true],fn:function(){f.cloneSelectedElements(0,-10)}},{key:["alt+shift+down",true],fn:function(){f.cloneSelectedElements(0,10)}},{key:["alt+shift+left",true],fn:function(){f.cloneSelectedElements(-10,0)}},{key:["alt+shift+right",
|
||
|
true],fn:function(){f.cloneSelectedElements(10,0)}},{key:fa+"A",fn:function(){f.selectAllInCurrentLayer()}},{key:fa+"z",fn:ic},{key:fa+"shift+z",fn:dc},{key:fa+"y",fn:dc},{key:fa+"x",fn:X},{key:fa+"c",fn:Ma},{key:fa+"v",fn:Xa}],B={"4/Shift+4":"#tools_rect_show","5/Shift+5":"#tools_ellipse_show"};return{setAll:function(){var K={};a.each(q,function(Q,W){if(W.sel){var ia=a(W.sel);if(ia.length==0)return true;if(W.evt){if(svgedit.browser.isTouch()&&W.evt==="click")W.evt="mousedown";ia[W.evt](W.fn)}if(W.parent&&
|
||
|
a(W.parent+"_show").length!=0){var va=a(W.parent);va.length||(va=Fa(W.parent.substr(1)));va.append(ia);a.isArray(K[W.parent])||(K[W.parent]=[]);K[W.parent].push(W)}}if(W.key){var ya=W.fn,Da=false;if(a.isArray(W.key)){va=W.key[0];if(W.key.length>1)Da=W.key[1]}else va=W.key;va+="";svgedit.browser.isMac&&va.indexOf("+")!=-1&&va.split("+")[0]=="ctrl"&&va.replace("ctrl","cmd");a.each(va.split("/"),function(Aa,fb){a(document).bind("keydown",fb,function(gb){ya();Da&&gb.preventDefault();return false})});
|
||
|
if(W.sel&&!W.hidekey&&ia.attr("title")){var Ha=ia.attr("title").split("[")[0]+" ("+va+")";B[va]=W.sel;ia.parents("#main_menu").length||ia.attr("title",Ha)}}});Oa(K);a(".attr_changer, #image_url").bind("keydown","return",function(Q){a(this).change();Q.preventDefault()});a(window).bind("keydown","tab",function(Q){if(U==="canvas"){Q.preventDefault();gc()}}).bind("keydown","shift+tab",function(Q){if(U==="canvas"){Q.preventDefault();cc()}});a("#tool_zoom").dblclick(Z)},setTitles:function(){a.each(B,function(K,
|
||
|
Q){var W=a(Q).parents("#main_menu").length;a(Q).each(function(){var ia=W?a(this).text().split(" [")[0]:this.title.split(" [")[0],va="";a.each(K.split("/"),function(ya,Da){var Ha=Da.split("+"),Aa="";if(Ha.length>1){Aa=Ha[0]+"+";Da=Ha[1]}va+=(ya?"/":"")+Aa+(e["key_"+Da]||Da)});if(W)this.lastChild.textContent=ia+" ["+va+"]";else this.title=ia+" ["+va+"]"})})},getButtonData:function(K){var Q;a.each(q,function(W,ia){if(ia.sel===K)Q=ia});return Q}}}();oc.setAll();c.ready(function(){var q=d.initTool,B=a("#tools_left, #svg_editor .tools_flyout"),
|
||
|
K=B.find("#tool_"+q);q=B.find("#"+q);(K.length?K:q.length?q:a("#tool_select")).click().mouseup();d.wireframe&&a("#tool_wireframe").click();d.showlayers&&sc();a("#rulers").toggle(!!d.showRulers);if(d.showRulers)a("#show_rulers")[0].checked=true;if(d.gridSnapping)a("#grid_snapping_on")[0].checked=true;d.baseUnit&&a("#base_unit").val(d.baseUnit);d.snappingStep&&a("#grid_snapping_step").val(d.snappingStep)});a("#rect_rx").SpinButton({min:0,max:1E3,step:1,callback:function(q){f.setRectRadius(q.value)}});
|
||
|
a("#stroke_width").SpinButton({min:0,max:99,step:1,smallStep:0.1,callback:function(q){var B=q.value;if(B==0&&Y&&["line","polyline"].indexOf(Y.nodeName)>=0)B=q.value=1;f.setStrokeWidth(B)}});a("#angle").SpinButton({min:-180,max:180,step:5,callback:function(q){f.setRotationAngle(q.value);a("#tool_reorient").toggleClass("disabled",q.value==0)}});a("#font_size").SpinButton({step:1,min:0.0010,stepfunc:function(q,B){var K=q.value-0,Q=K+B,W=Q>=K;if(B===0)return K;return K>=24?W?Math.round(K*1.1):Math.round(K/
|
||
|
1.1):K<=1?W?K*2:K/2:Q},callback:function(q){f.setFontSize(q.value)}});a("#group_opacity").SpinButton({step:5,min:0,max:100,callback:mb});a("#blur").SpinButton({step:0.1,min:0,max:10,callback:Ab});a("#zoom").SpinButton({min:0.0010,max:1E4,step:50,stepfunc:function(q,B){var K=q.value-0;if(K===0)return 100;var Q=K+B;if(B===0)return K;return K>=100?Q:Q>=K?K*2:K/2},callback:Na}).val(f.getZoom()*100);a("#workarea").contextMenu({menu:"cmenu_canvas",inSpeed:0},function(q){switch(q){case "delete":I();break;
|
||
|
case "cut":X();break;case "copy":Ma();break;case "paste":f.pasteElements();break;case "paste_in_place":f.pasteElements("in_place");break;case "group":f.groupSelectedElements();break;case "ungroup":f.ungroupSelectedElement();break;case "move_front":db();break;case "move_up":Y!=null&&f.moveUpDownSelected("Up");break;case "move_down":Y!=null&&f.moveUpDownSelected("Down");break;case "move_back":tb();break;default:svgedit.contextmenu&&svgedit.contextmenu.hasCustomHandler(q)&&svgedit.contextmenu.getCustomHandler(q).call()}f.clipBoard.length&&
|
||
|
pa.enableContextMenuItems("#paste,#paste_in_place")});V=function(q){switch(q){case "dupe":N();break;case "delete":T();break;case "merge_down":if(a("#layerlist tr.layersel").index()!=f.getCurrentDrawing().getNumLayers()-1){f.mergeLayer();Za();Eb()}break;case "merge_all":f.mergeAllLayers();Za();Eb()}};a("#layerlist").contextMenu({menu:"cmenu_layers",inSpeed:0},V);a("#layer_moreopts").contextMenu({menu:"cmenu_layers",inSpeed:0,allowLeft:true},V);a(".contextMenu li").mousedown(function(q){q.preventDefault()});
|
||
|
a("#cmenu_canvas li").disableContextMenu();pa.enableContextMenuItems("#delete,#cut,#copy");window.onbeforeunload=function(){if(ja.getUndoStackSize()===0)c.show_save_warning=false;if(!d.no_save_warning&&c.show_save_warning)return e.notification.unsavedChanges};c.openPrep=function(q){a("#main_menu").hide();ja.getUndoStackSize()===0?q(true):a.confirm(e.notification.QwantToOpen,q)};if(window.FileReader){V=a('<input type="file">').change(function(){var q=this;c.openPrep(function(B){if(B){f.clear();if(q.files.length==
|
||
|
1){B=new FileReader;B.onloadend=function(K){n(K.target.result);Tb()};B.readAsText(q.files[0])}}})});a("#tool_open").show().prepend(V);V=a('<input type="file">').change(function(){a("#main_menu").hide();if(this.files.length==1){var q=new FileReader;q.onloadend=function(B){f.importSvgString(B.target.result,true);Tb()};q.readAsText(this.files[0])}});a("#tool_import").show().prepend(V)}var Tb=c.updateCanvas=function(q,B){var K=qa.width(),Q=qa.height(),W=K,ia=Q,va=f.getZoom(),ya=a("#svgcanvas"),Da={x:qa[0].scrollLeft+
|
||
|
W/2,y:qa[0].scrollTop+ia/2},Ha=d.canvas_expansion;K=Math.max(W,f.contentW*va*Ha);Q=Math.max(ia,f.contentH*va*Ha);K==W&&Q==ia?qa.css("overflow","hidden"):qa.css("overflow","scroll");Ha=ya.height()/2;var Aa=ya.width()/2;ya.width(K).height(Q);var fb=Q/2,gb=K/2,ga=f.updateCanvas(K,Q),zb=gb/Aa;K=K/2-W/2;Q=Q/2-ia/2;if(B){B.x+=ga.x;B.y+=ga.y}else B={x:gb+(Da.x-Aa)*zb,y:fb+(Da.y-Ha)*zb};if(q)if(f.contentW>qa.width()){qa[0].scrollLeft=ga.x-10;qa[0].scrollTop=ga.y-10}else{qa[0].scrollLeft=K;qa[0].scrollTop=
|
||
|
Q}else{qa[0].scrollLeft=B.x-W/2;qa[0].scrollTop=B.y-ia/2}if(d.showRulers){da(ya,va);qa.scroll()}},jc=[];for(Sa=0.1;Sa<1E5;Sa*=10){jc.push(1*Sa);jc.push(2*Sa);jc.push(5*Sa)}Tb(true);try{var uc=function(q){if(window.JSON&&JSON.stringify)return JSON.stringify(q);var B=arguments.callee;if(typeof q=="boolean"||typeof q=="number")return q+"";else if(typeof q=="string")return'"'+q.replace(/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,
|
||
|
function(W){return"\\u"+("0000"+W.charCodeAt(0).toString(16)).slice(-4)})+'"';else if(q.length){for(var K=0;K<q.length;K++)q[K]=B(q[K]);return"["+q.join(",")+"]"}else{K=[];for(var Q in q)K.push(B(Q)+":"+B(q[Q]));return"{"+K.join(",")+"}"}};window.addEventListener("message",function(q){var B=parseInt(q.data.substr(0,q.data.indexOf(";")));try{q.source.postMessage("SVGe"+B+";"+uc(eval(q.data)),"*")}catch(K){q.source.postMessage("SVGe"+B+";error:"+K.message,"*")}},false)}catch(vc){window.embed_error=
|
||
|
vc}a(function(){window.svgCanvas=f;f.ready=svgEditor.ready});c.setLang=function(q,B){a.pref("lang",q);a("#lang_select").val(q);if(B){var K=a("#layerlist tr.layersel td.layername").text()==e.common.layer+" 1";a.extend(e,B);f.setUiStrings(B);oc.setTitles();if(K){f.renameCurrentLayer(e.common.layer+" 1");Eb()}f.runExtensions("langChanged",q);Nb();a.each({"#stroke_color":"#tool_stroke .icon_label, #tool_stroke .color_block","#fill_color":"#tool_fill label, #tool_fill .color_block","#linejoin_miter":"#cur_linejoin",
|
||
|
"#linecap_butt":"#cur_linecap"},function(Q,W){a(W).attr("title",a(Q)[0].title)});a("#multiselected_panel div[id^=tool_align]").each(function(){a("#tool_pos"+this.id.substr(10))[0].title=this.title})}}};var u=[];c.ready=function(z){m?z():u.push(z)};c.runCallbacks=function(){a.each(u,function(){this()});m=true};c.loadFromString=function(z){c.ready(function(){n(z)})};c.disableUI=function(){};c.loadFromURL=function(z,o){o||(o={});var L=o.cache,T=o.callback;c.ready(function(){a.ajax({url:z,dataType:"text",
|
||
|
cache:!!L,success:function(N){n(N,T)},error:function(N,J,da){N.status!=404&&N.responseText?n(N.responseText,T):a.alert(e.notification.URLloadFail+": \n"+da+"",T)}})})};c.loadFromDataURI=function(z){c.ready(function(){var o=z.substring(26);n(svgedit.utilities.decode64(o))})};c.addExtension=function(){var z=arguments;a(function(){f&&f.addExtension.apply(this,z)})};return c}(jQuery);$(svgEditor.init)})();svgedit=svgedit||{};
|
||
|
(function(){var a=this;if(!svgedit.contextmenu)svgedit.contextmenu={};a.contextMenuExtensions={};svgEditor.ready(function(){for(menuItem in contextMenuExtensions){var n=contextMenuExtensions[menuItem];Object.keys(a.contextMenuExtensions).length==0&&$("#cmenu_canvas").append("<li class='separator'>");var f=n.shortcut||"";$("#cmenu_canvas").append("<li class='disabled'><a href='#"+n.id+"'>"+n.label+"<span class='shortcut'>"+f+"</span></a></li>")}});svgedit.contextmenu.resetCustomMenus=function(){a.contextMenuExtensions=
|
||
|
{}};svgedit.contextmenu.add=function(n){if(n&&n.id&&n.label&&n.action&&typeof n.action=="function")if(n.id in a.contextMenuExtensions)console.error('Cannot add extension "'+n.id+'", an extension by that name already exists"');else{console.log("Registed contextmenu item: {id:"+n.id+", label:"+n.label+"}");a.contextMenuExtensions[n.id]=n}else console.error("Menu items must be defined and have at least properties: id, label, action, where action must be a function")};svgedit.contextmenu.hasCustomHandler=
|
||
|
function(n){return a.contextMenuExtensions[n]&&true};svgedit.contextmenu.getCustomHandler=function(n){return a.contextMenuExtensions[n].action}})();var svgEditor=function(a,n){function f(m,p,b){var d=a("#svg_editor").parent(),e;for(e in p){var l=p[e];l||console.log(e);if(b)e="#"+e;if(d.find(e).length){var u=d.find(e)[0];switch(m){case "content":for(var z=0;z<u.childNodes.length;z++){var o=u.childNodes[z];if(o.nodeType===3&&o.textContent.replace(/\s/g,"")){o.textContent=l;break}}break;case "title":u.title=l}}else console.log("Missing: "+e)}}var c;n.readLang=function(m){var p=n.canvas.runExtensions("addlangData",c,true);a.each(p,function(T,N){if(N.data)m=
|
||
|
a.merge(m,N.data)});if(m.tools){var b=m.tools;p=m.properties;var d=m.config,e=m.layers,l=m.common,u=m.ui;f("content",{copyrightLabel:m.misc.powered_by,curve_segments:p.curve_segments,fitToContent:b.fitToContent,fit_to_all:b.fit_to_all,fit_to_canvas:b.fit_to_canvas,fit_to_layer_content:b.fit_to_layer_content,fit_to_sel:b.fit_to_sel,icon_large:d.icon_large,icon_medium:d.icon_medium,icon_small:d.icon_small,icon_xlarge:d.icon_xlarge,image_opt_embed:d.image_opt_embed,image_opt_ref:d.image_opt_ref,includedImages:d.included_images,
|
||
|
largest_object:b.largest_object,layersLabel:e.layers,page:b.page,relativeToLabel:b.relativeTo,selLayerLabel:e.move_elems_to,selectedPredefined:d.select_predefined,selected_objects:b.selected_objects,smallest_object:b.smallest_object,straight_segments:p.straight_segments,svginfo_bg_url:d.editor_img_url+":",svginfo_bg_note:d.editor_bg_note,svginfo_change_background:d.background,svginfo_dim:d.doc_dims,svginfo_editor_prefs:d.editor_prefs,svginfo_height:l.height,svginfo_icons:d.icon_size,svginfo_image_props:d.image_props,
|
||
|
svginfo_lang:d.language,svginfo_title:d.doc_title,svginfo_width:l.width,tool_docprops_cancel:l.cancel,tool_docprops_save:l.ok,tool_source_cancel:l.cancel,tool_source_save:l.ok,tool_prefs_cancel:l.cancel,tool_prefs_save:l.ok,sidepanel_handle:e.layers.split("").join(" "),tool_clear:b.new_doc,tool_docprops:b.docprops,tool_export:b.export_png,tool_import:b.import_doc,tool_imagelib:b.imagelib,tool_open:b.open_doc,tool_save:b.save_doc,svginfo_units_rulers:d.units_and_rulers,svginfo_rulers_onoff:d.show_rulers,
|
||
|
svginfo_unit:d.base_unit,svginfo_grid_settings:d.grid,svginfo_snap_onoff:d.snapping_onoff,svginfo_snap_step:d.snapping_stepsize},true);var z={},o;for(o in m.shape_cats)z['#shape_cats [data-cat="'+o+'"]']=m.shape_cats[o];setTimeout(function(){f("content",z)},2E3);var L={};a.each(["cut","copy","paste","paste_in_place","delete","group","ungroup","move_front","move_up","move_down","move_back"],function(){L['#cmenu_canvas a[href="#'+this+'"]']=b[this]});a.each(["dupe","merge_down","merge_all"],function(){L['#cmenu_layers a[href="#'+
|
||
|
this+'"]']=e[this]});L['#cmenu_layers a[href="#delete"]']=e.del;f("content",L);f("title",{align_relative_to:b.align_relative_to,circle_cx:p.circle_cx,circle_cy:p.circle_cy,circle_r:p.circle_r,cornerRadiusLabel:p.corner_radius,ellipse_cx:p.ellipse_cx,ellipse_cy:p.ellipse_cy,ellipse_rx:p.ellipse_rx,ellipse_ry:p.ellipse_ry,fill_color:p.fill_color,font_family:p.font_family,idLabel:p.id,image_height:p.image_height,image_url:p.image_url,image_width:p.image_width,layer_delete:e.del,layer_down:e.move_down,
|
||
|
layer_new:e["new"],layer_rename:e.rename,layer_moreopts:l.more_opts,layer_up:e.move_up,line_x1:p.line_x1,line_x2:p.line_x2,line_y1:p.line_y1,line_y2:p.line_y2,linecap_butt:p.linecap_butt,linecap_round:p.linecap_round,linecap_square:p.linecap_square,linejoin_bevel:p.linejoin_bevel,linejoin_miter:p.linejoin_miter,linejoin_round:p.linejoin_round,main_icon:b.main_menu,mode_connect:b.mode_connect,tools_shapelib_show:b.mode_shapelib,palette:u.palette_info,zoom_panel:u.zoom_level,path_node_x:p.node_x,path_node_y:p.node_y,
|
||
|
rect_height_tool:p.rect_height,rect_width_tool:p.rect_width,seg_type:p.seg_type,selLayerNames:e.move_selected,selected_x:p.pos_x,selected_y:p.pos_y,stroke_color:p.stroke_color,stroke_style:p.stroke_style,stroke_width:p.stroke_width,svginfo_title:d.doc_title,text:p.text_contents,toggle_stroke_tools:u.toggle_stroke_tools,tool_add_subpath:b.add_subpath,tool_alignbottom:b.align_bottom,tool_aligncenter:b.align_center,tool_alignleft:b.align_left,tool_alignmiddle:b.align_middle,tool_alignright:b.align_right,
|
||
|
tool_aligntop:b.align_top,tool_angle:p.angle,tool_blur:p.blur,tool_bold:p.bold,tool_circle:b.mode_circle,tool_clone:b.clone,tool_clone_multi:b.clone,tool_delete:b.del,tool_delete_multi:b.del,tool_ellipse:b.mode_ellipse,tool_eyedropper:b.mode_eyedropper,tool_fhellipse:b.mode_fhellipse,tool_fhpath:b.mode_fhpath,tool_fhrect:b.mode_fhrect,tool_font_size:p.font_size,tool_group:b.group,tool_make_link:b.make_link,tool_link_url:b.set_link_url,tool_image:b.mode_image,tool_italic:p.italic,tool_line:b.mode_line,
|
||
|
tool_move_bottom:b.move_bottom,tool_move_top:b.move_top,tool_node_clone:b.node_clone,tool_node_delete:b.node_delete,tool_node_link:b.node_link,tool_opacity:p.opacity,tool_openclose_path:b.openclose_path,tool_path:b.mode_path,tool_position:b.align_to_page,tool_rect:b.mode_rect,tool_redo:b.redo,tool_reorient:b.reorient_path,tool_select:b.mode_select,tool_source:b.source_save,tool_square:b.mode_square,tool_text:b.mode_text,tool_topath:b.to_path,tool_undo:b.undo,tool_ungroup:b.ungroup,tool_wireframe:b.wireframe_mode,
|
||
|
view_grid:b.toggle_grid,tool_zoom:b.mode_zoom,url_notice:b.no_embed},true);n.setLang(c,m)}};n.putLocale=function(m,p){if(m)c=m;else{c=a.pref("lang");if(!c){if(navigator.userLanguage)c=navigator.userLanguage;else if(navigator.language)c=navigator.language;if(c=="")return}console.log("Lang: "+c);if(a.inArray(c,p)==-1&&c!=="test")c="en";if(c.indexOf("en")==0)return}var b=n.curConfig.langPath+"lang."+c+".js";a.getScript(b,function(d){if(!d){d=document.createElement("script");d.src=b;document.querySelector("head").appendChild(d)}})};
|
||
|
return n}(jQuery,svgEditor);(function(a,n){function f(m){return!a(m).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}function c(m,p){var b=m.nodeName.toLowerCase();if("area"===b){b=m.parentNode;var d=b.name;if(!m.href||!d||b.nodeName.toLowerCase()!=="map")return false;b=a("img[usemap=#"+d+"]")[0];return!!b&&f(b)}return(/input|select|textarea|button|object/.test(b)?!m.disabled:"a"==b?m.href||p:p)&&f(m)}a.ui=a.ui||{};a.ui.version||(a.extend(a.ui,{version:"1.8.17",
|
||
|
keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}}),a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(m,p){return typeof m=="number"?this.each(function(){var b=
|
||
|
this;setTimeout(function(){a(b).focus();p&&p.call(b)},m)}):this._focus.apply(this,arguments)},scrollParent:function(){var m;a.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?m=this.parents().filter(function(){return/(relative|absolute|fixed)/.test(a.curCSS(this,"position",1))&&/(auto|scroll)/.test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0):m=this.parents().filter(function(){return/(auto|scroll)/.test(a.curCSS(this,
|
||
|
"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0);return/fixed/.test(this.css("position"))||!m.length?a(document):m},zIndex:function(m){if(m!==n)return this.css("zIndex",m);if(this.length){m=a(this[0]);for(var p;m.length&&m[0]!==document;){p=m.css("position");if(p==="absolute"||p==="relative"||p==="fixed"){p=parseInt(m.css("zIndex"),10);if(!isNaN(p)&&p!==0)return p}m=m.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":
|
||
|
"mousedown")+".ui-disableSelection",function(m){m.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}}),a.each(["Width","Height"],function(m,p){function b(u,z,o,L){a.each(d,function(){z-=parseFloat(a.curCSS(u,"padding"+this,true))||0;o&&(z-=parseFloat(a.curCSS(u,"border"+this+"Width",true))||0);L&&(z-=parseFloat(a.curCSS(u,"margin"+this,true))||0)});return z}var d=p==="Width"?["Left","Right"]:["Top","Bottom"],e=p.toLowerCase(),l={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,
|
||
|
outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};a.fn["inner"+p]=function(u){if(u===n)return l["inner"+p].call(this);return this.each(function(){a(this).css(e,b(this,u)+"px")})};a.fn["outer"+p]=function(u,z){if(typeof u!="number")return l["outer"+p].call(this,u);return this.each(function(){a(this).css(e,b(this,u,true,z)+"px")})}}),a.extend(a.expr[":"],{data:function(m,p,b){return!!a.data(m,b[3])},focusable:function(m){return c(m,!isNaN(a.attr(m,"tabindex")))},tabbable:function(m){var p=a.attr(m,
|
||
|
"tabindex"),b=isNaN(p);return(b||p>=0)&&c(m,!b)}}),a(function(){var m=document.body,p=m.appendChild(p=document.createElement("div"));a.extend(p.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0});a.support.minHeight=p.offsetHeight===100;a.support.selectstart="onselectstart"in p;m.removeChild(p).style.display="none"}),a.extend(a.ui,{plugin:{add:function(m,p,b){m=a.ui[m].prototype;for(var d in b){m.plugins[d]=m.plugins[d]||[];m.plugins[d].push([p,b[d]])}},call:function(m,p,b){if((p=m.plugins[p])&&
|
||
|
m.element[0].parentNode)for(var d=0;d<p.length;d++)m.options[p[d][0]]&&p[d][1].apply(m.element,b)}},contains:function(m,p){return document.compareDocumentPosition?m.compareDocumentPosition(p)&16:m!==p&&m.contains(p)},hasScroll:function(m,p){if(a(m).css("overflow")==="hidden")return false;var b=p&&p==="left"?"scrollLeft":"scrollTop",d=false;if(m[b]>0)return true;m[b]=1;d=m[b]>0;m[b]=0;return d},isOverAxis:function(m,p,b){return m>p&&m<p+b},isOver:function(m,p,b,d,e,l){return a.ui.isOverAxis(m,b,e)&&
|
||
|
a.ui.isOverAxis(p,d,l)}}))})(jQuery);
|
||
|
(function(a,n){if(a.cleanData){var f=a.cleanData;a.cleanData=function(m){for(var p=0,b;(b=m[p])!=null;p++)try{a(b).triggerHandler("remove")}catch(d){}f(m)}}else{var c=a.fn.remove;a.fn.remove=function(m,p){return this.each(function(){p||(!m||a.filter(m,[this]).length)&&a("*",this).add([this]).each(function(){try{a(this).triggerHandler("remove")}catch(b){}});return c.call(a(this),m,p)})}}a.widget=function(m,p,b){var d=m.split(".")[0],e;m=m.split(".")[1];e=d+"-"+m;b||(b=p,p=a.Widget);a.expr[":"][e]=
|
||
|
function(l){return!!a.data(l,m)};a[d]=a[d]||{};a[d][m]=function(l,u){arguments.length&&this._createWidget(l,u)};p=new p;p.options=a.extend(true,{},p.options);a[d][m].prototype=a.extend(true,p,{namespace:d,widgetName:m,widgetEventPrefix:a[d][m].prototype.widgetEventPrefix||m,widgetBaseClass:e},b);a.widget.bridge(m,a[d][m])};a.widget.bridge=function(m,p){a.fn[m]=function(b){var d=typeof b=="string",e=Array.prototype.slice.call(arguments,1),l=this;b=!d&&e.length?a.extend.apply(null,[true,b].concat(e)):
|
||
|
b;if(d&&b.charAt(0)==="_")return l;d?this.each(function(){var u=a.data(this,m),z=u&&a.isFunction(u[b])?u[b].apply(u,e):u;if(z!==u&&z!==n){l=z;return false}}):this.each(function(){var u=a.data(this,m);u?u.option(b||{})._init():a.data(this,m,new p(b,this))});return l}};a.Widget=function(m,p){arguments.length&&this._createWidget(m,p)};a.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:false},_createWidget:function(m,p){a.data(p,this.widgetName,this);this.element=a(p);this.options=
|
||
|
a.extend(true,{},this.options,this._getCreateOptions(),m);var b=this;this.element.bind("remove."+this.widgetName,function(){b.destroy()});this._create();this._trigger("create");this._init()},_getCreateOptions:function(){return a.metadata&&a.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName);this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+
|
||
|
"-disabled ui-state-disabled")},widget:function(){return this.element},option:function(m,p){var b=m;if(arguments.length===0)return a.extend({},this.options);if(typeof m=="string"){if(p===n)return this.options[m];b={};b[m]=p}this._setOptions(b);return this},_setOptions:function(m){var p=this;a.each(m,function(b,d){p._setOption(b,d)});return this},_setOption:function(m,p){this.options[m]=p;m==="disabled"&&this.widget()[p?"addClass":"removeClass"](this.widgetBaseClass+"-disabled ui-state-disabled").attr("aria-disabled",
|
||
|
p);return this},enable:function(){return this._setOption("disabled",false)},disable:function(){return this._setOption("disabled",true)},_trigger:function(m,p,b){var d,e=this.options[m];b=b||{};p=a.Event(p);p.type=(m===this.widgetEventPrefix?m:this.widgetEventPrefix+m).toLowerCase();p.target=this.element[0];if(m=p.originalEvent)for(d in m)d in p||(p[d]=m[d]);this.element.trigger(p,b);return!(a.isFunction(e)&&e.call(this.element[0],p,b)===false||p.isDefaultPrevented())}}})(jQuery);
|
||
|
(function(a){var n=false;a(document).mouseup(function(){n=false});a.widget("ui.mouse",{options:{cancel:":input,option",distance:1,delay:0},_mouseInit:function(){var f=this;this.element.bind("mousedown."+this.widgetName,function(c){return f._mouseDown(c)}).bind("click."+this.widgetName,function(c){if(true===a.data(c.target,f.widgetName+".preventClickEvent")){a.removeData(c.target,f.widgetName+".preventClickEvent");c.stopImmediatePropagation();return false}});this.started=false},_mouseDestroy:function(){this.element.unbind("."+
|
||
|
this.widgetName)},_mouseDown:function(f){if(!n){this._mouseStarted&&this._mouseUp(f);this._mouseDownEvent=f;var c=this,m=f.which==1,p=typeof this.options.cancel=="string"&&f.target.nodeName?a(f.target).closest(this.options.cancel).length:false;if(!m||p||!this._mouseCapture(f))return true;(this.mouseDelayMet=!this.options.delay)||(this._mouseDelayTimer=setTimeout(function(){c.mouseDelayMet=true},this.options.delay));if(this._mouseDistanceMet(f)&&this._mouseDelayMet(f)){this._mouseStarted=this._mouseStart(f)!==
|
||
|
false;if(!this._mouseStarted){f.preventDefault();return true}}true===a.data(f.target,this.widgetName+".preventClickEvent")&&a.removeData(f.target,this.widgetName+".preventClickEvent");this._mouseMoveDelegate=function(b){return c._mouseMove(b)};this._mouseUpDelegate=function(b){return c._mouseUp(b)};a(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate);f.preventDefault();return n=true}},_mouseMove:function(f){if(a.browser.msie&&
|
||
|
!(document.documentMode>=9)&&!f.button)return this._mouseUp(f);if(this._mouseStarted){this._mouseDrag(f);return f.preventDefault()}this._mouseDistanceMet(f)&&this._mouseDelayMet(f)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,f)!==false,this._mouseStarted?this._mouseDrag(f):this._mouseUp(f));return!this._mouseStarted},_mouseUp:function(f){a(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);this._mouseStarted&&
|
||
|
(this._mouseStarted=false,f.target==this._mouseDownEvent.target&&a.data(f.target,this.widgetName+".preventClickEvent",true),this._mouseStop(f));return false},_mouseDistanceMet:function(f){return Math.max(Math.abs(this._mouseDownEvent.pageX-f.pageX),Math.abs(this._mouseDownEvent.pageY-f.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return true}})})(jQuery);
|
||
|
(function(a){a.widget("ui.draggable",a.ui.mouse,{widgetEventPrefix:"drag",options:{addClasses:true,appendTo:"parent",axis:false,connectToSortable:false,containment:false,cursor:"auto",cursorAt:false,grid:false,handle:false,helper:"original",iframeFix:false,opacity:false,refreshPositions:false,revert:false,revertDuration:500,scope:"default",scroll:true,scrollSensitivity:20,scrollSpeed:20,snap:false,snapMode:"both",snapTolerance:20,stack:false,zIndex:false},_create:function(){this.options.helper=="original"&&
|
||
|
!/^(?:r|a|f)/.test(this.element.css("position"))&&(this.element[0].style.position="relative");this.options.addClasses&&this.element.addClass("ui-draggable");this.options.disabled&&this.element.addClass("ui-draggable-disabled");this._mouseInit()},destroy:function(){if(this.element.data("draggable")){this.element.removeData("draggable").unbind(".draggable").removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled");this._mouseDestroy();return this}},_mouseCapture:function(n){var f=this.options;
|
||
|
if(this.helper||f.disabled||a(n.target).is(".ui-resizable-handle"))return false;this.handle=this._getHandle(n);if(!this.handle)return false;f.iframeFix&&a(f.iframeFix===true?"iframe":f.iframeFix).each(function(){a('<div class="ui-draggable-iframeFix" style="background: #fff;"></div>').css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1E3}).css(a(this).offset()).appendTo("body")});return true},_mouseStart:function(n){var f=this.options;this.helper=
|
||
|
this._createHelper(n);this._cacheHelperProportions();a.ui.ddmanager&&(a.ui.ddmanager.current=this);this._cacheMargins();this.cssPosition=this.helper.css("position");this.scrollParent=this.helper.scrollParent();this.offset=this.positionAbs=this.element.offset();this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left};a.extend(this.offset,{click:{left:n.pageX-this.offset.left,top:n.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});
|
||
|
this.originalPosition=this.position=this._generatePosition(n);this.originalPageX=n.pageX;this.originalPageY=n.pageY;f.cursorAt&&this._adjustOffsetFromHelper(f.cursorAt);f.containment&&this._setContainment();if(this._trigger("start",n)===false){this._clear();return false}this._cacheHelperProportions();a.ui.ddmanager&&!f.dropBehaviour&&a.ui.ddmanager.prepareOffsets(this,n);this.helper.addClass("ui-draggable-dragging");this._mouseDrag(n,true);a.ui.ddmanager&&a.ui.ddmanager.dragStart(this,n);return true},
|
||
|
_mouseDrag:function(n,f){this.position=this._generatePosition(n);this.positionAbs=this._convertPositionTo("absolute");if(!f){var c=this._uiHash();if(this._trigger("drag",n,c)===false){this._mouseUp({});return false}this.position=c.position}if(!this.options.axis||this.options.axis!="y")this.helper[0].style.left=this.position.left+"px";if(!this.options.axis||this.options.axis!="x")this.helper[0].style.top=this.position.top+"px";a.ui.ddmanager&&a.ui.ddmanager.drag(this,n);return false},_mouseStop:function(n){var f=
|
||
|
false;a.ui.ddmanager&&!this.options.dropBehaviour&&(f=a.ui.ddmanager.drop(this,n));this.dropped&&(f=this.dropped,this.dropped=false);if((!this.element[0]||!this.element[0].parentNode)&&this.options.helper=="original")return false;if(this.options.revert=="invalid"&&!f||this.options.revert=="valid"&&f||this.options.revert===true||a.isFunction(this.options.revert)&&this.options.revert.call(this.element,f)){var c=this;a(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),
|
||
|
function(){c._trigger("stop",n)!==false&&c._clear()})}else this._trigger("stop",n)!==false&&this._clear();return false},_mouseUp:function(n){this.options.iframeFix===true&&a("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this)});a.ui.ddmanager&&a.ui.ddmanager.dragStop(this,n);return a.ui.mouse.prototype._mouseUp.call(this,n)},cancel:function(){this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear();return this},_getHandle:function(n){var f=!this.options.handle||
|
||
|
!a(this.options.handle,this.element).length?true:false;a(this.options.handle,this.element).find("*").andSelf().each(function(){this==n.target&&(f=true)});return f},_createHelper:function(n){var f=this.options;n=a.isFunction(f.helper)?a(f.helper.apply(this.element[0],[n])):f.helper=="clone"?this.element.clone().removeAttr("id"):this.element;n.parents("body").length||n.appendTo(f.appendTo=="parent"?this.element[0].parentNode:f.appendTo);n[0]!=this.element[0]&&!/(fixed|absolute)/.test(n.css("position"))&&
|
||
|
n.css("position","absolute");return n},_adjustOffsetFromHelper:function(n){typeof n=="string"&&(n=n.split(" "));a.isArray(n)&&(n={left:+n[0],top:+n[1]||0});"left"in n&&(this.offset.click.left=n.left+this.margins.left);"right"in n&&(this.offset.click.left=this.helperProportions.width-n.right+this.margins.left);"top"in n&&(this.offset.click.top=n.top+this.margins.top);"bottom"in n&&(this.offset.click.top=this.helperProportions.height-n.bottom+this.margins.top)},_getParentOffset:function(){this.offsetParent=
|
||
|
this.helper.offsetParent();var n=this.offsetParent.offset();this.cssPosition=="absolute"&&this.scrollParent[0]!=document&&a.ui.contains(this.scrollParent[0],this.offsetParent[0])&&(n.left+=this.scrollParent.scrollLeft(),n.top+=this.scrollParent.scrollTop());if(this.offsetParent[0]==document.body||this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=="html"&&a.browser.msie)n={top:0,left:0};return{top:n.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:n.left+(parseInt(this.offsetParent.css("borderLeftWidth"),
|
||
|
10)||0)}},_getRelativeOffset:function(){if(this.cssPosition=="relative"){var n=this.element.position();return{top:n.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:n.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.element.css("marginLeft"),10)||0,top:parseInt(this.element.css("marginTop"),10)||0,right:parseInt(this.element.css("marginRight"),10)||0,bottom:parseInt(this.element.css("marginBottom"),
|
||
|
10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var n=this.options;n.containment=="parent"&&(n.containment=this.helper[0].parentNode);if(n.containment=="document"||n.containment=="window")this.containment=[n.containment=="document"?0:a(window).scrollLeft()-this.offset.relative.left-this.offset.parent.left,n.containment=="document"?0:a(window).scrollTop()-this.offset.relative.top-this.offset.parent.top,
|
||
|
(n.containment=="document"?0:a(window).scrollLeft())+a(n.containment=="document"?document:window).width()-this.helperProportions.width-this.margins.left,(n.containment=="document"?0:a(window).scrollTop())+(a(n.containment=="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];if(!/^(document|window|parent)$/.test(n.containment)&&n.containment.constructor!=Array){n=a(n.containment);var f=n[0];if(f){n.offset();var c=a(f).css("overflow")!=
|
||
|
"hidden";this.containment=[(parseInt(a(f).css("borderLeftWidth"),10)||0)+(parseInt(a(f).css("paddingLeft"),10)||0),(parseInt(a(f).css("borderTopWidth"),10)||0)+(parseInt(a(f).css("paddingTop"),10)||0),(c?Math.max(f.scrollWidth,f.offsetWidth):f.offsetWidth)-(parseInt(a(f).css("borderLeftWidth"),10)||0)-(parseInt(a(f).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(c?Math.max(f.scrollHeight,f.offsetHeight):f.offsetHeight)-(parseInt(a(f).css("borderTopWidth"),
|
||
|
10)||0)-(parseInt(a(f).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom];this.relative_container=n}}else n.containment.constructor==Array&&(this.containment=n.containment)},_convertPositionTo:function(n,f){f||(f=this.position);var c=n=="absolute"?1:-1,m=this.cssPosition=="absolute"&&(this.scrollParent[0]==document||!a.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,p=/(html|body)/i.test(m[0].tagName);return{top:f.top+
|
||
|
this.offset.relative.top*c+this.offset.parent.top*c-(a.browser.safari&&a.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollTop():p?0:m.scrollTop())*c),left:f.left+this.offset.relative.left*c+this.offset.parent.left*c-(a.browser.safari&&a.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():p?0:m.scrollLeft())*c)}},_generatePosition:function(n){var f=this.options,c=this.cssPosition=="absolute"&&
|
||
|
(this.scrollParent[0]==document||!a.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,m=/(html|body)/i.test(c[0].tagName),p=n.pageX,b=n.pageY;if(this.originalPosition){var d;if(this.containment){if(this.relative_container){d=this.relative_container.offset();d=[this.containment[0]+d.left,this.containment[1]+d.top,this.containment[2]+d.left,this.containment[3]+d.top]}else d=this.containment;n.pageX-this.offset.click.left<d[0]&&(p=d[0]+this.offset.click.left);
|
||
|
n.pageY-this.offset.click.top<d[1]&&(b=d[1]+this.offset.click.top);n.pageX-this.offset.click.left>d[2]&&(p=d[2]+this.offset.click.left);n.pageY-this.offset.click.top>d[3]&&(b=d[3]+this.offset.click.top)}if(f.grid){b=f.grid[1]?this.originalPageY+Math.round((b-this.originalPageY)/f.grid[1])*f.grid[1]:this.originalPageY;b=d?b-this.offset.click.top<d[1]||b-this.offset.click.top>d[3]?b-this.offset.click.top<d[1]?b+f.grid[1]:b-f.grid[1]:b:b;p=f.grid[0]?this.originalPageX+Math.round((p-this.originalPageX)/
|
||
|
f.grid[0])*f.grid[0]:this.originalPageX;p=d?p-this.offset.click.left<d[0]||p-this.offset.click.left>d[2]?p-this.offset.click.left<d[0]?p+f.grid[0]:p-f.grid[0]:p:p}}return{top:b-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+(a.browser.safari&&a.browser.version<526&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollTop():m?0:c.scrollTop()),left:p-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+(a.browser.safari&&a.browser.version<
|
||
|
526&&this.cssPosition=="fixed"?0:this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():m?0:c.scrollLeft())}},_clear:function(){this.helper.removeClass("ui-draggable-dragging");this.helper[0]!=this.element[0]&&!this.cancelHelperRemoval&&this.helper.remove();this.helper=null;this.cancelHelperRemoval=false},_trigger:function(n,f,c){c=c||this._uiHash();a.ui.plugin.call(this,n,[f,c]);n=="drag"&&(this.positionAbs=this._convertPositionTo("absolute"));return a.Widget.prototype._trigger.call(this,n,f,
|
||
|
c)},plugins:{},_uiHash:function(){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,offset:this.positionAbs}}});a.extend(a.ui.draggable,{version:"1.8.17"});a.ui.plugin.add("draggable","connectToSortable",{start:function(n,f){var c=a(this).data("draggable"),m=c.options,p=a.extend({},f,{item:c.element});c.sortables=[];a(m.connectToSortable).each(function(){var b=a.data(this,"sortable");b&&!b.options.disabled&&(c.sortables.push({instance:b,shouldRevert:b.options.revert}),
|
||
|
b.refreshPositions(),b._trigger("activate",n,p))})},stop:function(n,f){var c=a(this).data("draggable"),m=a.extend({},f,{item:c.element});a.each(c.sortables,function(){this.instance.isOver?(this.instance.isOver=0,c.cancelHelperRemoval=true,this.instance.cancelHelperRemoval=false,this.shouldRevert&&(this.instance.options.revert=true),this.instance._mouseStop(n),this.instance.options.helper=this.instance.options._helper,c.options.helper=="original"&&this.instance.currentItem.css({top:"auto",left:"auto"})):
|
||
|
(this.instance.cancelHelperRemoval=false,this.instance._trigger("deactivate",n,m))})},drag:function(n,f){var c=a(this).data("draggable"),m=this;a.each(c.sortables,function(){this.instance.positionAbs=c.positionAbs;this.instance.helperProportions=c.helperProportions;this.instance.offset.click=c.offset.click;this.instance._intersectsWith(this.instance.containerCache)?(this.instance.isOver||(this.instance.isOver=1,this.instance.currentItem=a(m).clone().removeAttr("id").appendTo(this.instance.element).data("sortable-item",
|
||
|
true),this.instance.options._helper=this.instance.options.helper,this.instance.options.helper=function(){return f.helper[0]},n.target=this.instance.currentItem[0],this.instance._mouseCapture(n,true),this.instance._mouseStart(n,true,true),this.instance.offset.click.top=c.offset.click.top,this.instance.offset.click.left=c.offset.click.left,this.instance.offset.parent.left-=c.offset.parent.left-this.instance.offset.parent.left,this.instance.offset.parent.top-=c.offset.parent.top-this.instance.offset.parent.top,
|
||
|
c._trigger("toSortable",n),c.dropped=this.instance.element,c.currentItem=c.element,this.instance.fromOutside=c),this.instance.currentItem&&this.instance._mouseDrag(n)):this.instance.isOver&&(this.instance.isOver=0,this.instance.cancelHelperRemoval=true,this.instance.options.revert=false,this.instance._trigger("out",n,this.instance._uiHash(this.instance)),this.instance._mouseStop(n,true),this.instance.options.helper=this.instance.options._helper,this.instance.currentItem.remove(),this.instance.placeholder&&
|
||
|
this.instance.placeholder.remove(),c._trigger("fromSortable",n),c.dropped=false)})}});a.ui.plugin.add("draggable","cursor",{start:function(){var n=a("body"),f=a(this).data("draggable").options;n.css("cursor")&&(f._cursor=n.css("cursor"));n.css("cursor",f.cursor)},stop:function(){var n=a(this).data("draggable").options;n._cursor&&a("body").css("cursor",n._cursor)}});a.ui.plugin.add("draggable","opacity",{start:function(n,f){var c=a(f.helper),m=a(this).data("draggable").options;c.css("opacity")&&(m._opacity=
|
||
|
c.css("opacity"));c.css("opacity",m.opacity)},stop:function(n,f){var c=a(this).data("draggable").options;c._opacity&&a(f.helper).css("opacity",c._opacity)}});a.ui.plugin.add("draggable","scroll",{start:function(){var n=a(this).data("draggable");n.scrollParent[0]!=document&&n.scrollParent[0].tagName!="HTML"&&(n.overflowOffset=n.scrollParent.offset())},drag:function(n){var f=a(this).data("draggable"),c=f.options,m=false;if(f.scrollParent[0]!=document&&f.scrollParent[0].tagName!="HTML"){if(!c.axis||
|
||
|
c.axis!="x")f.overflowOffset.top+f.scrollParent[0].offsetHeight-n.pageY<c.scrollSensitivity?f.scrollParent[0].scrollTop=m=f.scrollParent[0].scrollTop+c.scrollSpeed:n.pageY-f.overflowOffset.top<c.scrollSensitivity&&(f.scrollParent[0].scrollTop=m=f.scrollParent[0].scrollTop-c.scrollSpeed);if(!c.axis||c.axis!="y")f.overflowOffset.left+f.scrollParent[0].offsetWidth-n.pageX<c.scrollSensitivity?f.scrollParent[0].scrollLeft=m=f.scrollParent[0].scrollLeft+c.scrollSpeed:n.pageX-f.overflowOffset.left<c.scrollSensitivity&&
|
||
|
(f.scrollParent[0].scrollLeft=m=f.scrollParent[0].scrollLeft-c.scrollSpeed)}else{if(!c.axis||c.axis!="x")n.pageY-a(document).scrollTop()<c.scrollSensitivity?m=a(document).scrollTop(a(document).scrollTop()-c.scrollSpeed):a(window).height()-(n.pageY-a(document).scrollTop())<c.scrollSensitivity&&(m=a(document).scrollTop(a(document).scrollTop()+c.scrollSpeed));if(!c.axis||c.axis!="y")n.pageX-a(document).scrollLeft()<c.scrollSensitivity?m=a(document).scrollLeft(a(document).scrollLeft()-c.scrollSpeed):
|
||
|
a(window).width()-(n.pageX-a(document).scrollLeft())<c.scrollSensitivity&&(m=a(document).scrollLeft(a(document).scrollLeft()+c.scrollSpeed))}m!==false&&a.ui.ddmanager&&!c.dropBehaviour&&a.ui.ddmanager.prepareOffsets(f,n)}});a.ui.plugin.add("draggable","snap",{start:function(){var n=a(this).data("draggable"),f=n.options;n.snapElements=[];a(f.snap.constructor!=String?f.snap.items||":data(draggable)":f.snap).each(function(){var c=a(this),m=c.offset();this!=n.element[0]&&n.snapElements.push({item:this,
|
||
|
width:c.outerWidth(),height:c.outerHeight(),top:m.top,left:m.left})})},drag:function(n,f){for(var c=a(this).data("draggable"),m=c.options,p=m.snapTolerance,b=f.offset.left,d=b+c.helperProportions.width,e=f.offset.top,l=e+c.helperProportions.height,u=c.snapElements.length-1;u>=0;u--){var z=c.snapElements[u].left,o=z+c.snapElements[u].width,L=c.snapElements[u].top,T=L+c.snapElements[u].height;if(z-p<b&&b<o+p&&L-p<e&&e<T+p||z-p<b&&b<o+p&&L-p<l&&l<T+p||z-p<d&&d<o+p&&L-p<e&&e<T+p||z-p<d&&d<o+p&&L-p<l&&
|
||
|
l<T+p){if(m.snapMode!="inner"){var N=Math.abs(L-l)<=p,J=Math.abs(T-e)<=p,da=Math.abs(z-d)<=p,V=Math.abs(o-b)<=p;N&&(f.position.top=c._convertPositionTo("relative",{top:L-c.helperProportions.height,left:0}).top-c.margins.top);J&&(f.position.top=c._convertPositionTo("relative",{top:T,left:0}).top-c.margins.top);da&&(f.position.left=c._convertPositionTo("relative",{top:0,left:z-c.helperProportions.width}).left-c.margins.left);V&&(f.position.left=c._convertPositionTo("relative",{top:0,left:o}).left-c.margins.left)}var O=
|
||
|
N||J||da||V;if(m.snapMode!="outer"){N=Math.abs(L-e)<=p;J=Math.abs(T-l)<=p;da=Math.abs(z-b)<=p;V=Math.abs(o-d)<=p;N&&(f.position.top=c._convertPositionTo("relative",{top:L,left:0}).top-c.margins.top);J&&(f.position.top=c._convertPositionTo("relative",{top:T-c.helperProportions.height,left:0}).top-c.margins.top);da&&(f.position.left=c._convertPositionTo("relative",{top:0,left:z}).left-c.margins.left);V&&(f.position.left=c._convertPositionTo("relative",{top:0,left:o-c.helperProportions.width}).left-
|
||
|
c.margins.left)}!c.snapElements[u].snapping&&(N||J||da||V||O)&&c.options.snap.snap&&c.options.snap.snap.call(c.element,n,a.extend(c._uiHash(),{snapItem:c.snapElements[u].item}));c.snapElements[u].snapping=N||J||da||V||O}else{c.snapElements[u].snapping&&c.options.snap.release&&c.options.snap.release.call(c.element,n,a.extend(c._uiHash(),{snapItem:c.snapElements[u].item}));c.snapElements[u].snapping=false}}}});a.ui.plugin.add("draggable","stack",{start:function(){var n=a(this).data("draggable").options;
|
||
|
n=a.makeArray(a(n.stack)).sort(function(c,m){return(parseInt(a(c).css("zIndex"),10)||0)-(parseInt(a(m).css("zIndex"),10)||0)});if(n.length){var f=parseInt(n[0].style.zIndex)||0;a(n).each(function(c){this.style.zIndex=f+c});this[0].style.zIndex=f+n.length}}});a.ui.plugin.add("draggable","zIndex",{start:function(n,f){var c=a(f.helper),m=a(this).data("draggable").options;c.css("zIndex")&&(m._zIndex=c.css("zIndex"));c.css("zIndex",m.zIndex)},stop:function(n,f){var c=a(this).data("draggable").options;
|
||
|
c._zIndex&&a(f.helper).css("zIndex",c._zIndex)}})})(jQuery);
|
||
|
(function(a){a.widget("ui.slider",a.ui.mouse,{widgetEventPrefix:"slide",options:{animate:false,distance:0,max:100,min:0,orientation:"horizontal",range:false,step:1,value:0,values:null},_create:function(){var n=this,f=this.options,c=this.element.find(".ui-slider-handle").addClass("ui-state-default ui-corner-all"),m=f.values&&f.values.length||1,p=[];this._mouseSliding=this._keySliding=false;this._animateOff=true;this._handleIndex=null;this._detectOrientation();this._mouseInit();this.element.addClass("ui-slider ui-slider-"+
|
||
|
this.orientation+" ui-widget ui-widget-content ui-corner-all"+(f.disabled?" ui-slider-disabled ui-disabled":""));this.range=a([]);f.range&&(f.range===true&&(f.values||(f.values=[this._valueMin(),this._valueMin()]),f.values.length&&f.values.length!==2&&(f.values=[f.values[0],f.values[0]])),this.range=a("<div></div>").appendTo(this.element).addClass("ui-slider-range ui-widget-header"+(f.range==="min"||f.range==="max"?" ui-slider-range-"+f.range:"")));for(var b=c.length;b<m;b+=1)p.push("<a class='ui-slider-handle ui-state-default ui-corner-all' href='#'></a>");
|
||
|
this.handles=c.add(a(p.join("")).appendTo(n.element));this.handle=this.handles.eq(0);this.handles.add(this.range).filter("a").click(function(d){d.preventDefault()}).hover(function(){f.disabled||a(this).addClass("ui-state-hover")},function(){a(this).removeClass("ui-state-hover")}).focus(function(){f.disabled?a(this).blur():(a(".ui-slider .ui-state-focus").removeClass("ui-state-focus"),a(this).addClass("ui-state-focus"))}).blur(function(){a(this).removeClass("ui-state-focus")});this.handles.each(function(d){a(this).data("index.ui-slider-handle",
|
||
|
d)});this.handles.keydown(function(d){var e=true,l=a(this).data("index.ui-slider-handle"),u,z,o;if(!n.options.disabled){switch(d.keyCode){case a.ui.keyCode.HOME:case a.ui.keyCode.END:case a.ui.keyCode.PAGE_UP:case a.ui.keyCode.PAGE_DOWN:case a.ui.keyCode.UP:case a.ui.keyCode.RIGHT:case a.ui.keyCode.DOWN:case a.ui.keyCode.LEFT:e=false;if(!n._keySliding){n._keySliding=true;a(this).addClass("ui-state-active");u=n._start(d,l);if(u===false)return}}u=n.options.step;n.options.values&&n.options.values.length?
|
||
|
z=o=n.values(l):z=o=n.value();switch(d.keyCode){case a.ui.keyCode.HOME:o=n._valueMin();break;case a.ui.keyCode.END:o=n._valueMax();break;case a.ui.keyCode.PAGE_UP:o=n._trimAlignValue(z+(n._valueMax()-n._valueMin())/5);break;case a.ui.keyCode.PAGE_DOWN:o=n._trimAlignValue(z-(n._valueMax()-n._valueMin())/5);break;case a.ui.keyCode.UP:case a.ui.keyCode.RIGHT:if(z===n._valueMax())return;o=n._trimAlignValue(z+u);break;case a.ui.keyCode.DOWN:case a.ui.keyCode.LEFT:if(z===n._valueMin())return;o=n._trimAlignValue(z-
|
||
|
u)}n._slide(d,l,o);return e}}).keyup(function(d){var e=a(this).data("index.ui-slider-handle");n._keySliding&&(n._keySliding=false,n._stop(d,e),n._change(d,e),a(this).removeClass("ui-state-active"))});this._refreshValue();this._animateOff=false},destroy:function(){this.handles.remove();this.range.remove();this.element.removeClass("ui-slider ui-slider-horizontal ui-slider-vertical ui-slider-disabled ui-widget ui-widget-content ui-corner-all").removeData("slider").unbind(".slider");this._mouseDestroy();
|
||
|
return this},_mouseCapture:function(n){var f=this.options,c,m,p,b,d;if(f.disabled)return false;this.elementSize={width:this.element.outerWidth(),height:this.element.outerHeight()};this.elementOffset=this.element.offset();c=this._normValueFromMouse({x:n.pageX,y:n.pageY});m=this._valueMax()-this._valueMin()+1;b=this;this.handles.each(function(e){var l=Math.abs(c-b.values(e));m>l&&(m=l,p=a(this),d=e)});f.range===true&&this.values(1)===f.min&&(d+=1,p=a(this.handles[d]));if(this._start(n,d)===false)return false;
|
||
|
this._mouseSliding=true;b._handleIndex=d;p.addClass("ui-state-active").focus();f=p.offset();this._clickOffset=!a(n.target).parents().andSelf().is(".ui-slider-handle")?{left:0,top:0}:{left:n.pageX-f.left-p.width()/2,top:n.pageY-f.top-p.height()/2-(parseInt(p.css("borderTopWidth"),10)||0)-(parseInt(p.css("borderBottomWidth"),10)||0)+(parseInt(p.css("marginTop"),10)||0)};this.handles.hasClass("ui-state-hover")||this._slide(n,d,c);return this._animateOff=true},_mouseStart:function(){return true},_mouseDrag:function(n){var f=
|
||
|
this._normValueFromMouse({x:n.pageX,y:n.pageY});this._slide(n,this._handleIndex,f);return false},_mouseStop:function(n){this.handles.removeClass("ui-state-active");this._mouseSliding=false;this._stop(n,this._handleIndex);this._change(n,this._handleIndex);this._clickOffset=this._handleIndex=null;return this._animateOff=false},_detectOrientation:function(){this.orientation=this.options.orientation==="vertical"?"vertical":"horizontal"},_normValueFromMouse:function(n){var f,c;this.orientation==="horizontal"?
|
||
|
(f=this.elementSize.width,c=n.x-this.elementOffset.left-(this._clickOffset?this._clickOffset.left:0)):(f=this.elementSize.height,c=n.y-this.elementOffset.top-(this._clickOffset?this._clickOffset.top:0));n=c/f;n>1&&(n=1);n<0&&(n=0);this.orientation==="vertical"&&(n=1-n);f=this._valueMax()-this._valueMin();return this._trimAlignValue(this._valueMin()+n*f)},_start:function(n,f){var c={handle:this.handles[f],value:this.value()};this.options.values&&this.options.values.length&&(c.value=this.values(f),
|
||
|
c.values=this.values());return this._trigger("start",n,c)},_slide:function(n,f,c){var m,p,b;this.options.values&&this.options.values.length?(m=this.values(f?0:1),this.options.values.length===2&&this.options.range===true&&(f===0&&c>m||f===1&&c<m)&&(c=m),c!==this.values(f)&&(p=this.values(),p[f]=c,b=this._trigger("slide",n,{handle:this.handles[f],value:c,values:p}),this.values(f?0:1),b!==false&&this.values(f,c,true))):c!==this.value()&&(b=this._trigger("slide",n,{handle:this.handles[f],value:c}),b!==
|
||
|
false&&this.value(c))},_stop:function(n,f){var c={handle:this.handles[f],value:this.value()};this.options.values&&this.options.values.length&&(c.value=this.values(f),c.values=this.values());this._trigger("stop",n,c)},_change:function(n,f){if(!this._keySliding&&!this._mouseSliding){var c={handle:this.handles[f],value:this.value()};this.options.values&&this.options.values.length&&(c.value=this.values(f),c.values=this.values());this._trigger("change",n,c)}},value:function(n){if(arguments.length){this.options.value=
|
||
|
this._trimAlignValue(n);this._refreshValue();this._change(null,0)}else return this._value()},values:function(n,f){var c,m,p;if(arguments.length>1){this.options.values[n]=this._trimAlignValue(f);this._refreshValue();this._change(null,n)}else{if(!arguments.length)return this._values();if(!a.isArray(arguments[0]))return this.options.values&&this.options.values.length?this._values(n):this.value();c=this.options.values;m=arguments[0];for(p=0;p<c.length;p+=1){c[p]=this._trimAlignValue(m[p]);this._change(null,
|
||
|
p)}this._refreshValue()}},_setOption:function(n,f){var c,m=0;a.isArray(this.options.values)&&(m=this.options.values.length);a.Widget.prototype._setOption.apply(this,arguments);switch(n){case "disabled":f?(this.handles.filter(".ui-state-focus").blur(),this.handles.removeClass("ui-state-hover"),this.handles.propAttr("disabled",true),this.element.addClass("ui-disabled")):(this.handles.propAttr("disabled",false),this.element.removeClass("ui-disabled"));break;case "orientation":this._detectOrientation();
|
||
|
this.element.removeClass("ui-slider-horizontal ui-slider-vertical").addClass("ui-slider-"+this.orientation);this._refreshValue();break;case "value":this._animateOff=true;this._refreshValue();this._change(null,0);this._animateOff=false;break;case "values":this._animateOff=true;this._refreshValue();for(c=0;c<m;c+=1)this._change(null,c);this._animateOff=false}},_value:function(){var n=this.options.value;return n=this._trimAlignValue(n)},_values:function(n){var f,c;if(arguments.length){f=this.options.values[n];
|
||
|
return f=this._trimAlignValue(f)}f=this.options.values.slice();for(c=0;c<f.length;c+=1)f[c]=this._trimAlignValue(f[c]);return f},_trimAlignValue:function(n){if(n<=this._valueMin())return this._valueMin();if(n>=this._valueMax())return this._valueMax();var f=this.options.step>0?this.options.step:1,c=(n-this._valueMin())%f;n=n-c;Math.abs(c)*2>=f&&(n+=c>0?f:-f);return parseFloat(n.toFixed(5))},_valueMin:function(){return this.options.min},_valueMax:function(){return this.options.max},_refreshValue:function(){var n=
|
||
|
this.options.range,f=this.options,c=this,m=this._animateOff?false:f.animate,p,b={},d,e,l,u;this.options.values&&this.options.values.length?this.handles.each(function(z){p=(c.values(z)-c._valueMin())/(c._valueMax()-c._valueMin())*100;b[c.orientation==="horizontal"?"left":"bottom"]=p+"%";a(this).stop(1,1)[m?"animate":"css"](b,f.animate);c.options.range===true&&(c.orientation==="horizontal"?(z===0&&c.range.stop(1,1)[m?"animate":"css"]({left:p+"%"},f.animate),z===1&&c.range[m?"animate":"css"]({width:p-
|
||
|
d+"%"},{queue:false,duration:f.animate})):(z===0&&c.range.stop(1,1)[m?"animate":"css"]({bottom:p+"%"},f.animate),z===1&&c.range[m?"animate":"css"]({height:p-d+"%"},{queue:false,duration:f.animate})));d=p}):(e=this.value(),l=this._valueMin(),u=this._valueMax(),p=u!==l?(e-l)/(u-l)*100:0,b[c.orientation==="horizontal"?"left":"bottom"]=p+"%",this.handle.stop(1,1)[m?"animate":"css"](b,f.animate),n==="min"&&this.orientation==="horizontal"&&this.range.stop(1,1)[m?"animate":"css"]({width:p+"%"},f.animate),
|
||
|
n==="max"&&this.orientation==="horizontal"&&this.range[m?"animate":"css"]({width:100-p+"%"},{queue:false,duration:f.animate}),n==="min"&&this.orientation==="vertical"&&this.range.stop(1,1)[m?"animate":"css"]({height:p+"%"},f.animate),n==="max"&&this.orientation==="vertical"&&this.range[m?"animate":"css"]({height:100-p+"%"},{queue:false,duration:f.animate}))}});a.extend(a.ui.slider,{version:"1.8.17"})})(jQuery);(function(a){Math.precision=function(b,d){if(d===undefined)d=0;return Math.round(b*Math.pow(10,d))/Math.pow(10,d)};var n=function(b,d){var e=this,l=b.find("img:first"),u=0,z=100,o=100,L=0,T=100,N=100,J=0,da=0,V,O,fa=[],sa=function(S){for(var U=0;U<fa.length;U++)fa[U].call(e,e,S)},ja=function(S){var U=b.offset();V={l:U.left|0,t:U.top|0};clearTimeout(O);O=setTimeout(function(){qa.call(e,S)},0);a(document).bind("mousemove",ca).bind("mouseup",ea);S.preventDefault()},ca=function(S){clearTimeout(O);O=setTimeout(function(){qa.call(e,
|
||
|
S)},0);S.stopPropagation();S.preventDefault();return false},ea=function(S){a(document).unbind("mouseup",ea).unbind("mousemove",ca);S.stopPropagation();S.preventDefault();return false},qa=function(S){var U=S.pageX-V.l;S=S.pageY-V.t;var ra=b.w,la=b.h;if(U<0)U=0;else if(U>ra)U=ra;if(S<0)S=0;else if(S>la)S=la;pa.call(e,"xy",{x:U/ra*o+u,y:S/la*N+L})},pa=function(S,U,ra){if(U===undefined){if(S===undefined||S==null)S="xy";switch(S.toLowerCase()){case "x":return J;case "y":return da;default:return{x:J,y:da}}}if(!(ra!=
|
||
|
null&&ra==e)){var la=false,ma,Y;if(S==null)S="xy";switch(S.toLowerCase()){case "x":ma=U&&(U.x&&U.x|0||U|0)||0;break;case "y":Y=U&&(U.y&&U.y|0||U|0)||0;break;default:ma=U&&U.x&&U.x|0||0;Y=U&&U.y&&U.y|0||0}if(ma!=null){if(ma<u)ma=u;else if(ma>z)ma=z;if(J!=ma){J=ma;la=true}}if(Y!=null){if(Y<L)Y=L;else if(Y>T)Y=T;if(da!=Y){da=Y;la=true}}la&&sa.call(e,ra||e)}},ba=function(S){a.isFunction(S)&&fa.push(S)};a.extend(true,e,{val:pa,range:function(S,U){if(U===undefined){if(S===undefined||S==null)S="all";switch(S.toLowerCase()){case "minx":return u;
|
||
|
case "maxx":return z;case "rangex":return{minX:u,maxX:z,rangeX:o};case "miny":return L;case "maxy":return T;case "rangey":return{minY:L,maxY:T,rangeY:N};default:return{minX:u,maxX:z,rangeX:o,minY:L,maxY:T,rangeY:N}}}var ra,la,ma,Y;if(S==null)S="all";switch(S.toLowerCase()){case "minx":ra=U&&(U.minX&&U.minX|0||U|0)||0;break;case "maxx":la=U&&(U.maxX&&U.maxX|0||U|0)||0;break;case "rangex":ra=U&&U.minX&&U.minX|0||0;la=U&&U.maxX&&U.maxX|0||0;break;case "miny":ma=U&&(U.minY&&U.minY|0||U|0)||0;break;case "maxy":Y=
|
||
|
U&&(U.maxY&&U.maxY|0||U|0)||0;break;case "rangey":ma=U&&U.minY&&U.minY|0||0;Y=U&&U.maxY&&U.maxY|0||0;break;default:ra=U&&U.minX&&U.minX|0||0;la=U&&U.maxX&&U.maxX|0||0;ma=U&&U.minY&&U.minY|0||0;Y=U&&U.maxY&&U.maxY|0||0}if(ra!=null&&u!=ra){u=ra;o=z-u}if(la!=null&&z!=la){z=la;o=z-u}if(ma!=null&&L!=ma){L=ma;N=T-L}if(Y!=null&&T!=Y){T=Y;N=T-L}},bind:ba,unbind:function(S){if(a.isFunction(S))for(var U;(U=a.inArray(S,fa))!=-1;)fa.splice(U,1)},destroy:function(){a(document).unbind("mouseup",ea).unbind("mousemove",
|
||
|
ca);b.unbind("mousedown",ja);fa=l=b=null}});l.src=d.arrow&&d.arrow.image;l.w=d.arrow&&d.arrow.width||l.width();l.h=d.arrow&&d.arrow.height||l.height();b.w=d.map&&d.map.width||b.width();b.h=d.map&&d.map.height||b.height();b.bind("mousedown",ja);ba.call(e,function(){var S=0,U=0,ra=b.w,la=b.h,ma=l.w,Y=l.h;setTimeout(function(){if(o>0)S=J==z?ra:J/o*ra|0;if(N>0)U=da==T?la:da/N*la|0;if(ma>=ra)S=(ra>>1)-(ma>>1);else S-=ma>>1;if(Y>=la)U=(la>>1)-(Y>>1);else U-=Y>>1;l.css({left:S+"px",top:U+"px"})},0)})},f=
|
||
|
function(b,d,e,l){var u=this;b=b.find("td.Text input");var z=b.eq(3),o=b.eq(4),L=b.eq(5),T=b.length>7?b.eq(6):null,N=b.eq(0),J=b.eq(1),da=b.eq(2),V=b.eq(b.length>7?7:6),O=b.length>7?b.eq(8):null,fa=function(pa){if(!(pa.target.value==""&&pa.target!=V.get(0)&&(e!=null&&pa.target!=e.get(0)||e==null))){if(!ca(pa))return pa;switch(pa.target){case z.get(0):switch(pa.keyCode){case 38:z.val(ea.call(u,(z.val()<<0)+1,0,255));d.val("r",z.val(),pa.target);return false;case 40:z.val(ea.call(u,(z.val()<<0)-1,0,
|
||
|
255));d.val("r",z.val(),pa.target);return false}break;case o.get(0):switch(pa.keyCode){case 38:o.val(ea.call(u,(o.val()<<0)+1,0,255));d.val("g",o.val(),pa.target);return false;case 40:o.val(ea.call(u,(o.val()<<0)-1,0,255));d.val("g",o.val(),pa.target);return false}break;case L.get(0):switch(pa.keyCode){case 38:L.val(ea.call(u,(L.val()<<0)+1,0,255));d.val("b",L.val(),pa.target);return false;case 40:L.val(ea.call(u,(L.val()<<0)-1,0,255));d.val("b",L.val(),pa.target);return false}break;case T&&T.get(0):switch(pa.keyCode){case 38:T.val(ea.call(u,
|
||
|
parseFloat(T.val())+1,0,100));d.val("a",Math.precision(T.val()*255/100,l),pa.target);return false;case 40:T.val(ea.call(u,parseFloat(T.val())-1,0,100));d.val("a",Math.precision(T.val()*255/100,l),pa.target);return false}break;case N.get(0):switch(pa.keyCode){case 38:N.val(ea.call(u,(N.val()<<0)+1,0,360));d.val("h",N.val(),pa.target);return false;case 40:N.val(ea.call(u,(N.val()<<0)-1,0,360));d.val("h",N.val(),pa.target);return false}break;case J.get(0):switch(pa.keyCode){case 38:J.val(ea.call(u,(J.val()<<
|
||
|
0)+1,0,100));d.val("s",J.val(),pa.target);return false;case 40:J.val(ea.call(u,(J.val()<<0)-1,0,100));d.val("s",J.val(),pa.target);return false}break;case da.get(0):switch(pa.keyCode){case 38:da.val(ea.call(u,(da.val()<<0)+1,0,100));d.val("v",da.val(),pa.target);return false;case 40:da.val(ea.call(u,(da.val()<<0)-1,0,100));d.val("v",da.val(),pa.target);return false}}}},sa=function(pa){if(!(pa.target.value==""&&pa.target!=V.get(0)&&(e!=null&&pa.target!=e.get(0)||e==null))){if(!ca(pa))return pa;switch(pa.target){case z.get(0):z.val(ea.call(u,
|
||
|
z.val(),0,255));d.val("r",z.val(),pa.target);break;case o.get(0):o.val(ea.call(u,o.val(),0,255));d.val("g",o.val(),pa.target);break;case L.get(0):L.val(ea.call(u,L.val(),0,255));d.val("b",L.val(),pa.target);break;case T&&T.get(0):T.val(ea.call(u,T.val(),0,100));d.val("a",Math.precision(T.val()*255/100,l),pa.target);break;case N.get(0):N.val(ea.call(u,N.val(),0,360));d.val("h",N.val(),pa.target);break;case J.get(0):J.val(ea.call(u,J.val(),0,100));d.val("s",J.val(),pa.target);break;case da.get(0):da.val(ea.call(u,
|
||
|
da.val(),0,100));d.val("v",da.val(),pa.target);break;case V.get(0):V.val(V.val().replace(/[^a-fA-F0-9]/g,"").toLowerCase().substring(0,6));e&&e.val(V.val());d.val("hex",V.val()!=""?V.val():null,pa.target);break;case e&&e.get(0):e.val(e.val().replace(/[^a-fA-F0-9]/g,"").toLowerCase().substring(0,6));V.val(e.val());d.val("hex",e.val()!=""?e.val():null,pa.target);break;case O&&O.get(0):O.val(O.val().replace(/[^a-fA-F0-9]/g,"").toLowerCase().substring(0,2));d.val("a",O.val()!=null?parseInt(O.val(),16):
|
||
|
null,pa.target)}}},ja=function(pa){if(d.val()!=null)switch(pa.target){case z.get(0):z.val(d.val("r"));break;case o.get(0):o.val(d.val("g"));break;case L.get(0):L.val(d.val("b"));break;case T&&T.get(0):T.val(Math.precision(d.val("a")*100/255,l));break;case N.get(0):N.val(d.val("h"));break;case J.get(0):J.val(d.val("s"));break;case da.get(0):da.val(d.val("v"));break;case V.get(0):case e&&e.get(0):V.val(d.val("hex"));e&&e.val(d.val("hex"));break;case O&&O.get(0):O.val(d.val("ahex").substring(6))}},ca=
|
||
|
function(pa){switch(pa.keyCode){case 9:case 16:case 29:case 37:case 39:return false;case "c".charCodeAt():case "v".charCodeAt():if(pa.ctrlKey)return false}return true},ea=function(pa,ba,S){if(pa==""||isNaN(pa))return ba;if(pa>S)return S;if(pa<ba)return ba;return pa},qa=function(pa,ba){var S=pa.val("all");if(ba!=z.get(0))z.val(S!=null?S.r:"");if(ba!=o.get(0))o.val(S!=null?S.g:"");if(ba!=L.get(0))L.val(S!=null?S.b:"");if(T&&ba!=T.get(0))T.val(S!=null?Math.precision(S.a*100/255,l):"");if(ba!=N.get(0))N.val(S!=
|
||
|
null?S.h:"");if(ba!=J.get(0))J.val(S!=null?S.s:"");if(ba!=da.get(0))da.val(S!=null?S.v:"");if(ba!=V.get(0)&&(e&&ba!=e.get(0)||!e))V.val(S!=null?S.hex:"");if(e&&ba!=e.get(0)&&ba!=V.get(0))e.val(S!=null?S.hex:"");if(O&&ba!=O.get(0))O.val(S!=null?S.ahex.substring(6):"")};a.extend(true,u,{destroy:function(){z.add(o).add(L).add(T).add(N).add(J).add(da).add(V).add(e).add(O).unbind("keyup",sa).unbind("blur",ja);z.add(o).add(L).add(T).add(N).add(J).add(da).unbind("keydown",fa);d.unbind(qa);O=V=da=J=N=T=L=
|
||
|
o=z=null}});z.add(o).add(L).add(T).add(N).add(J).add(da).add(V).add(e).add(O).bind("keyup",sa).bind("blur",ja);z.add(o).add(L).add(T).add(N).add(J).add(da).bind("keydown",fa);d.bind(qa)};a.jPicker={List:[],Color:function(b){var d=this,e,l,u,z,o,L,T,N=[],J=function(V){for(var O=0;O<N.length;O++)N[O].call(d,d,V)},da=function(V,O,fa){if(O===undefined){if(V===undefined||V==null||V=="")V="all";if(e==null)return null;switch(V.toLowerCase()){case "ahex":return p.rgbaToHex({r:e,g:l,b:u,a:z});case "hex":return da("ahex").substring(0,
|
||
|
6);case "all":return{r:e,g:l,b:u,a:z,h:o,s:L,v:T,hex:da.call(d,"hex"),ahex:da.call(d,"ahex")};default:O={};for(var sa=0;sa<V.length;sa++)switch(V.charAt(sa)){case "r":if(V.length==1)O=e;else O.r=e;break;case "g":if(V.length==1)O=l;else O.g=l;break;case "b":if(V.length==1)O=u;else O.b=u;break;case "a":if(V.length==1)O=z;else O.a=z;break;case "h":if(V.length==1)O=o;else O.h=o;break;case "s":if(V.length==1)O=L;else O.s=L;break;case "v":if(V.length==1)O=T;else O.v=T}return O=={}?da.call(d,"all"):O}}if(!(fa!=
|
||
|
null&&fa==d)){var ja=false;if(V==null)V="";if(O==null){if(e!=null){e=null;ja=true}if(l!=null){l=null;ja=true}if(u!=null){u=null;ja=true}if(z!=null){z=null;ja=true}if(o!=null){o=null;ja=true}if(L!=null){L=null;ja=true}if(T!=null){T=null;ja=true}ja&&J.call(d,fa||d)}else switch(V.toLowerCase()){case "ahex":case "hex":O=p.hexToRgba(O&&(O.ahex||O.hex)||O||"00000000");da.call(d,"rgba",{r:O.r,g:O.g,b:O.b,a:V=="ahex"?O.a:z!=null?z:255},fa);break;default:if(O&&(O.ahex!=null||O.hex!=null)){da.call(d,"ahex",
|
||
|
O.ahex||O.hex||"00000000",fa);break}var ca={},ea=false,qa=false;if(O.r!==undefined&&!V.indexOf("r")==-1)V+="r";if(O.g!==undefined&&!V.indexOf("g")==-1)V+="g";if(O.b!==undefined&&!V.indexOf("b")==-1)V+="b";if(O.a!==undefined&&!V.indexOf("a")==-1)V+="a";if(O.h!==undefined&&!V.indexOf("h")==-1)V+="h";if(O.s!==undefined&&!V.indexOf("s")==-1)V+="s";if(O.v!==undefined&&!V.indexOf("v")==-1)V+="v";for(sa=0;sa<V.length;sa++)switch(V.charAt(sa)){case "r":if(qa)continue;ea=true;ca.r=O&&O.r&&O.r|0||O&&O|0||0;
|
||
|
if(ca.r<0)ca.r=0;else if(ca.r>255)ca.r=255;if(e!=ca.r){e=ca.r;ja=true}break;case "g":if(qa)continue;ea=true;ca.g=O&&O.g&&O.g|0||O&&O|0||0;if(ca.g<0)ca.g=0;else if(ca.g>255)ca.g=255;if(l!=ca.g){l=ca.g;ja=true}break;case "b":if(qa)continue;ea=true;ca.b=O&&O.b&&O.b|0||O&&O|0||0;if(ca.b<0)ca.b=0;else if(ca.b>255)ca.b=255;if(u!=ca.b){u=ca.b;ja=true}break;case "a":ca.a=O&&O.a!=null?O.a|0:O!=null?O|0:255;if(ca.a<0)ca.a=0;else if(ca.a>255)ca.a=255;if(z!=ca.a){z=ca.a;ja=true}break;case "h":if(ea)continue;
|
||
|
qa=true;ca.h=O&&O.h&&O.h|0||O&&O|0||0;if(ca.h<0)ca.h=0;else if(ca.h>360)ca.h=360;if(o!=ca.h){o=ca.h;ja=true}break;case "s":if(ea)continue;qa=true;ca.s=O&&O.s!=null?O.s|0:O!=null?O|0:100;if(ca.s<0)ca.s=0;else if(ca.s>100)ca.s=100;if(L!=ca.s){L=ca.s;ja=true}break;case "v":if(ea)continue;qa=true;ca.v=O&&O.v!=null?O.v|0:O!=null?O|0:100;if(ca.v<0)ca.v=0;else if(ca.v>100)ca.v=100;if(T!=ca.v){T=ca.v;ja=true}}if(ja){if(ea){e=e||0;l=l||0;u=u||0;O=p.rgbToHsv({r:e,g:l,b:u});o=O.h;L=O.s;T=O.v}else if(qa){o=o||
|
||
|
0;L=L!=null?L:100;T=T!=null?T:100;O=p.hsvToRgb({h:o,s:L,v:T});e=O.r;l=O.g;u=O.b}z=z!=null?z:255;J.call(d,fa||d)}}}};a.extend(true,d,{val:da,bind:function(V){a.isFunction(V)&&N.push(V)},unbind:function(V){if(a.isFunction(V))for(var O;(O=a.inArray(V,N))!=-1;)N.splice(O,1)},destroy:function(){N=null}});if(b)if(b.ahex!=null)da("ahex",b);else if(b.hex!=null)da((b.a!=null?"a":"")+"hex",b.a!=null?{ahex:b.hex+p.intToHex(b.a)}:b);else if(b.r!=null&&b.g!=null&&b.b!=null)da("rgb"+(b.a!=null?"a":""),b);else if(b.h!=
|
||
|
null&&b.s!=null&&b.v!=null)da("hsv"+(b.a!=null?"a":""),b)},ColorMethods:{hexToRgba:function(b){b=this.validateHex(b);if(b=="")return{r:null,g:null,b:null,a:null};var d="00",e="00",l="00",u="255";if(b.length==6)b+="ff";if(b.length>6){d=b.substring(0,2);e=b.substring(2,4);l=b.substring(4,6);u=b.substring(6,b.length)}else{if(b.length>4){d=b.substring(4,b.length);b=b.substring(0,4)}if(b.length>2){e=b.substring(2,b.length);b=b.substring(0,2)}if(b.length>0)l=b.substring(0,b.length)}return{r:this.hexToInt(d),
|
||
|
g:this.hexToInt(e),b:this.hexToInt(l),a:this.hexToInt(u)}},validateHex:function(b){if(typeof b=="object")return"";b=b.toLowerCase().replace(/[^a-f0-9]/g,"");if(b.length>8)b=b.substring(0,8);return b},rgbaToHex:function(b){return this.intToHex(b.r)+this.intToHex(b.g)+this.intToHex(b.b)+this.intToHex(b.a)},intToHex:function(b){b=(b|0).toString(16);if(b.length==1)b="0"+b;return b.toLowerCase()},hexToInt:function(b){return parseInt(b,16)},rgbToHsv:function(b){var d=b.r/255,e=b.g/255;b=b.b/255;var l={h:0,
|
||
|
s:0,v:0},u=0,z=0;if(d>=e&&d>=b){z=d;u=e>b?b:e}else if(e>=b&&e>=d){z=e;u=d>b?b:d}else{z=b;u=e>d?d:e}l.v=z;l.s=z?(z-u)/z:0;if(l.s){u=z-u;l.h=d==z?(e-b)/u:e==z?2+(b-d)/u:4+(d-e)/u;l.h=parseInt(l.h*60);if(l.h<0)l.h+=360}else l.h=0;l.s=l.s*100|0;l.v=l.v*100|0;return l},hsvToRgb:function(b){var d={r:0,g:0,b:0,a:100},e=b.h,l=b.s;b=b.v;if(l==0)d.r=b==0?d.g=d.b=0:d.g=d.b=b*255/100|0;else{if(e==360)e=0;e/=60;l/=100;b/=100;var u=e|0,z=e-u;e=b*(1-l);var o=b*(1-l*z);l=b*(1-l*(1-z));switch(u){case 0:d.r=b;d.g=
|
||
|
l;d.b=e;break;case 1:d.r=o;d.g=b;d.b=e;break;case 2:d.r=e;d.g=b;d.b=l;break;case 3:d.r=e;d.g=o;d.b=b;break;case 4:d.r=l;d.g=e;d.b=b;break;case 5:d.r=b;d.g=e;d.b=o}d.r=d.r*255|0;d.g=d.g*255|0;d.b=d.b*255|0}return d}}};var c=a.jPicker.Color,m=a.jPicker.List,p=a.jPicker.ColorMethods;a.fn.jPicker=function(b){var d=arguments;return this.each(function(){var e=this,l=a.extend(true,{},a.fn.jPicker.defaults,b);if(a(e).get(0).nodeName.toLowerCase()=="input"){a.extend(true,l,{window:{bindToInput:true,expandable:true,
|
||
|
input:a(e)}});if(a(e).val()==""){l.color.active=new c({hex:null});l.color.current=new c({hex:null})}else if(p.validateHex(a(e).val())){l.color.active=new c({hex:a(e).val(),a:l.color.active.val("a")});l.color.current=new c({hex:a(e).val(),a:l.color.active.val("a")})}}if(l.window.expandable)a(e).after('<span class="jPicker"><span class="Icon"><span class="Color"> </span><span class="Alpha"> </span><span class="Image" title="Click To Open Color Picker"> </span><span class="Container"> </span></span></span>');
|
||
|
else l.window.liveUpdate=false;var u=parseFloat(navigator.appVersion.split("MSIE")[1])<7&&document.body.filters,z=null,o=null,L=null,T=null,N=null,J=null,da=null,V=null,O=null,fa=null,sa=null,ja=null,ca=null,ea=null,qa=null,pa=null,ba=null,S=null,U=null,ra=null,la=null,ma=null,Y=null,za=null,Ia=null,Qa=null,Ka=null,Ua=null,Wa=function(M){var I=ta.active,X=I.val("hex"),Ma,Xa;l.color.mode=M;switch(M){case "h":setTimeout(function(){ab.call(e,o,"transparent");Ja.call(e,T,0);Ea.call(e,T,100);Ja.call(e,
|
||
|
N,260);Ea.call(e,N,100);ab.call(e,L,"transparent");Ja.call(e,da,0);Ea.call(e,da,100);Ja.call(e,V,260);Ea.call(e,V,100);Ja.call(e,O,260);Ea.call(e,O,100);Ja.call(e,fa,260);Ea.call(e,fa,100);Ja.call(e,ja,260);Ea.call(e,ja,100)},0);ca.range("all",{minX:0,maxX:100,minY:0,maxY:100});ea.range("rangeY",{minY:0,maxY:360});if(I.val("ahex")==null)break;ca.val("xy",{x:I.val("s"),y:100-I.val("v")},ca);ea.val("y",360-I.val("h"),ea);break;case "s":setTimeout(function(){ab.call(e,o,"transparent");Ja.call(e,T,-260);
|
||
|
Ja.call(e,N,-520);Ja.call(e,da,-260);Ja.call(e,V,-520);Ja.call(e,ja,260);Ea.call(e,ja,100)},0);ca.range("all",{minX:0,maxX:360,minY:0,maxY:100});ea.range("rangeY",{minY:0,maxY:100});if(I.val("ahex")==null)break;ca.val("xy",{x:I.val("h"),y:100-I.val("v")},ca);ea.val("y",100-I.val("s"),ea);break;case "v":setTimeout(function(){ab.call(e,o,"000000");Ja.call(e,T,-780);Ja.call(e,N,260);ab.call(e,L,X);Ja.call(e,da,-520);Ja.call(e,V,260);Ea.call(e,V,100);Ja.call(e,ja,260);Ea.call(e,ja,100)},0);ca.range("all",
|
||
|
{minX:0,maxX:360,minY:0,maxY:100});ea.range("rangeY",{minY:0,maxY:100});if(I.val("ahex")==null)break;ca.val("xy",{x:I.val("h"),y:100-I.val("s")},ca);ea.val("y",100-I.val("v"),ea);break;case "r":Ma=-1040;Xa=-780;ca.range("all",{minX:0,maxX:255,minY:0,maxY:255});ea.range("rangeY",{minY:0,maxY:255});if(I.val("ahex")==null)break;ca.val("xy",{x:I.val("b"),y:255-I.val("g")},ca);ea.val("y",255-I.val("r"),ea);break;case "g":Ma=-1560;Xa=-1820;ca.range("all",{minX:0,maxX:255,minY:0,maxY:255});ea.range("rangeY",
|
||
|
{minY:0,maxY:255});if(I.val("ahex")==null)break;ca.val("xy",{x:I.val("b"),y:255-I.val("r")},ca);ea.val("y",255-I.val("g"),ea);break;case "b":Ma=-2080;Xa=-2860;ca.range("all",{minX:0,maxX:255,minY:0,maxY:255});ea.range("rangeY",{minY:0,maxY:255});if(I.val("ahex")==null)break;ca.val("xy",{x:I.val("r"),y:255-I.val("g")},ca);ea.val("y",255-I.val("b"),ea);break;case "a":setTimeout(function(){ab.call(e,o,"transparent");Ja.call(e,T,-260);Ja.call(e,N,-520);Ja.call(e,da,260);Ja.call(e,V,260);Ea.call(e,V,100);
|
||
|
Ja.call(e,ja,0);Ea.call(e,ja,100)},0);ca.range("all",{minX:0,maxX:360,minY:0,maxY:100});ea.range("rangeY",{minY:0,maxY:255});if(I.val("ahex")==null)break;ca.val("xy",{x:I.val("h"),y:100-I.val("v")},ca);ea.val("y",255-I.val("a"),ea);break;default:throw"Invalid Mode";}switch(M){case "s":case "v":case "a":setTimeout(function(){Ea.call(e,T,100);Ea.call(e,da,100);Ja.call(e,O,260);Ea.call(e,O,100);Ja.call(e,fa,260);Ea.call(e,fa,100)},0);break;case "r":case "g":case "b":setTimeout(function(){ab.call(e,o,
|
||
|
"transparent");ab.call(e,L,"transparent");Ea.call(e,da,100);Ea.call(e,T,100);Ja.call(e,T,Ma);Ja.call(e,N,Ma-260);Ja.call(e,da,Xa-780);Ja.call(e,V,Xa-520);Ja.call(e,O,Xa);Ja.call(e,fa,Xa-260);Ja.call(e,ja,260);Ea.call(e,ja,100)},0)}I.val("ahex")!=null&&La.call(e,I)},La=function(M,I){if(I==null||I!=ea&&I!=ca)Fa.call(e,M,I);setTimeout(function(){Gb.call(e,M);Nb.call(e,M);lb.call(e,M)},0)},Ga=function(M,I){var X=ta.active;if(!(I!=ca&&X.val()==null)){var Ma=M.val("all");switch(l.color.mode){case "h":X.val("sv",
|
||
|
{s:Ma.x,v:100-Ma.y},I);break;case "s":case "a":X.val("hv",{h:Ma.x,v:100-Ma.y},I);break;case "v":X.val("hs",{h:Ma.x,s:100-Ma.y},I);break;case "r":X.val("gb",{g:255-Ma.y,b:Ma.x},I);break;case "g":X.val("rb",{r:255-Ma.y,b:Ma.x},I);break;case "b":X.val("rg",{r:Ma.x,g:255-Ma.y},I)}}},Oa=function(M,I){var X=ta.active;if(!(I!=ea&&X.val()==null))switch(l.color.mode){case "h":X.val("h",{h:360-M.val("y")},I);break;case "s":X.val("s",{s:100-M.val("y")},I);break;case "v":X.val("v",{v:100-M.val("y")},I);break;
|
||
|
case "r":X.val("r",{r:255-M.val("y")},I);break;case "g":X.val("g",{g:255-M.val("y")},I);break;case "b":X.val("b",{b:255-M.val("y")},I);break;case "a":X.val("a",255-M.val("y"),I)}},Fa=function(M,I){if(I!=ca)switch(l.color.mode){case "h":var X=M.val("sv");ca.val("xy",{x:X!=null?X.s:100,y:100-(X!=null?X.v:100)},I);break;case "s":case "a":X=M.val("hv");ca.val("xy",{x:X&&X.h||0,y:100-(X!=null?X.v:100)},I);break;case "v":X=M.val("hs");ca.val("xy",{x:X&&X.h||0,y:100-(X!=null?X.s:100)},I);break;case "r":X=
|
||
|
M.val("bg");ca.val("xy",{x:X&&X.b||0,y:255-(X&&X.g||0)},I);break;case "g":X=M.val("br");ca.val("xy",{x:X&&X.b||0,y:255-(X&&X.r||0)},I);break;case "b":X=M.val("rg");ca.val("xy",{x:X&&X.r||0,y:255-(X&&X.g||0)},I)}if(I!=ea)switch(l.color.mode){case "h":ea.val("y",360-(M.val("h")||0),I);break;case "s":X=M.val("s");ea.val("y",100-(X!=null?X:100),I);break;case "v":X=M.val("v");ea.val("y",100-(X!=null?X:100),I);break;case "r":ea.val("y",255-(M.val("r")||0),I);break;case "g":ea.val("y",255-(M.val("g")||0),
|
||
|
I);break;case "b":ea.val("y",255-(M.val("b")||0),I);break;case "a":X=M.val("a");ea.val("y",255-(X!=null?X:255),I)}},Gb=function(M){try{var I=M.val("all");ra.css({backgroundColor:I&&"#"+I.hex||"transparent"});Ea.call(e,ra,I&&Math.precision(I.a*100/255,4)||0)}catch(X){}},Nb=function(M){switch(l.color.mode){case "h":ab.call(e,o,(new c({h:M.val("h")||0,s:100,v:100})).val("hex"));break;case "s":case "a":var I=M.val("s");Ea.call(e,N,100-(I!=null?I:100));break;case "v":I=M.val("v");Ea.call(e,T,I!=null?I:
|
||
|
100);break;case "r":Ea.call(e,N,Math.precision((M.val("r")||0)/255*100,4));break;case "g":Ea.call(e,N,Math.precision((M.val("g")||0)/255*100,4));break;case "b":Ea.call(e,N,Math.precision((M.val("b")||0)/255*100))}M=M.val("a");Ea.call(e,J,Math.precision((255-(M||0))*100/255,4))},lb=function(M){switch(l.color.mode){case "h":var I=M.val("a");Ea.call(e,sa,Math.precision((255-(I||0))*100/255,4));break;case "s":I=M.val("hva");var X=new c({h:I&&I.h||0,s:100,v:I!=null?I.v:100});ab.call(e,L,X.val("hex"));
|
||
|
Ea.call(e,V,100-(I!=null?I.v:100));Ea.call(e,sa,Math.precision((255-(I&&I.a||0))*100/255,4));break;case "v":I=M.val("hsa");X=new c({h:I&&I.h||0,s:I!=null?I.s:100,v:100});ab.call(e,L,X.val("hex"));Ea.call(e,sa,Math.precision((255-(I&&I.a||0))*100/255,4));break;case "r":case "g":case "b":X=I=0;M=M.val("rgba");if(l.color.mode=="r"){I=M&&M.b||0;X=M&&M.g||0}else if(l.color.mode=="g"){I=M&&M.b||0;X=M&&M.r||0}else if(l.color.mode=="b"){I=M&&M.r||0;X=M&&M.g||0}var Ma=X>I?I:X;Ea.call(e,V,I>X?Math.precision((I-
|
||
|
X)/(255-X)*100,4):0);Ea.call(e,O,X>I?Math.precision((X-I)/(255-I)*100,4):0);Ea.call(e,fa,Math.precision(Ma/255*100,4));Ea.call(e,sa,Math.precision((255-(M&&M.a||0))*100/255,4));break;case "a":I=M.val("a");ab.call(e,L,M.val("hex")||"000000");Ea.call(e,sa,I!=null?0:100);Ea.call(e,ja,I!=null?100:0)}},ab=function(M,I){M.css({backgroundColor:I&&I.length==6&&"#"+I||"transparent"})},Sa=function(M,I){if(u&&(I.indexOf("AlphaBar.png")!=-1||I.indexOf("Bars.png")!=-1||I.indexOf("Maps.png")!=-1)){M.attr("pngSrc",
|
||
|
I);M.css({backgroundImage:"none",filter:"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+I+"', sizingMethod='scale')"})}else M.css({backgroundImage:"url('"+I+"')"})},Ja=function(M,I){M.css({top:I+"px"})},Ea=function(M,I){M.css({visibility:I>0?"visible":"hidden"});if(I>0&&I<100)if(u){var X=M.attr("pngSrc");X!=null&&(X.indexOf("AlphaBar.png")!=-1||X.indexOf("Bars.png")!=-1||X.indexOf("Maps.png")!=-1)?M.css({filter:"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+X+"', sizingMethod='scale') progid:DXImageTransform.Microsoft.Alpha(opacity="+
|
||
|
I+")"}):M.css({opacity:Math.precision(I/100,4)})}else M.css({opacity:Math.precision(I/100,4)});else if(I==0||I==100)if(u){X=M.attr("pngSrc");X!=null&&(X.indexOf("AlphaBar.png")!=-1||X.indexOf("Bars.png")!=-1||X.indexOf("Maps.png")!=-1)?M.css({filter:"progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+X+"', sizingMethod='scale')"}):M.css({opacity:""})}else M.css({opacity:""})},Za=function(){ta.active.val("ahex",ta.current.val("ahex"))},Ra=function(){ta.current.val("ahex",ta.active.val("ahex"))},
|
||
|
$a=function(M){a(this).parents("tbody:first").find('input:radio[value!="'+M.target.value+'"]').removeAttr("checked");Wa.call(e,M.target.value)},Na=function(){Za.call(e)},mb=function(){Za.call(e);l.window.expandable&&Ib.call(e);a.isFunction(Cb)&&Cb.call(e,ta.active,Y)},Ab=function(){Ra.call(e);l.window.expandable&&Ib.call(e);a.isFunction(Bb)&&Bb.call(e,ta.active,ma)},cb=function(){Kb.call(e)},jb=function(M){var I=M.val("hex");la.css({backgroundColor:I&&"#"+I||"transparent"});Ea.call(e,la,Math.precision((M.val("a")||
|
||
|
0)*100/255,4))},kb=function(M){var I=M.val("hex");M=M.val("va");Ia.css({backgroundColor:I&&"#"+I||"transparent"});Ea.call(e,Qa,Math.precision((255-(M&&M.a||0))*100/255,4));if(l.window.bindToInput&&l.window.updateInputColor)l.window.input.css({backgroundColor:I&&"#"+I||"transparent",color:M==null||M.v>75?"#000000":"#ffffff"})},Ca=function(M){pa=parseInt(z.css("left"));ba=parseInt(z.css("top"));S=M.pageX;U=M.pageY;a(document).bind("mousemove",wb).bind("mouseup",nb);M.preventDefault()},wb=function(M){z.css({left:pa-
|
||
|
(S-M.pageX)+"px",top:ba-(U-M.pageY)+"px"});l.window.expandable&&!a.support.boxModel&&z.prev().css({left:z.css("left"),top:z.css("top")});M.stopPropagation();M.preventDefault();return false},nb=function(M){a(document).unbind("mousemove",wb).unbind("mouseup",nb);M.stopPropagation();M.preventDefault();return false},yb=function(M){M.preventDefault();M.stopPropagation();ta.active.val("ahex",a(this).attr("title")||null,M.target);return false},Bb=a.isFunction(d[1])&&d[1]||null,ob=a.isFunction(d[2])&&d[2]||
|
||
|
null,Cb=a.isFunction(d[3])&&d[3]||null,Kb=function(){ta.current.val("ahex",ta.active.val("ahex"));var M=function(){if(!(!l.window.expandable||a.support.boxModel)){var I=z.find("table:first");z.before("<iframe/>");z.prev().css({width:I.width(),height:z.height(),opacity:0,position:"absolute",left:z.css("left"),top:z.css("top")})}};if(l.window.expandable){a(document.body).children("div.jPicker.Container").css({zIndex:10});z.css({zIndex:20})}switch(l.window.effects.type){case "fade":z.fadeIn(l.window.effects.speed.show,
|
||
|
M);break;case "slide":z.slideDown(l.window.effects.speed.show,M);break;default:z.show(l.window.effects.speed.show,M)}},Ib=function(){var M=function(){l.window.expandable&&z.css({zIndex:10});!l.window.expandable||a.support.boxModel||z.prev().remove()};switch(l.window.effects.type){case "fade":z.fadeOut(l.window.effects.speed.hide,M);break;case "slide":z.slideUp(l.window.effects.speed.hide,M);break;default:z.hide(l.window.effects.speed.hide,M)}},Rb=function(){var M=l.window,I=M.expandable?a(e).next().find(".Container:first"):
|
||
|
null;z=M.expandable?a("<div/>"):a(e);z.addClass("jPicker Container");M.expandable&&z.hide();z.get(0).onselectstart=function(Lb){if(Lb.target.nodeName.toLowerCase()!=="input")return false};var X=ta.active.val("all");if(M.alphaPrecision<0)M.alphaPrecision=0;else if(M.alphaPrecision>2)M.alphaPrecision=2;var Ma='<table class="jPicker" cellpadding="0" cellspacing="0"><tbody>'+(M.expandable?'<tr><td class="Move" colspan="5"> </td></tr>':"")+'<tr><td rowspan="9"><h2 class="Title">'+(M.title||Z.text.title)+
|
||
|
'</h2><div class="Map"><span class="Map1"> </span><span class="Map2"> </span><span class="Map3"> </span><img src="'+na.clientPath+na.colorMap.arrow.file+'" class="Arrow"/></div></td><td rowspan="9"><div class="Bar"><span class="Map1"> </span><span class="Map2"> </span><span class="Map3"> </span><span class="Map4"> </span><span class="Map5"> </span><span class="Map6"> </span><img src="'+na.clientPath+na.colorBar.arrow.file+'" class="Arrow"/></div></td><td colspan="2" class="Preview"><div class="prev_div">'+
|
||
|
Z.text.newColor+'<div class="color_preview"><span class="Active" title="'+Z.tooltips.colors.newColor+'"> </span><span class="Current" title="'+Z.tooltips.colors.currentColor+'"> </span></div></div>'+Z.text.currentColor+'</td><td rowspan="9" class="Button"><input type="button" class="Ok" value="'+Z.text.ok+'" title="'+Z.tooltips.buttons.ok+'"/><input type="button" class="Cancel" value="'+Z.text.cancel+'" title="'+Z.tooltips.buttons.cancel+'"/><div class="Grid"> </div></td></tr><tr class="Hue"><td class="Radio"><label title="'+
|
||
|
Z.tooltips.hue.radio+'"><input type="radio" value="h"'+(l.color.mode=="h"?' checked="checked"':"")+'/>H:</label></td><td class="Text"><input type="text" maxlength="3" value="'+(X!=null?X.h:"")+'" title="'+Z.tooltips.hue.textbox+'"/> \u00ba</td></tr><tr class="Saturation"><td class="Radio"><label title="'+Z.tooltips.saturation.radio+'"><input type="radio" value="s"'+(l.color.mode=="s"?' checked="checked"':"")+'/>S:</label></td><td class="Text"><input type="text" maxlength="3" value="'+(X!=null?
|
||
|
X.s:"")+'" title="'+Z.tooltips.saturation.textbox+'"/> %</td></tr><tr class="Value"><td class="Radio"><label title="'+Z.tooltips.value.radio+'"><input type="radio" value="v"'+(l.color.mode=="v"?' checked="checked"':"")+'/>V:</label></td><td class="Text"><input type="text" maxlength="3" value="'+(X!=null?X.v:"")+'" title="'+Z.tooltips.value.textbox+'"/> %<br/><br/></td></tr><tr class="Red"><td class="Radio"><label title="'+Z.tooltips.red.radio+'"><input type="radio" value="r"'+(l.color.mode==
|
||
|
"r"?' checked="checked"':"")+'/>R:</label></td><td class="Text"><input type="text" maxlength="3" value="'+(X!=null?X.r:"")+'" title="'+Z.tooltips.red.textbox+'"/></td></tr><tr class="Green"><td class="Radio"><label title="'+Z.tooltips.green.radio+'"><input type="radio" value="g"'+(l.color.mode=="g"?' checked="checked"':"")+'/>G:</label></td><td class="Text"><input type="text" maxlength="3" value="'+(X!=null?X.g:"")+'" title="'+Z.tooltips.green.textbox+'"/></td></tr><tr class="Blue"><td class="Radio"><label title="'+
|
||
|
Z.tooltips.blue.radio+'"><input type="radio" value="b"'+(l.color.mode=="b"?' checked="checked"':"")+'/>B:</label></td><td class="Text"><input type="text" maxlength="3" value="'+(X!=null?X.b:"")+'" title="'+Z.tooltips.blue.textbox+'"/></td></tr><tr class="Alpha"><td class="Radio">'+(M.alphaSupport?'<label title="'+Z.tooltips.alpha.radio+'"><input type="radio" value="a"'+(l.color.mode=="a"?' checked="checked"':"")+"/>A:</label>":" ")+'</td><td class="Text">'+(M.alphaSupport?'<input type="text" maxlength="'+
|
||
|
(3+M.alphaPrecision)+'" value="'+(X!=null?Math.precision(X.a*100/255,M.alphaPrecision):"")+'" title="'+Z.tooltips.alpha.textbox+'"/> %':" ")+'</td></tr><tr class="Hex"><td colspan="2" class="Text"><label title="'+Z.tooltips.hex.textbox+'">#:<input type="text" maxlength="6" class="Hex" value="'+(X!=null?X.hex:"")+'"/></label>'+(M.alphaSupport?'<input type="text" maxlength="2" class="AHex" value="'+(X!=null?X.ahex.substring(6):"")+'" title="'+Z.tooltips.hex.alpha+'"/></td>':" ")+"</tr></tbody></table>";
|
||
|
if(M.expandable){z.html(Ma);a(document.body).children("div.jPicker.Container").length==0?a(document.body).prepend(z):a(document.body).children("div.jPicker.Container:last").after(z);z.mousedown(function(){a(document.body).children("div.jPicker.Container").css({zIndex:10});z.css({zIndex:20})});z.css({left:M.position.x=="left"?I.offset().left-530-(M.position.y=="center"?25:0)+"px":M.position.x=="center"?I.offset().left-260+"px":M.position.x=="right"?I.offset().left-10+(M.position.y=="center"?25:0)+
|
||
|
"px":M.position.x=="screenCenter"?(a(document).width()>>1)-260+"px":I.offset().left+parseInt(M.position.x)+"px",position:"absolute",top:M.position.y=="top"?I.offset().top-312+"px":M.position.y=="center"?I.offset().top-156+"px":M.position.y=="bottom"?I.offset().top+25+"px":I.offset().top+parseInt(M.position.y)+"px"})}else{z=a(e);z.html(Ma)}Ma=z.find("tbody:first");o=Ma.find("div.Map:first");L=Ma.find("div.Bar:first");var Xa=o.find("span"),db=L.find("span");T=Xa.filter(".Map1:first");N=Xa.filter(".Map2:first");
|
||
|
J=Xa.filter(".Map3:first");da=db.filter(".Map1:first");V=db.filter(".Map2:first");O=db.filter(".Map3:first");fa=db.filter(".Map4:first");sa=db.filter(".Map5:first");ja=db.filter(".Map6:first");ca=new n(o,{map:{width:na.colorMap.width,height:na.colorMap.height},arrow:{image:na.clientPath+na.colorMap.arrow.file,width:na.colorMap.arrow.width,height:na.colorMap.arrow.height}});ca.bind(Ga);ea=new n(L,{map:{width:na.colorBar.width,height:na.colorBar.height},arrow:{image:na.clientPath+na.colorBar.arrow.file,
|
||
|
width:na.colorBar.arrow.width,height:na.colorBar.arrow.height}});ea.bind(Oa);qa=new f(Ma,ta.active,M.expandable&&M.bindToInput?M.input:null,M.alphaPrecision);Xa=X!=null?X.hex:null;var tb=Ma.find(".Preview");db=Ma.find(".Button");ra=tb.find(".Active:first").css({backgroundColor:Xa&&"#"+Xa||"transparent"});la=tb.find(".Current:first").css({backgroundColor:Xa&&"#"+Xa||"transparent"}).bind("click",Na);Ea.call(e,la,Math.precision(ta.current.val("a")*100)/255,4);ma=db.find(".Ok:first").bind("click",Ab);
|
||
|
Y=db.find(".Cancel:first").bind("click",mb);za=db.find(".Grid:first");setTimeout(function(){Sa.call(e,T,na.clientPath+"Maps.png");Sa.call(e,N,na.clientPath+"Maps.png");Sa.call(e,J,na.clientPath+"map-opacity.png");Sa.call(e,da,na.clientPath+"Bars.png");Sa.call(e,V,na.clientPath+"Bars.png");Sa.call(e,O,na.clientPath+"Bars.png");Sa.call(e,fa,na.clientPath+"Bars.png");Sa.call(e,sa,na.clientPath+"bar-opacity.png");Sa.call(e,ja,na.clientPath+"AlphaBar.png");Sa.call(e,tb.find("div:last"),na.clientPath+"preview-opacity.png")},
|
||
|
0);Ma.find("td.Radio input").bind("click",$a);if(ta.quickList&&ta.quickList.length>0){db="";for(i=0;i<ta.quickList.length;i++){if((typeof ta.quickList[i]).toString().toLowerCase()=="string")ta.quickList[i]=new c({hex:ta.quickList[i]});var xb=ta.quickList[i].val("a"),Hb=ta.quickList[i].val("ahex");if(!M.alphaSupport&&Hb)Hb=Hb.substring(0,6)+"ff";var pb=ta.quickList[i].val("hex");db+='<span class="QuickColor"'+(Hb&&' title="#'+Hb+'"'||"")+' style="background-color:'+(pb&&"#"+pb||"")+";"+(pb?"":"background-image:url("+
|
||
|
na.clientPath+"NoColor.png)")+(M.alphaSupport&&xb&&xb<255?";opacity:"+Math.precision(xb/255,4)+";filter:Alpha(opacity="+Math.precision(xb/2.55,4)+")":"")+'"> </span>'}Sa.call(e,za,na.clientPath+"bar-opacity.png");za.html(db);za.find(".QuickColor").click(yb)}Wa.call(e,l.color.mode);ta.active.bind(La);a.isFunction(ob)&&ta.active.bind(ob);ta.current.bind(jb);if(M.expandable){e.icon=I.parents(".Icon:first");Ia=e.icon.find(".Color:first").css({backgroundColor:Xa&&"#"+Xa||"transparent"});Qa=e.icon.find(".Alpha:first");
|
||
|
Sa.call(e,Qa,na.clientPath+"bar-opacity.png");Ea.call(e,Qa,Math.precision((255-(X!=null?X.a:0))*100/255,4));Ka=e.icon.find(".Image:first").css({backgroundImage:"url('"+na.clientPath+na.picker.file+"')"}).bind("click",cb);if(M.bindToInput&&M.updateInputColor)M.input.css({backgroundColor:Xa&&"#"+Xa||"transparent",color:X==null||X.v>75?"#000000":"#ffffff"});Ua=Ma.find(".Move:first").bind("mousedown",Ca);ta.active.bind(kb)}else Kb.call(e)},na=l.images,Z=l.localization,ta={active:(typeof l.color.active).toString().toLowerCase()==
|
||
|
"string"?new c({ahex:!l.window.alphaSupport&&l.color.active?l.color.active.substring(0,6)+"ff":l.color.active}):new c({ahex:!l.window.alphaSupport&&l.color.active.val("ahex")?l.color.active.val("ahex").substring(0,6)+"ff":l.color.active.val("ahex")}),current:(typeof l.color.active).toString().toLowerCase()=="string"?new c({ahex:!l.window.alphaSupport&&l.color.active?l.color.active.substring(0,6)+"ff":l.color.active}):new c({ahex:!l.window.alphaSupport&&l.color.active.val("ahex")?l.color.active.val("ahex").substring(0,
|
||
|
6)+"ff":l.color.active.val("ahex")}),quickList:l.color.quickList};a.extend(true,e,{commitCallback:Bb,liveCallback:ob,cancelCallback:Cb,color:ta,show:Kb,hide:Ib,destroy:function(){z.find("td.Radio input").unbind("click",$a);la.unbind("click",Na);Y.unbind("click",mb);ma.unbind("click",Ab);if(l.window.expandable){Ka.unbind("click",cb);Ua.unbind("mousedown",Ca);e.icon=null}z.find(".QuickColor").unbind("click",yb);ja=sa=fa=O=V=da=J=N=T=L=o=null;ca.destroy();ca=null;ea.destroy();ea=null;qa.destroy();ob=
|
||
|
Cb=Bb=za=Y=ma=la=ra=qa=null;z.html("");for(i=0;i<m.length;i++)m[i]==e&&m.splice(i,1)}});m.push(e);setTimeout(function(){Rb.call(e)},0)})};a.fn.jPicker.defaults={window:{title:null,effects:{type:"slide",speed:{show:"slow",hide:"fast"}},position:{x:"screenCenter",y:"top"},expandable:false,liveUpdate:true,alphaSupport:false,alphaPrecision:0,updateInputColor:true},color:{mode:"h",active:new c({ahex:"#ffcc00ff"}),quickList:[new c({h:360,s:33,v:100}),new c({h:360,s:66,v:100}),new c({h:360,s:100,v:100}),
|
||
|
new c({h:360,s:100,v:75}),new c({h:360,s:100,v:50}),new c({h:180,s:0,v:100}),new c({h:30,s:33,v:100}),new c({h:30,s:66,v:100}),new c({h:30,s:100,v:100}),new c({h:30,s:100,v:75}),new c({h:30,s:100,v:50}),new c({h:180,s:0,v:90}),new c({h:60,s:33,v:100}),new c({h:60,s:66,v:100}),new c({h:60,s:100,v:100}),new c({h:60,s:100,v:75}),new c({h:60,s:100,v:50}),new c({h:180,s:0,v:80}),new c({h:90,s:33,v:100}),new c({h:90,s:66,v:100}),new c({h:90,s:100,v:100}),new c({h:90,s:100,v:75}),new c({h:90,s:100,v:50}),
|
||
|
new c({h:180,s:0,v:70}),new c({h:120,s:33,v:100}),new c({h:120,s:66,v:100}),new c({h:120,s:100,v:100}),new c({h:120,s:100,v:75}),new c({h:120,s:100,v:50}),new c({h:180,s:0,v:60}),new c({h:150,s:33,v:100}),new c({h:150,s:66,v:100}),new c({h:150,s:100,v:100}),new c({h:150,s:100,v:75}),new c({h:150,s:100,v:50}),new c({h:180,s:0,v:50}),new c({h:180,s:33,v:100}),new c({h:180,s:66,v:100}),new c({h:180,s:100,v:100}),new c({h:180,s:100,v:75}),new c({h:180,s:100,v:50}),new c({h:180,s:0,v:40}),new c({h:210,
|
||
|
s:33,v:100}),new c({h:210,s:66,v:100}),new c({h:210,s:100,v:100}),new c({h:210,s:100,v:75}),new c({h:210,s:100,v:50}),new c({h:180,s:0,v:30}),new c({h:240,s:33,v:100}),new c({h:240,s:66,v:100}),new c({h:240,s:100,v:100}),new c({h:240,s:100,v:75}),new c({h:240,s:100,v:50}),new c({h:180,s:0,v:20}),new c({h:270,s:33,v:100}),new c({h:270,s:66,v:100}),new c({h:270,s:100,v:100}),new c({h:270,s:100,v:75}),new c({h:270,s:100,v:50}),new c({h:180,s:0,v:10}),new c({h:300,s:33,v:100}),new c({h:300,s:66,v:100}),
|
||
|
new c({h:300,s:100,v:100}),new c({h:300,s:100,v:75}),new c({h:300,s:100,v:50}),new c({h:180,s:0,v:0}),new c({h:330,s:33,v:100}),new c({h:330,s:66,v:100}),new c({h:330,s:100,v:100}),new c({h:330,s:100,v:75}),new c({h:330,s:100,v:50}),new c]},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:20,height:7}},picker:{file:"picker.gif",width:25,height:24}},localization:{text:{title:"Drag Markers To Pick A Color",
|
||
|
newColor:"new",currentColor:"current",ok:"OK",cancel:"Cancel"},tooltips:{colors:{newColor:"New Color - Press “OK” To Commit",currentColor:"Click To Revert To Original Color"},buttons:{ok:"Commit To This Color Selection",cancel:"Cancel And Revert To Original Color"},hue:{radio:"Set To “Hue” Color Mode",textbox:"Enter A “Hue” Value (0-360°)"},saturation:{radio:"Set To “Saturation” Color Mode",textbox:"Enter A “Saturation” Value (0-100%)"},
|
||
|
value:{radio:"Set To “Value” Color Mode",textbox:"Enter A “Value” Value (0-100%)"},red:{radio:"Set To “Red” Color Mode",textbox:"Enter A “Red” Value (0-255)"},green:{radio:"Set To “Green” Color Mode",textbox:"Enter A “Green” Value (0-255)"},blue:{radio:"Set To “Blue” Color Mode",textbox:"Enter A “Blue” Value (0-255)"},alpha:{radio:"Set To “Alpha” Color Mode",textbox:"Enter A “Alpha” Value (0-100)"},
|
||
|
hex:{textbox:"Enter A “Hex” Color Value (#000000-#ffffff)",alpha:"Enter A “Alpha” Value (#00-#ff)"}}}}})(jQuery,"1.1.6");
|