]>
jfr.im git - irc/quakenet/qwebirc.git/blob - static/js/excanvas-compressed.js
1 if(!window
.CanvasRenderingContext2D
){(function(){var I
=Math
,i
=I
.round
,L
=I
.sin
,M
=I
.cos
,m
=10,A
=m
/2,Q
={init:function(a
){var b
=a
||document
;if(/MSIE/.test(navigator
.userAgent
)&&!window
.opera
){var c
=this;b
.attachEvent("onreadystatechange",function(){c
.r(b
)})}},r:function(a
){if(a
.readyState
=="complete"){if(!a
.namespaces
["s"]){a
.namespaces
.add("g_vml_","urn:schemas-microsoft-com:vml")}var b
=a
.createStyleSheet();b
.cssText
="canvas{display:inline-block;overflow:hidden;text-align:left;width:300px;height:150px}g_vml_\\:*{behavior:url(#default#VML)}";
2 var c
=a
.getElementsByTagName("canvas");for(var d
=0;d
<c
.length
;d
++){if(!c
[d
].getContext
){this.initElement(c
[d
])}}}},q:function(a
){var b
=a
.outerHTML
,c
=a
.ownerDocument
.createElement(b
);if(b
.slice(-2)!="/>"){var d
="/"+a
.tagName
,e
;while((e
=a
.nextSibling
)&&e
.tagName
!=d
){e
.removeNode()}if(e
){e
.removeNode()}}a
.parentNode
.replaceChild(c
,a
);return c
},initElement:function(a
){a
=this.q(a
);a
.getContext=function(){if(this.l
){return this.l
}return this.l
=new K(this)};a
.attachEvent("onpropertychange",V
);a
.attachEvent("onresize",
3 W
);var b
=a
.attributes
;if(b
.width
&&b
.width
.specified
){a
.style
.width
=b
.width
.nodeValue
+"px"}else{a
.width
=a
.clientWidth
}if(b
.height
&&b
.height
.specified
){a
.style
.height
=b
.height
.nodeValue
+"px"}else{a
.height
=a
.clientHeight
}return a
}};function V(a
){var b
=a
.srcElement
;switch(a
.propertyName
){case "width":b
.style
.width
=b
.attributes
.width
.nodeValue
+"px";b
.getContext().clearRect();break;case "height":b
.style
.height
=b
.attributes
.height
.nodeValue
+"px";b
.getContext().clearRect();break}}function W(a
){var b
=a
.srcElement
;
4 if(b
.firstChild
){b
.firstChild
.style
.width
=b
.clientWidth
+"px";b
.firstChild
.style
.height
=b
.clientHeight
+"px"}}Q
.init();var R
=[];for(var E
=0;E
<16;E
++){for(var F
=0;F
<16;F
++){R
[E
*16+F
]=E
.toString(16)+F
.toString(16)}}function J(){return[[1,0,0],[0,1,0],[0,0,1]]}function G(a
,b
){var c
=J();for(var d
=0;d
<3;d
++){for(var e
=0;e
<3;e
++){var g
=0;for(var h
=0;h
<3;h
++){g
+=a
[d
][h
]*b
[h
][e
]}c
[d
][e
]=g
}}return c
}function N(a
,b
){b
.fillStyle
=a
.fillStyle
;b
.lineCap
=a
.lineCap
;b
.lineJoin
=a
.lineJoin
;b
.lineWidth
=a
.lineWidth
;b
.miterLimit
=
5 a
.miterLimit
;b
.shadowBlur
=a
.shadowBlur
;b
.shadowColor
=a
.shadowColor
;b
.shadowOffsetX
=a
.shadowOffsetX
;b
.shadowOffsetY
=a
.shadowOffsetY
;b
.strokeStyle
=a
.strokeStyle
;b
.d
=a
.d
;b
.e
=a
.e
}function O(a
){var b
,c
=1;a
=String(a
);if(a
.substring(0,3)=="rgb"){var d
=a
.indexOf("(",3),e
=a
.indexOf(")",d
+1),g
=a
.substring(d
+1,e
).split(",");b
="#";for(var h
=0;h
<3;h
++){b
+=R
[Number(g
[h
])]}if(g
.length
==4&&a
.substr(3,1)=="a"){c
=g
[3]}}else{b
=a
}return[b
,c
]}function S(a
){switch(a
){case "butt":return"flat";case "round":return"round";
6 case "square":default:return"square"}}function K(a
){this.a
=J();this.m
=[];this.k
=[];this.c
=[];this.strokeStyle
="#000";this.fillStyle
="#000";this.lineWidth
=1;this.lineJoin
="miter";this.lineCap
="butt";this.miterLimit
=m
*1;this.globalAlpha
=1;this.canvas
=a
;var b
=a
.ownerDocument
.createElement("div");b
.style
.width
=a
.clientWidth
+"px";b
.style
.height
=a
.clientHeight
+"px";b
.style
.overflow
="hidden";b
.style
.position
="absolute";a
.appendChild(b
);this.j
=b
;this.d
=1;this.e
=1}var j
=K
.prototype;j
.clearRect=function(){this.j
.innerHTML
=
7 "";this.c
=[]};j
.beginPath=function(){this.c
=[]};j
.moveTo=function(a
,b
){this.c
.push({type:"moveTo",x:a
,y:b
});this.f
=a
;this.g
=b
};j
.lineTo=function(a
,b
){this.c
.push({type:"lineTo",x:a
,y:b
});this.f
=a
;this.g
=b
};j
.bezierCurveTo=function(a
,b
,c
,d
,e
,g
){this.c
.push({type:"bezierCurveTo",cp1x:a
,cp1y:b
,cp2x:c
,cp2y:d
,x:e
,y:g
});this.f
=e
;this.g
=g
};j
.quadraticCurveTo=function(a
,b
,c
,d
){var e
=this.f
+0.6666666666666666*(a
-this.f
),g
=this.g
+0.6666666666666666*(b
-this.g
),h
=e
+(c
-this.f
)/3,l=g+(d-this.g)/3;this.bezierCurveTo(e
,
8 g
,h
,l
,c
,d
)};j
.arc=function(a
,b
,c
,d
,e
,g
){c
*=m
;var h
=g
?"at":"wa",l
=a
+M(d
)*c
-A
,n
=b
+L(d
)*c
-A
,o
=a
+M(e
)*c
-A
,f
=b
+L(e
)*c
-A
;if(l
==o
&&!g
){l
+=0.125}this.c
.push({type:h
,x:a
,y:b
,radius:c
,xStart:l
,yStart:n
,xEnd:o
,yEnd:f
})};j
.rect=function(a
,b
,c
,d
){this.moveTo(a
,b
);this.lineTo(a
+c
,b
);this.lineTo(a
+c
,b
+d
);this.lineTo(a
,b
+d
);this.closePath()};j
.strokeRect=function(a
,b
,c
,d
){this.beginPath();this.moveTo(a
,b
);this.lineTo(a
+c
,b
);this.lineTo(a
+c
,b
+d
);this.lineTo(a
,b
+d
);this.closePath();this.stroke()};j
.fillRect=function(a
,
9 b
,c
,d
){this.beginPath();this.moveTo(a
,b
);this.lineTo(a
+c
,b
);this.lineTo(a
+c
,b
+d
);this.lineTo(a
,b
+d
);this.closePath();this.fill()};j
.createLinearGradient=function(a
,b
,c
,d
){var e
=new H("gradient");return e
};j
.createRadialGradient=function(a
,b
,c
,d
,e
,g
){var h
=new H("gradientradial");h
.n
=c
;h
.o
=g
;h
.i
.x
=a
;h
.i
.y
=b
;return h
};j
.drawImage=function(a
,b
){var c
,d
,e
,g
,h
,l
,n
,o
,f
=a
.runtimeStyle
.width
,k
=a
.runtimeStyle
.height
;a
.runtimeStyle
.width
="auto";a
.runtimeStyle
.height
="auto";var q
=a
.width
,r
=a
.height
;a
.runtimeStyle
.width
=
10 f
;a
.runtimeStyle
.height
=k
;if(arguments
.length
==3){c
=arguments
[1];d
=arguments
[2];h
=(l
=0);n
=(e
=q
);o
=(g
=r
)}else if(arguments
.length
==5){c
=arguments
[1];d
=arguments
[2];e
=arguments
[3];g
=arguments
[4];h
=(l
=0);n
=q
;o
=r
}else if(arguments
.length
==9){h
=arguments
[1];l
=arguments
[2];n
=arguments
[3];o
=arguments
[4];c
=arguments
[5];d
=arguments
[6];e
=arguments
[7];g
=arguments
[8]}else{throw"Invalid number of arguments";}var s
=this.b(c
,d
),t
=[],v
=10,w
=10;t
.push(" <g_vml_:group",' coordsize="',m
*v
,",",m
*w
,'"',' coordorigin="0,0"',
11 ' style="width:',v
,";height:",w
,";position:absolute;");if(this.a
[0][0]!=1||this.a
[0][1]){var x
=[];x
.push("M11='",this.a
[0][0],"',","M12='",this.a
[1][0],"',","M21='",this.a
[0][1],"',","M22='",this.a
[1][1],"',","Dx='",i(s
.x
/m),"',","Dy='",i(s.y/m),"'");var p
=s
,y
=this.b(c
+e
,d
),z
=this.b(c
,d
+g
),B
=this.b(c
+e
,d
+g
);p
.x
=Math
.max(p
.x
,y
.x
,z
.x
,B
.x
);p
.y
=Math
.max(p
.y
,y
.y
,z
.y
,B
.y
);t
.push("padding:0 ",i(p
.x
/m
),"px ",i(p
.y
/m
),"px 0;filter:progid:DXImageTransform.Microsoft.Matrix(",x
.join(""),", sizingmethod='clip');")}else{t
.push("top:",
12 i(s
.y
/m),"px;left:",i(s.x/m),"px;")}t
.push(' ">','<g_vml_:image src="',a
.src
,'"',' style="width:',m
*e
,";"," height:",m
*g
,';"',' cropleft="',h
/q
,'"',' croptop="',l
/r
,'"',' cropright="',(q
-h
-n
)/q
,'"',' cropbottom="',(r
-l
-o
)/r,'"'," />","</g_vml_:group
>");this.j.insertAdjacentHTML("BeforeEnd
",t.join(""))};j.stroke=function(a){var b=[],c=O(a?this.fillStyle:this.strokeStyle),d=c[0],e=c[1]*this.globalAlpha,g=10,h=10;b.push("<g_vml_:shape
",' fillcolor="',d,'"',' filled="',Boolean(a),'"',' style="position:absolute
;width:',
13 g,";height:",h,';"',' coordorigin="0 0" coordsize="',m*g," ",m*h,'"',' stroked="',!a,'"',' strokeweight="',this.lineWidth,'"',' strokecolor="',d,'"',' path="');var l={x:null,y:null},n={x:null,y:null};for(var o=0;o<this.c.length;o++){var f=this.c[o];if(f.type=="moveTo"){b.push(" m ");var k=this.b(f.x,f.y);b.push(i(k.x),",",i(k.y))}else if(f.type=="lineTo"){b.push(" l ");var k=this.b(f.x,f.y);b.push(i(k.x),",",i(k.y))}else if(f.type=="close"){b.push(" x ")}else if(f.type=="bezierCurveTo"){b.push(" c ");
14 var k=this.b(f.x,f.y),q=this.b(f.cp1x,f.cp1y),r=this.b(f.cp2x,f.cp2y);b.push(i(q.x),",",i(q.y),",",i(r.x),",",i(r.y),",",i(k.x),",",i(k.y))}else if(f.type=="at"||f.type=="wa"){b.push(" ",f.type," ");var k=this.b(f.x,f.y),s=this.b(f.xStart,f.yStart),t=this.b(f.xEnd,f.yEnd);b.push(i(k.x-this.d*f.radius),",",i(k.y-this.e*f.radius)," ",i(k.x+this.d*f.radius),",",i(k.y+this.e*f.radius)," ",i(s.x),",",i(s.y)," ",i(t.x),",",i(t.y))}if(k){if(l.x==null||k.x<l.x){l.x=k.x}if(n.x==null||k.x>n.x){n.x=k.x}if(l.y==
15 null||k.y<l.y){l.y=k.y}if(n.y==null||k.y>n.y){n.y=k.y}}}b.push(' ">');if(typeof this.fillStyle=="object
"){var v={x:"50%",y:"50%"},w=n.x-l.x,x=n.y-l.y,p=w>x?w:x;v.x=i(this.fillStyle.i.x/w*100+50)+"%";v.y=i(this.fillStyle.i.y/x*100+50)+"%";var y=[];if(this.fillStyle.p=="gradientradial
"){var z=this.fillStyle.n/p*100,B=this.fillStyle.o/p*100-z}else{var z=0,B=100}var C={offset:null,color:null},D={offset:null,color:null};this.fillStyle.h.sort(function(T,U){return T.offset-U.offset});for(var o=0;o<this.fillStyle.h.length;o++){var u=
16 this.fillStyle.h[o];y.push(u.offset*B+z,"% ",u.color,",");if(u.offset>C.offset||C.offset==null){C.offset=u.offset;C.color=u.color}if(u.offset<D.offset||D.offset==null){D.offset=u.offset;D.color=u.color}}y.pop();b.push("<g_vml_:fill
",' color="',D.color,'"',' color2="',C.color,'"',' type="',this.fillStyle.p,'"',' focusposition="',v.x,", ",v.y,'"',' colors="',y.join(""),'"',' opacity="',e,'" />')}else if(a){b.push('<g_vml_:fill color="',d,'" opacity="',e,'" />')}else{b.push("<g_vml_:stroke
",' opacity="',
17 e,'"',' joinstyle="',this.lineJoin,'"',' miterlimit="',this.miterLimit,'"',' endcap="',S(this.lineCap),'"',' weight="',this.lineWidth,'px
"',' color="',d,'" />')}b.push("</g_vml_:shape
>");this.j.insertAdjacentHTML("beforeEnd
",b.join(""));this.c=[]};j.fill=function(){this.stroke(true)};j.closePath=function(){this.c.push({type:"close
"})};j.b=function(a,b){return{x:m*(a*this.a[0][0]+b*this.a[1][0]+this.a[2][0])-A,y:m*(a*this.a[0][1]+b*this.a[1][1]+this.a[2][1])-A}};j.save=function(){var a={};N(this,a);
18 this.k.push(a);this.m.push(this.a);this.a=G(J(),this.a)};j.restore=function(){N(this.k.pop(),this);this.a=this.m.pop()};j.translate=function(a,b){var c=[[1,0,0],[0,1,0],[a,b,1]];this.a=G(c,this.a)};j.rotate=function(a){var b=M(a),c=L(a),d=[[b,c,0],[-c,b,0],[0,0,1]];this.a=G(d,this.a)};j.scale=function(a,b){this.d*=a;this.e*=b;var c=[[a,0,0],[0,b,0],[0,0,1]];this.a=G(c,this.a)};j.clip=function(){};j.arcTo=function(){};j.createPattern=function(){return new P};function H(a){this.p=a;this.n=0;this.o=
19 0;this.h=[];this.i={x:0,y:0}}H.prototype.addColorStop=function(a,b){b=O(b);this.h.push({offset:1-a,color:b})};function P(){}G_vmlCanvasManager=Q;CanvasRenderingContext2D=K;CanvasGradient=H;CanvasPattern=P})()};