109
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
1 |
/** |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
2 |
* Copyright (c) 2006, David Spurr (http://www.defusion.org.uk/) |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
3 |
* All rights reserved. |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
4 |
* |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
5 |
* Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
6 |
* |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
7 |
* * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
8 |
* * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
9 |
* * Neither the name of the David Spurr nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
10 |
* |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
11 |
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
12 |
* |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
13 |
* http://www.opensource.org/licenses/bsd-license.php |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
14 |
* |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
15 |
* See scriptaculous.js for full scriptaculous licence |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
16 |
*/ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
17 |
|
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
18 |
var CropDraggable=Class.create(); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
19 |
Object.extend(Object.extend(CropDraggable.prototype,Draggable.prototype),{initialize:function(_1){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
20 |
this.options=Object.extend({drawMethod:function(){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
21 |
}},arguments[1]||{}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
22 |
this.element=$(_1); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
23 |
this.handle=this.element; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
24 |
this.delta=this.currentDelta(); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
25 |
this.dragging=false; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
26 |
this.eventMouseDown=this.initDrag.bindAsEventListener(this); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
27 |
Event.observe(this.handle,"mousedown",this.eventMouseDown); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
28 |
Draggables.register(this); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
29 |
},draw:function(_2){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
30 |
var _3=Position.cumulativeOffset(this.element); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
31 |
var d=this.currentDelta(); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
32 |
_3[0]-=d[0]; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
33 |
_3[1]-=d[1]; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
34 |
var p=[0,1].map(function(i){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
35 |
return (_2[i]-_3[i]-this.offset[i]); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
36 |
}.bind(this)); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
37 |
this.options.drawMethod(p); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
38 |
}}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
39 |
var Cropper={}; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
40 |
Cropper.Img=Class.create(); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
41 |
Cropper.Img.prototype={initialize:function(_7,_8){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
42 |
this.options=Object.extend({ratioDim:{x:0,y:0},minWidth:0,minHeight:0,displayOnInit:false,onEndCrop:Prototype.emptyFunction,captureKeys:true},_8||{}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
43 |
if(this.options.minWidth>0&&this.options.minHeight>0){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
44 |
this.options.ratioDim.x=this.options.minWidth; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
45 |
this.options.ratioDim.y=this.options.minHeight; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
46 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
47 |
this.img=$(_7); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
48 |
this.clickCoords={x:0,y:0}; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
49 |
this.dragging=false; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
50 |
this.resizing=false; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
51 |
this.isWebKit=/Konqueror|Safari|KHTML/.test(navigator.userAgent); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
52 |
this.isIE=/MSIE/.test(navigator.userAgent); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
53 |
this.isOpera8=/Opera\s[1-8]/.test(navigator.userAgent); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
54 |
this.ratioX=0; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
55 |
this.ratioY=0; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
56 |
this.attached=false; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
57 |
$A(document.getElementsByTagName("script")).each(function(s){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
58 |
if(s.src.match(/cropper\.js/)){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
59 |
var _a=s.src.replace(/cropper\.js(.*)?/,""); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
60 |
var _b=document.createElement("link"); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
61 |
_b.rel="stylesheet"; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
62 |
_b.type="text/css"; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
63 |
_b.href=_a+"cropper.css"; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
64 |
_b.media="screen"; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
65 |
document.getElementsByTagName("head")[0].appendChild(_b); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
66 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
67 |
}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
68 |
if(this.options.ratioDim.x>0&&this.options.ratioDim.y>0){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
69 |
var _c=this.getGCD(this.options.ratioDim.x,this.options.ratioDim.y); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
70 |
this.ratioX=this.options.ratioDim.x/_c; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
71 |
this.ratioY=this.options.ratioDim.y/_c; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
72 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
73 |
this.subInitialize(); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
74 |
if(this.img.complete||this.isWebKit){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
75 |
this.onLoad(); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
76 |
}else{ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
77 |
Event.observe(this.img,"load",this.onLoad.bindAsEventListener(this)); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
78 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
79 |
},getGCD:function(a,b){return 1; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
80 |
if(b==0){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
81 |
return a; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
82 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
83 |
return this.getGCD(b,a%b); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
84 |
},onLoad:function(){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
85 |
var _f="imgCrop_"; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
86 |
var _10=this.img.parentNode; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
87 |
var _11=""; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
88 |
if(this.isOpera8){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
89 |
_11=" opera8"; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
90 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
91 |
this.imgWrap=Builder.node("div",{"class":_f+"wrap"+_11}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
92 |
if(this.isIE){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
93 |
this.north=Builder.node("div",{"class":_f+"overlay "+_f+"north"},[Builder.node("span")]); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
94 |
this.east=Builder.node("div",{"class":_f+"overlay "+_f+"east"},[Builder.node("span")]); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
95 |
this.south=Builder.node("div",{"class":_f+"overlay "+_f+"south"},[Builder.node("span")]); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
96 |
this.west=Builder.node("div",{"class":_f+"overlay "+_f+"west"},[Builder.node("span")]); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
97 |
var _12=[this.north,this.east,this.south,this.west]; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
98 |
}else{ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
99 |
this.overlay=Builder.node("div",{"class":_f+"overlay"}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
100 |
var _12=[this.overlay]; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
101 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
102 |
this.dragArea=Builder.node("div",{"class":_f+"dragArea"},_12); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
103 |
this.handleN=Builder.node("div",{"class":_f+"handle "+_f+"handleN"}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
104 |
this.handleNE=Builder.node("div",{"class":_f+"handle "+_f+"handleNE"}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
105 |
this.handleE=Builder.node("div",{"class":_f+"handle "+_f+"handleE"}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
106 |
this.handleSE=Builder.node("div",{"class":_f+"handle "+_f+"handleSE"}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
107 |
this.handleS=Builder.node("div",{"class":_f+"handle "+_f+"handleS"}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
108 |
this.handleSW=Builder.node("div",{"class":_f+"handle "+_f+"handleSW"}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
109 |
this.handleW=Builder.node("div",{"class":_f+"handle "+_f+"handleW"}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
110 |
this.handleNW=Builder.node("div",{"class":_f+"handle "+_f+"handleNW"}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
111 |
this.selArea=Builder.node("div",{"class":_f+"selArea"},[Builder.node("div",{"class":_f+"marqueeHoriz "+_f+"marqueeNorth"},[Builder.node("span")]),Builder.node("div",{"class":_f+"marqueeVert "+_f+"marqueeEast"},[Builder.node("span")]),Builder.node("div",{"class":_f+"marqueeHoriz "+_f+"marqueeSouth"},[Builder.node("span")]),Builder.node("div",{"class":_f+"marqueeVert "+_f+"marqueeWest"},[Builder.node("span")]),this.handleN,this.handleNE,this.handleE,this.handleSE,this.handleS,this.handleSW,this.handleW,this.handleNW,Builder.node("div",{"class":_f+"clickArea"})]); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
112 |
Element.setStyle($(this.selArea),{backgroundColor:"transparent",backgroundRepeat:"no-repeat",backgroundPosition:"0 0"}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
113 |
this.imgWrap.appendChild(this.img); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
114 |
this.imgWrap.appendChild(this.dragArea); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
115 |
this.dragArea.appendChild(this.selArea); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
116 |
this.dragArea.appendChild(Builder.node("div",{"class":_f+"clickArea"})); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
117 |
_10.appendChild(this.imgWrap); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
118 |
Event.observe(this.dragArea,"mousedown",this.startDrag.bindAsEventListener(this)); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
119 |
Event.observe(document,"mousemove",this.onDrag.bindAsEventListener(this)); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
120 |
Event.observe(document,"mouseup",this.endCrop.bindAsEventListener(this)); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
121 |
var _13=[this.handleN,this.handleNE,this.handleE,this.handleSE,this.handleS,this.handleSW,this.handleW,this.handleNW]; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
122 |
for(var i=0;i<_13.length;i++){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
123 |
Event.observe(_13[i],"mousedown",this.startResize.bindAsEventListener(this)); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
124 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
125 |
if(this.options.captureKeys){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
126 |
Event.observe(document,"keydown",this.handleKeys.bindAsEventListener(this)); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
127 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
128 |
new CropDraggable(this.selArea,{drawMethod:this.moveArea.bindAsEventListener(this)}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
129 |
this.setParams(); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
130 |
},setParams:function(){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
131 |
this.imgW=this.img.width; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
132 |
this.imgH=this.img.height; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
133 |
if(!this.isIE){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
134 |
Element.setStyle($(this.overlay),{width:this.imgW+"px",height:this.imgH+"px"}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
135 |
Element.hide($(this.overlay)); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
136 |
Element.setStyle($(this.selArea),{backgroundImage:"url("+this.img.src+")"}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
137 |
}else{ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
138 |
Element.setStyle($(this.north),{height:0}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
139 |
Element.setStyle($(this.east),{width:0,height:0}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
140 |
Element.setStyle($(this.south),{height:0}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
141 |
Element.setStyle($(this.west),{width:0,height:0}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
142 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
143 |
Element.setStyle($(this.imgWrap),{"width":this.imgW+"px","height":this.imgH+"px"}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
144 |
Element.hide($(this.selArea)); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
145 |
var _15=Position.positionedOffset(this.imgWrap); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
146 |
this.wrapOffsets={"top":_15[1],"left":_15[0]}; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
147 |
var _16={x1:0,y1:0,x2:0,y2:0}; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
148 |
this.setAreaCoords(_16); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
149 |
if(this.options.ratioDim.x>0&&this.options.ratioDim.y>0&&this.options.displayOnInit){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
150 |
_16.x1=Math.ceil((this.imgW-this.options.ratioDim.x)/2); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
151 |
_16.y1=Math.ceil((this.imgH-this.options.ratioDim.y)/2); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
152 |
_16.x2=_16.x1+this.options.ratioDim.x; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
153 |
_16.y2=_16.y1+this.options.ratioDim.y; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
154 |
Element.show(this.selArea); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
155 |
this.drawArea(); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
156 |
this.endCrop(); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
157 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
158 |
this.attached=true; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
159 |
},remove:function(){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
160 |
this.attached=false; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
161 |
this.imgWrap.parentNode.insertBefore(this.img,this.imgWrap); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
162 |
this.imgWrap.parentNode.removeChild(this.imgWrap); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
163 |
Event.stopObserving(this.dragArea,"mousedown",this.startDrag.bindAsEventListener(this)); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
164 |
Event.stopObserving(document,"mousemove",this.onDrag.bindAsEventListener(this)); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
165 |
Event.stopObserving(document,"mouseup",this.endCrop.bindAsEventListener(this)); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
166 |
var _17=[this.handleN,this.handleNE,this.handleE,this.handleSE,this.handleS,this.handleSW,this.handleW,this.handleNW]; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
167 |
for(var i=0;i<_17.length;i++){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
168 |
Event.stopObserving(_17[i],"mousedown",this.startResize.bindAsEventListener(this)); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
169 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
170 |
if(this.options.captureKeys){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
171 |
Event.stopObserving(document,"keydown",this.handleKeys.bindAsEventListener(this)); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
172 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
173 |
},reset:function(){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
174 |
if(!this.attached){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
175 |
this.onLoad(); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
176 |
}else{ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
177 |
this.setParams(); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
178 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
179 |
this.endCrop(); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
180 |
},handleKeys:function(e){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
181 |
var dir={x:0,y:0}; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
182 |
if(!this.dragging){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
183 |
switch(e.keyCode){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
184 |
case (37): |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
185 |
dir.x=-1; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
186 |
break; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
187 |
case (38): |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
188 |
dir.y=-1; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
189 |
break; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
190 |
case (39): |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
191 |
dir.x=1; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
192 |
break; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
193 |
case (40): |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
194 |
dir.y=1; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
195 |
break; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
196 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
197 |
if(dir.x!=0||dir.y!=0){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
198 |
if(e.shiftKey){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
199 |
dir.x*=10; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
200 |
dir.y*=10; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
201 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
202 |
this.moveArea([this.areaCoords.x1+dir.x,this.areaCoords.y1+dir.y]); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
203 |
Event.stop(e); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
204 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
205 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
206 |
},calcW:function(){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
207 |
return (this.areaCoords.x2-this.areaCoords.x1); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
208 |
},calcH:function(){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
209 |
return (this.areaCoords.y2-this.areaCoords.y1); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
210 |
},moveArea:function(_1b){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
211 |
this.setAreaCoords({x1:_1b[0],y1:_1b[1],x2:_1b[0]+this.calcW(),y2:_1b[1]+this.calcH()},true); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
212 |
this.drawArea(); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
213 |
},cloneCoords:function(_1c){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
214 |
return {x1:_1c.x1,y1:_1c.y1,x2:_1c.x2,y2:_1c.y2}; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
215 |
},setAreaCoords:function(_1d,_1e,_1f,_20,_21){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
216 |
var _22=typeof _1e!="undefined"?_1e:false; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
217 |
var _23=typeof _1f!="undefined"?_1f:false; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
218 |
if(_1e){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
219 |
var _24=_1d.x2-_1d.x1; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
220 |
var _25=_1d.y2-_1d.y1; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
221 |
if(_1d.x1<0){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
222 |
_1d.x1=0; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
223 |
_1d.x2=_24; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
224 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
225 |
if(_1d.y1<0){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
226 |
_1d.y1=0; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
227 |
_1d.y2=_25; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
228 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
229 |
if(_1d.x2>this.imgW){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
230 |
_1d.x2=this.imgW; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
231 |
_1d.x1=this.imgW-_24; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
232 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
233 |
if(_1d.y2>this.imgH){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
234 |
_1d.y2=this.imgH; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
235 |
_1d.y1=this.imgH-_25; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
236 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
237 |
}else{ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
238 |
if(_1d.x1<0){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
239 |
_1d.x1=0; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
240 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
241 |
if(_1d.y1<0){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
242 |
_1d.y1=0; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
243 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
244 |
if(_1d.x2>this.imgW){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
245 |
_1d.x2=this.imgW; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
246 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
247 |
if(_1d.y2>this.imgH){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
248 |
_1d.y2=this.imgH; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
249 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
250 |
if(typeof (_20)!="undefined"){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
251 |
if(this.ratioX>0){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
252 |
this.applyRatio(_1d,{x:this.ratioX,y:this.ratioY},_20,_21); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
253 |
}else{ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
254 |
if(_23){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
255 |
this.applyRatio(_1d,{x:1,y:1},_20,_21); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
256 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
257 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
258 |
var _26={a1:_1d.x1,a2:_1d.x2}; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
259 |
var _27={a1:_1d.y1,a2:_1d.y2}; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
260 |
var _28=this.options.minWidth; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
261 |
var _29=this.options.minHeight; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
262 |
if((_28==0||_29==0)&&_23){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
263 |
if(_28>0){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
264 |
_29=_28; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
265 |
}else{ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
266 |
if(_29>0){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
267 |
_28=_29; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
268 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
269 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
270 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
271 |
this.applyMinDimension(_26,_28,_20.x,{min:0,max:this.imgW}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
272 |
this.applyMinDimension(_27,_29,_20.y,{min:0,max:this.imgH}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
273 |
_1d={x1:_26.a1,y1:_27.a1,x2:_26.a2,y2:_27.a2}; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
274 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
275 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
276 |
this.areaCoords=_1d; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
277 |
},applyMinDimension:function(_2a,_2b,_2c,_2d){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
278 |
if((_2a.a2-_2a.a1)<_2b){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
279 |
if(_2c==1){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
280 |
_2a.a2=_2a.a1+_2b; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
281 |
}else{ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
282 |
_2a.a1=_2a.a2-_2b; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
283 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
284 |
if(_2a.a1<_2d.min){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
285 |
_2a.a1=_2d.min; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
286 |
_2a.a2=_2b; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
287 |
}else{ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
288 |
if(_2a.a2>_2d.max){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
289 |
_2a.a1=_2d.max-_2b; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
290 |
_2a.a2=_2d.max; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
291 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
292 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
293 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
294 |
},applyRatio:function(_2e,_2f,_30,_31){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
295 |
var _32; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
296 |
if(_31=="N"||_31=="S"){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
297 |
_32=this.applyRatioToAxis({a1:_2e.y1,b1:_2e.x1,a2:_2e.y2,b2:_2e.x2},{a:_2f.y,b:_2f.x},{a:_30.y,b:_30.x},{min:0,max:this.imgW}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
298 |
_2e.x1=_32.b1; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
299 |
_2e.y1=_32.a1; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
300 |
_2e.x2=_32.b2; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
301 |
_2e.y2=_32.a2; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
302 |
}else{ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
303 |
_32=this.applyRatioToAxis({a1:_2e.x1,b1:_2e.y1,a2:_2e.x2,b2:_2e.y2},{a:_2f.x,b:_2f.y},{a:_30.x,b:_30.y},{min:0,max:this.imgH}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
304 |
_2e.x1=_32.a1; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
305 |
_2e.y1=_32.b1; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
306 |
_2e.x2=_32.a2; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
307 |
_2e.y2=_32.b2; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
308 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
309 |
},applyRatioToAxis:function(_33,_34,_35,_36){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
310 |
var _37=Object.extend(_33,{}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
311 |
var _38=_37.a2-_37.a1; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
312 |
var _3a=Math.floor(_38*_34.b/_34.a); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
313 |
var _3b; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
314 |
var _3c; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
315 |
var _3d=null; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
316 |
if(_35.b==1){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
317 |
_3b=_37.b1+_3a; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
318 |
if(_3b>_36.max){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
319 |
_3b=_36.max; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
320 |
_3d=_3b-_37.b1; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
321 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
322 |
_37.b2=_3b; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
323 |
}else{ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
324 |
_3b=_37.b2-_3a; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
325 |
if(_3b<_36.min){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
326 |
_3b=_36.min; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
327 |
_3d=_3b+_37.b2; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
328 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
329 |
_37.b1=_3b; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
330 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
331 |
if(_3d!=null){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
332 |
_3c=Math.floor(_3d*_34.a/_34.b); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
333 |
if(_35.a==1){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
334 |
_37.a2=_37.a1+_3c; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
335 |
}else{ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
336 |
_37.a1=_37.a1=_37.a2-_3c; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
337 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
338 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
339 |
return _37; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
340 |
},drawArea:function(){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
341 |
if(!this.isIE){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
342 |
Element.show($(this.overlay)); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
343 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
344 |
var _3e=this.calcW(); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
345 |
var _3f=this.calcH(); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
346 |
var _40=this.areaCoords.x2; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
347 |
var _41=this.areaCoords.y2; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
348 |
var _42=this.selArea.style; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
349 |
_42.left=this.areaCoords.x1+"px"; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
350 |
_42.top=this.areaCoords.y1+"px"; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
351 |
_42.width=_3e+"px"; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
352 |
_42.height=_3f+"px"; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
353 |
var _43=Math.ceil((_3e-6)/2)+"px"; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
354 |
var _44=Math.ceil((_3f-6)/2)+"px"; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
355 |
this.handleN.style.left=_43; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
356 |
this.handleE.style.top=_44; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
357 |
this.handleS.style.left=_43; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
358 |
this.handleW.style.top=_44; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
359 |
if(this.isIE){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
360 |
this.north.style.height=this.areaCoords.y1+"px"; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
361 |
var _45=this.east.style; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
362 |
_45.top=this.areaCoords.y1+"px"; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
363 |
_45.height=_3f+"px"; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
364 |
_45.left=_40+"px"; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
365 |
_45.width=(this.img.width-_40)+"px"; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
366 |
var _46=this.south.style; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
367 |
_46.top=_41+"px"; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
368 |
_46.height=(this.img.height-_41)+"px"; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
369 |
var _47=this.west.style; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
370 |
_47.top=this.areaCoords.y1+"px"; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
371 |
_47.height=_3f+"px"; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
372 |
_47.width=this.areaCoords.x1+"px"; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
373 |
}else{ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
374 |
_42.backgroundPosition="-"+this.areaCoords.x1+"px "+"-"+this.areaCoords.y1+"px"; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
375 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
376 |
this.subDrawArea(); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
377 |
this.forceReRender(); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
378 |
},forceReRender:function(){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
379 |
if(this.isIE||this.isWebKit){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
380 |
var n=document.createTextNode(" "); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
381 |
var d,el,fixEL,i; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
382 |
if(this.isIE){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
383 |
fixEl=this.selArea; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
384 |
}else{ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
385 |
if(this.isWebKit){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
386 |
fixEl=document.getElementsByClassName("imgCrop_marqueeSouth",this.imgWrap)[0]; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
387 |
d=Builder.node("div",""); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
388 |
d.style.visibility="hidden"; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
389 |
var _4a=["SE","S","SW"]; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
390 |
for(i=0;i<_4a.length;i++){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
391 |
el=document.getElementsByClassName("imgCrop_handle"+_4a[i],this.selArea)[0]; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
392 |
if(el.childNodes.length){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
393 |
el.removeChild(el.childNodes[0]); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
394 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
395 |
el.appendChild(d); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
396 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
397 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
398 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
399 |
fixEl.appendChild(n); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
400 |
fixEl.removeChild(n); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
401 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
402 |
},startResize:function(e){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
403 |
this.startCoords=this.cloneCoords(this.areaCoords); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
404 |
this.resizing=true; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
405 |
this.resizeHandle=Element.classNames(Event.element(e)).toString().replace(/([^N|NE|E|SE|S|SW|W|NW])+/,""); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
406 |
Event.stop(e); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
407 |
},startDrag:function(e){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
408 |
Element.show(this.selArea); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
409 |
this.clickCoords=this.getCurPos(e); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
410 |
this.setAreaCoords({x1:this.clickCoords.x,y1:this.clickCoords.y,x2:this.clickCoords.x,y2:this.clickCoords.y}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
411 |
this.dragging=true; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
412 |
this.onDrag(e); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
413 |
Event.stop(e); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
414 |
},getCurPos:function(e){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
415 |
return curPos={x:Event.pointerX(e)-this.wrapOffsets.left,y:Event.pointerY(e)-this.wrapOffsets.top}; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
416 |
},onDrag:function(e){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
417 |
var _4f=null; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
418 |
if(this.dragging||this.resizing){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
419 |
var _50=this.getCurPos(e); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
420 |
var _51=this.cloneCoords(this.areaCoords); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
421 |
var _52={x:1,y:1}; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
422 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
423 |
if(this.dragging){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
424 |
if(_50.x<this.clickCoords.x){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
425 |
_52.x=-1; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
426 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
427 |
if(_50.y<this.clickCoords.y){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
428 |
_52.y=-1; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
429 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
430 |
this.transformCoords(_50.x,this.clickCoords.x,_51,"x"); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
431 |
this.transformCoords(_50.y,this.clickCoords.y,_51,"y"); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
432 |
}else{ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
433 |
if(this.resizing){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
434 |
_4f=this.resizeHandle; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
435 |
if(_4f.match(/E/)){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
436 |
this.transformCoords(_50.x,this.startCoords.x1,_51,"x"); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
437 |
if(_50.x<this.startCoords.x1){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
438 |
_52.x=-1; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
439 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
440 |
}else{ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
441 |
if(_4f.match(/W/)){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
442 |
this.transformCoords(_50.x,this.startCoords.x2,_51,"x"); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
443 |
if(_50.x<this.startCoords.x2){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
444 |
_52.x=-1; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
445 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
446 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
447 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
448 |
if(_4f.match(/N/)){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
449 |
this.transformCoords(_50.y,this.startCoords.y2,_51,"y"); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
450 |
if(_50.y<this.startCoords.y2){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
451 |
_52.y=-1; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
452 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
453 |
}else{ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
454 |
if(_4f.match(/S/)){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
455 |
this.transformCoords(_50.y,this.startCoords.y1,_51,"y"); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
456 |
if(_50.y<this.startCoords.y1){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
457 |
_52.y=-1; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
458 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
459 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
460 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
461 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
462 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
463 |
if(this.dragging||this.resizing){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
464 |
this.setAreaCoords(_51,false,e.shiftKey,_52,_4f); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
465 |
this.drawArea(); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
466 |
Event.stop(e); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
467 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
468 |
},transformCoords:function(_53,_54,_55,_56){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
469 |
var _57=new Array(); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
470 |
if(_53<_54){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
471 |
_57[0]=_53; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
472 |
_57[1]=_54; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
473 |
}else{ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
474 |
_57[0]=_54; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
475 |
_57[1]=_53; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
476 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
477 |
if(_56=="x"){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
478 |
_55.x1=_57[0]; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
479 |
_55.x2=_57[1]; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
480 |
}else{ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
481 |
_55.y1=_57[0]; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
482 |
_55.y2=_57[1]; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
483 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
484 |
},endCrop:function(){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
485 |
this.dragging=false; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
486 |
this.resizing=false; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
487 |
this.options.onEndCrop(this.areaCoords,{width:this.calcW(),height:this.calcH()}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
488 |
},subInitialize:function(){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
489 |
},subDrawArea:function(){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
490 |
}}; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
491 |
Cropper.ImgWithPreview=Class.create(); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
492 |
Object.extend(Object.extend(Cropper.ImgWithPreview.prototype,Cropper.Img.prototype),{subInitialize:function(){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
493 |
this.hasPreviewImg=false; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
494 |
if(typeof (this.options.previewWrap)!="undefined"&&this.options.minWidth>0&&this.options.minHeight>0){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
495 |
this.previewWrap=$(this.options.previewWrap); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
496 |
this.previewImg=this.img.cloneNode(false); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
497 |
this.options.displayOnInit=true; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
498 |
this.hasPreviewImg=true; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
499 |
Element.addClassName(this.previewWrap,"imgCrop_previewWrap"); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
500 |
Element.setStyle(this.previewWrap,{width:this.options.minWidth+"px",height:this.options.minHeight+"px"}); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
501 |
this.previewWrap.appendChild(this.previewImg); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
502 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
503 |
},subDrawArea:function(){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
504 |
if(this.hasPreviewImg){ |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
505 |
var _58=this.calcW(); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
506 |
var _59=this.calcH(); |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
507 |
var _5a={x:this.imgW/_58,y:this.imgH/_59}; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
508 |
var _5b={x:_58/this.options.minWidth,y:_59/this.options.minHeight}; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
509 |
var _5c={w:Math.ceil(this.options.minWidth*_5a.x)+"px",h:Math.ceil(this.options.minHeight*_5a.y)+"px",x:"-"+Math.ceil(this.areaCoords.x1/_5b.x)+"px",y:"-"+Math.ceil(this.areaCoords.y1/_5b.y)+"px"}; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
510 |
var _5d=this.previewImg.style; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
511 |
_5d.width=_5c.w; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
512 |
_5d.height=_5c.h; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
513 |
_5d.left=_5c.x; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
514 |
_5d.top=_5c.y; |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
515 |
} |
hurons@caf4f556-3d62-0410-8435-a86758001935
parents:
diff
changeset
|
516 |
}}); |