annotate client/digitallibrary/modules/imago.js @ 446:323e7d7dc378

fixed problem with next/prev page button in oldskin (basically my bad for not properly adapting the new dllib.js)
author robcast
date Mon, 16 Jan 2006 20:36:29 +0100
parents 69b616b50431
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
106
19edc2593b88 Initial revision
engler
parents:
diff changeset
1 /*
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
2
106
19edc2593b88 Initial revision
engler
parents:
diff changeset
3 Copyright (C) 2003 WTWG, Uni Bern
19edc2593b88 Initial revision
engler
parents:
diff changeset
4
19edc2593b88 Initial revision
engler
parents:
diff changeset
5 This program is free software; you can redistribute it and/or
19edc2593b88 Initial revision
engler
parents:
diff changeset
6 modify it under the terms of the GNU General Public License
19edc2593b88 Initial revision
engler
parents:
diff changeset
7 as published by the Free Software Foundation; either version 2
19edc2593b88 Initial revision
engler
parents:
diff changeset
8 of the License, or (at your option) any later version.
19edc2593b88 Initial revision
engler
parents:
diff changeset
9
19edc2593b88 Initial revision
engler
parents:
diff changeset
10 This program is distributed in the hope that it will be useful,
19edc2593b88 Initial revision
engler
parents:
diff changeset
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
106
19edc2593b88 Initial revision
engler
parents:
diff changeset
13 GNU General Public License for more details.
19edc2593b88 Initial revision
engler
parents:
diff changeset
14
19edc2593b88 Initial revision
engler
parents:
diff changeset
15 You should have received a copy of the GNU General Public License
19edc2593b88 Initial revision
engler
parents:
diff changeset
16 along with this program; if not, write to the Free Software
19edc2593b88 Initial revision
engler
parents:
diff changeset
17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
19edc2593b88 Initial revision
engler
parents:
diff changeset
18
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
19 Author: Christian Luginbuehl, 22.05.2003 , Version Alcatraz 0.4
106
19edc2593b88 Initial revision
engler
parents:
diff changeset
20
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
21 */
106
19edc2593b88 Initial revision
engler
parents:
diff changeset
22
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
23 /*************************************************************************
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
24 * imago.js : digilib-module *
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
25 * *
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
26 * desc: adds different image manipulation functions. *
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
27 * *
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
28 *************************************************************************/
106
19edc2593b88 Initial revision
engler
parents:
diff changeset
29
19edc2593b88 Initial revision
engler
parents:
diff changeset
30
19edc2593b88 Initial revision
engler
parents:
diff changeset
31 /**
19edc2593b88 Initial revision
engler
parents:
diff changeset
32 * brightness (value of brightness between -255 - +255)
19edc2593b88 Initial revision
engler
parents:
diff changeset
33 */
19edc2593b88 Initial revision
engler
parents:
diff changeset
34 function brightness(value) {
19edc2593b88 Initial revision
engler
parents:
diff changeset
35
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
36 if ( (value >= -255) && (value <= 255) ) {
106
19edc2593b88 Initial revision
engler
parents:
diff changeset
37
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
38 dlParams.brgt.value = value;
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
39 display(3);
106
19edc2593b88 Initial revision
engler
parents:
diff changeset
40
19edc2593b88 Initial revision
engler
parents:
diff changeset
41 }
19edc2593b88 Initial revision
engler
parents:
diff changeset
42
19edc2593b88 Initial revision
engler
parents:
diff changeset
43 }
19edc2593b88 Initial revision
engler
parents:
diff changeset
44
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
45
106
19edc2593b88 Initial revision
engler
parents:
diff changeset
46 /**
19edc2593b88 Initial revision
engler
parents:
diff changeset
47 * contrast (value of contrast - range?)
19edc2593b88 Initial revision
engler
parents:
diff changeset
48 */
19edc2593b88 Initial revision
engler
parents:
diff changeset
49 function contrast(value) {
19edc2593b88 Initial revision
engler
parents:
diff changeset
50
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
51 dlParams.cont.value = parseFloat(value);
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
52 display(3);
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
53
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
54 }
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
55
106
19edc2593b88 Initial revision
engler
parents:
diff changeset
56
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
57 /**
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
58 * brightness/contrast in one call
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
59 */
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
60 function brightnessContrast(brightness, contrast) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
61
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
62 dlParams.cont.value = parseFloat(contrast);
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
63
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
64 if ( (brightness >= -255) && (brightness <= 255) ) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
65
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
66 dlParams.brgt.value = parseFloat(brightness);
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
67 display(3);
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
68
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
69 }
106
19edc2593b88 Initial revision
engler
parents:
diff changeset
70
19edc2593b88 Initial revision
engler
parents:
diff changeset
71 }
19edc2593b88 Initial revision
engler
parents:
diff changeset
72
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
73
106
19edc2593b88 Initial revision
engler
parents:
diff changeset
74 /**
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
75 * mirror (horizontal or vertical)
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
76 */
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
77 function mirror(direction) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
78
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
79 if ( direction == 'v' ) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
80 if ( dlParams.mo.value.indexOf('vmir') > -1 ) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
81 removeMoFlag('vmir');
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
82 } else {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
83 addMoFlag('vmir');
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
84 }
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
85 }
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
86
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
87 if ( direction == 'h' ) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
88 if ( dlParams.mo.value.indexOf('hmir') > -1 ) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
89 removeMoFlag('hmir');
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
90 } else {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
91 addMoFlag('hmir');
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
92 }
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
93 }
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
94
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
95 display(3);
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
96
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
97 }
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
98
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
99
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
100 /**
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
101 * rotation
106
19edc2593b88 Initial revision
engler
parents:
diff changeset
102 */
19edc2593b88 Initial revision
engler
parents:
diff changeset
103 function rotation(value) {
19edc2593b88 Initial revision
engler
parents:
diff changeset
104
19edc2593b88 Initial revision
engler
parents:
diff changeset
105 value = parseFloat(value) % 360;
19edc2593b88 Initial revision
engler
parents:
diff changeset
106
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
107 if ( value < 0 ) {
106
19edc2593b88 Initial revision
engler
parents:
diff changeset
108 value += 360;
19edc2593b88 Initial revision
engler
parents:
diff changeset
109 }
19edc2593b88 Initial revision
engler
parents:
diff changeset
110
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
111 dlParams.rot.value = value;
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
112 display(3);
106
19edc2593b88 Initial revision
engler
parents:
diff changeset
113
19edc2593b88 Initial revision
engler
parents:
diff changeset
114 }
19edc2593b88 Initial revision
engler
parents:
diff changeset
115
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
116
106
19edc2593b88 Initial revision
engler
parents:
diff changeset
117 /**
19edc2593b88 Initial revision
engler
parents:
diff changeset
118 * rgb add (r/g/b, each value from -255 to +255)
19edc2593b88 Initial revision
engler
parents:
diff changeset
119 */
19edc2593b88 Initial revision
engler
parents:
diff changeset
120 function rgba(value) {
19edc2593b88 Initial revision
engler
parents:
diff changeset
121
19edc2593b88 Initial revision
engler
parents:
diff changeset
122 values = value.split("/");
19edc2593b88 Initial revision
engler
parents:
diff changeset
123
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
124 if ( values.length != 3 ) {
106
19edc2593b88 Initial revision
engler
parents:
diff changeset
125 alert ("Illegal parameter format (r/g/b)");
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
126 } else if ( (values[0] < -255) || (values[0] > 255) ) {
106
19edc2593b88 Initial revision
engler
parents:
diff changeset
127 alert ("Illegal red additioner (-255 to 255)");
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
128 } else if ( (values[1] < -255) || (values[1] > 255) ) {
106
19edc2593b88 Initial revision
engler
parents:
diff changeset
129 alert ("Illegal green additioner (-255 to 255)");
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
130 } else if ( (values[2] < -255) || (values[2] > 255) ) {
106
19edc2593b88 Initial revision
engler
parents:
diff changeset
131 alert ("Illegal blue additioner (-255 to 255)");
19edc2593b88 Initial revision
engler
parents:
diff changeset
132 } else {
19edc2593b88 Initial revision
engler
parents:
diff changeset
133
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
134 dlParams.rgba.value = value;
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
135 display(3);
106
19edc2593b88 Initial revision
engler
parents:
diff changeset
136
19edc2593b88 Initial revision
engler
parents:
diff changeset
137 }
19edc2593b88 Initial revision
engler
parents:
diff changeset
138 }
19edc2593b88 Initial revision
engler
parents:
diff changeset
139
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
140
106
19edc2593b88 Initial revision
engler
parents:
diff changeset
141 /**
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
142 * rgb mutiply (r/g/b, range?)
106
19edc2593b88 Initial revision
engler
parents:
diff changeset
143 */
19edc2593b88 Initial revision
engler
parents:
diff changeset
144 function rgbm(value) {
19edc2593b88 Initial revision
engler
parents:
diff changeset
145
19edc2593b88 Initial revision
engler
parents:
diff changeset
146 values = value.split("/");
19edc2593b88 Initial revision
engler
parents:
diff changeset
147
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
148 if ( values.length != 3 ) {
106
19edc2593b88 Initial revision
engler
parents:
diff changeset
149 alert ("Illegal parameter format (r/g/b)");
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
150 } else if ( !isFinite(values[0]) ) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
151 alert ("Illegal red exponent");
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
152 } else if ( !isFinite(values[1]) ) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
153 alert ("Illegal green exponent");
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
154 } else if ( !isFinite(values[2]) ) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
155 alert ("Illegal blue exponent");
106
19edc2593b88 Initial revision
engler
parents:
diff changeset
156 } else {
19edc2593b88 Initial revision
engler
parents:
diff changeset
157
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
158 dlParams.rgbm.value = value;
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
159 display(3);
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
160
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
161 }
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
162 }
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
163
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
164
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
165 /**
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
166 * rgba/rgbm in one call
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
167 */
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
168 function colors(rgba, rgbm) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
169
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
170 add = rgba.split("/");
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
171 mult = rgba.split("/");
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
172
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
173 if ( (add.length) == 3 && (mult.length == 3) &&
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
174 (add[0] >= -255) && (add[0] <= 255) &&
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
175 (add[1] >= -255) && (add[1] <= 255) &&
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
176 (add[2] >= -255) && (add[2] <= 255) &&
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
177 (isFinite(mult[0])) &&
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
178 (isFinite(mult[1])) &&
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
179 (isFinite(mult[2])) ) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
180
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
181 dlParams.rgba.value = rgba;
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
182 dlParams.rgbm.value = rgbm;
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
183
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
184 display(3);
106
19edc2593b88 Initial revision
engler
parents:
diff changeset
185
19edc2593b88 Initial revision
engler
parents:
diff changeset
186 }
19edc2593b88 Initial revision
engler
parents:
diff changeset
187 }
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
188
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
189
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
190 /**
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
191 * pixel by pixel view of images
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
192 */
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
193 function pixelByPixel() {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
194
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
195 removeMoFlag('osize');
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
196
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
197 addMoFlag('clip');
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
198
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
199 // change scale to 1
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
200 dlParams.ws.value = 1.0;
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
201
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
202 display(3);
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
203
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
204 }
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
205
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
206
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
207 /**
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
208 * original size view of images
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
209 */
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
210 function originalSize(dpi_v, dpi_h) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
211
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
212 removeMoFlag('clip');
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
213
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
214 addMoFlag('osize');
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
215
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
216 // change scale to 1
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
217 dlParams.ws.value = 1.0;
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
218
228
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
219 dlParams.ddpix.value = cropFloat(dpi_h);
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
220 dlParams.ddpiy.value = cropFloat(dpi_v);
232
69b616b50431 removed originalsize bug
luginbue
parents: 228
diff changeset
221
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
222 display(3);
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
223
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
224 }
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
225
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
226
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
227 /**
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
228 * scale (overriding old one)
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
229 * as pixel by pixel is some kind of scale, it does turn scale factor to 1
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
230 * if chosen. also if a scale factor is chosen,
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
231 * then pixel by pixel is turned off.
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
232 */
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
233 function scale(factor) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
234
228
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
235 dlParams.ws.value = factor;
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
236
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
237 removeMoFlag('clip');
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
238 removeMoFlag('osize');
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
239
228
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
240 display(3);
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
241
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
242 }
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
243
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
244
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
245 /**
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
246 * placeMarks (overriding old one)
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
247 * take care of rotation and mirroring when placing marks
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
248 */
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
249 function placeMarks() {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
250
228
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
251 if ( dlParams.mk.value != '' ) {
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
252
228
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
253 var mark = dlParams.mk.value.split(";");
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
254 var mark_count = mark.length;
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
255
228
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
256 // maximum of marks is 8
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
257 // we do not report this error because this is already done in function 'mark'
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
258 if ( mark_count > 8 ) mark_count = 8;
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
259
228
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
260 var picWidth = (document.all) ? parseInt(document.all.lay1.offsetWidth) : (typeof(document.getElementById) == "function") ? parseInt(document.pic.offsetWidth) : parseInt(document.lay1.clip.width);
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
261 var picHeight = (document.all) ? parseInt(document.all.lay1.offsetHeight) : (typeof(document.getElementById) == "function") ? parseInt(document.pic.offsetHeight) : parseInt(document.lay1.clip.height);
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
262
228
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
263 // catch the cases where the picture had not been loaded already and
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
264 // make a timeout so that the coordinates are calculated with the real dimensions
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
265 if ( (picWidth > 30) || (document.pic.complete) ) {
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
266
228
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
267 var xOffset = (document.all) ? parseInt(document.all.lay1.style.left) : (typeof(document.getElementById) == "function") ? parseInt(document.getElementById('lay1').style.left) : document.lay1.left;
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
268 var yOffset = (document.all) ? parseInt(document.all.lay1.style.top) : (typeof(document.getElementById) == "function") ? parseInt(document.getElementById('lay1').style.top) : document.lay1.top;
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
269
228
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
270 for (var i = 0; i < mark_count; i++) {
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
271 mark[i] = mark[i].split("/");
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
272
228
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
273 if ( (parseFloat(mark[i][0]) >= parseFloat(dlParams.wx.value)) &&
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
274 (parseFloat(mark[i][1]) >= parseFloat(dlParams.wy.value)) &&
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
275 (parseFloat(mark[i][0]) <= (parseFloat(dlParams.wx.value) + parseFloat(dlParams.ww.value))) &&
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
276 (parseFloat(mark[i][1]) <= (parseFloat(dlParams.wy.value) + parseFloat(dlParams.wh.value))) ) {
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
277
228
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
278 mark[i][0] = (mark[i][0] - dlParams.wx.value)/dlParams.ww.value;
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
279 mark[i][1] = (mark[i][1] - dlParams.wy.value)/dlParams.wh.value;
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
280
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
281 // mirror
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
282 if ( dlParams.mo.value.indexOf('hmir') > -1 ) {
228
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
283 mark[i][0] = 1 - mark[i][0];
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
284 }
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
285 if ( dlParams.mo.value.indexOf('vmir') > -1 ) {
228
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
286 mark[i][1] = 1 - mark[i][1];
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
287 }
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
288
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
289 // just the beginning - not working currently
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
290 var ang_rad = dlParams.rot.value*2*3.1415926/360;
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
291
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
292 var ws = Math.sin(ang_rad)/(Math.cos(ang_rad)*dlParams.ww.value/dlParams.wh.value+Math.sin(ang_rad)) * picWidth;
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
293 var wc = (Math.cos(ang_rad)*dlParams.ww.value/dlParams.wh.value)/(Math.cos(ang_rad)*dlParams.ww.value/dlParams.wh.value+Math.sin(ang_rad)) * picWidth;
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
294
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
295 var hs = (Math.sin(ang_rad)*dlParams.ww.value/dlParams.wh.value)/(Math.sin(ang_rad)*dlParams.ww.value/dlParams.wh.value+Math.cos(ang_rad)) * picHeight;
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
296 var hc = Math.cos(ang_rad)/(Math.sin(ang_rad)*dlParams.ww.value/dlParams.wh.value+Math.cos(ang_rad)) * picHeight;
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
297
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
298 var origPicWidth = Math.sqrt(Math.pow(wc, 2) + Math.pow(hs, 2));
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
299 var origPicHeight = Math.sqrt(Math.pow(ws, 2) + Math.pow(hc, 2));
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
300 // end of the beginning ;-)
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
301
228
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
302 mark[i][0] = parseInt(xOffset + picWidth * mark[i][0]);
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
303 mark[i][1] = parseInt(yOffset + picHeight * mark[i][1]);
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
304
228
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
305 if ( (document.all) || (typeof(document.getElementById) == "function") ) {
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
306 // suboptimal to place -5 pixels and not half size of mark-image
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
307 // should be changed in the future
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
308 document.getElementById("dot" + i).style.left = mark[i][0]-5;
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
309 document.getElementById("dot" + i).style.top = mark[i][1]-5;
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
310 document.getElementById("dot" + i).style.visibility = "visible";
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
311 } else {
228
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
312 document.layers[i+1].moveTo(mark[i][0]-5, mark[i][1]-5);
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
313 document.layers[i+1].visibility = "show";
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
314 }
228
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
315 }
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
316 }
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
317
228
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
318 } else {
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
319 setTimeout("placeMarks()", 100);
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
320 }
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
321 }
135
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
322 }
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
323
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
324
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
325 /****
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
326 * helper functions
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
327 ****/
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
328
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
329 /**
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
330 * Point (overriding old one)
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
331 * constructor holding different values of a point
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
332 * depending also on mirror or rotation
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
333 */
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
334 function Point(evt) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
335
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
336 if ( document.all ) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
337
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
338 this.pageX = parseInt(document.body.scrollLeft+event.clientX);
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
339 this.pageY = parseInt(document.body.scrollLeft+event.clientY);
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
340
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
341 this.x = this.pageX-parseInt(document.all.lay1.style.left);
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
342 this.y = this.pageY-parseInt(document.all.lay1.style.top);
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
343
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
344 // mirror
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
345 if ( dlParams.mo.value.indexOf('hmir') > -1 ) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
346 this.relX = cropFloat(parseFloat(parseFloat(dlParams.wx.value)+parseFloat(dlParams.ww.value))-(dlParams.ww.value*this.x/document.all.lay1.offsetWidth));
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
347 } else {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
348 this.relX = cropFloat(parseFloat(dlParams.wx.value)+(dlParams.ww.value*this.x/document.all.lay1.offsetWidth));
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
349 }
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
350 if ( dlParams.mo.value.indexOf('vmir') > -1 ) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
351 this.relY = cropFloat(parseFloat(parseFloat(dlParams.wy.value)+parseFloat(dlParams.wh.value))-(dlParams.wh.value*this.y/document.all.lay1.offsetHeight));
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
352 } else {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
353 this.relY = cropFloat(parseFloat(dlParams.wy.value)+(dlParams.wh.value*this.y/document.all.lay1.offsetHeight));
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
354 }
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
355
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
356 } else {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
357
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
358 this.pageX = parseInt(evt.pageX);
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
359 this.pageY = parseInt(evt.pageY);
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
360
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
361 if ( typeof(document.getElementById) == "function" ) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
362
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
363 this.x = this.pageX-parseInt(document.getElementById("lay1").style.left);
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
364 this.y = this.pageY-parseInt(document.getElementById("lay1").style.top);
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
365
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
366 // mirror
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
367 if ( dlParams.mo.value.indexOf('hmir') > -1 ) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
368 this.relX = cropFloat(parseFloat(parseFloat(dlParams.wx.value)+parseFloat(dlParams.ww.value))-(dlParams.ww.value*this.x/document.pic.offsetWidth));
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
369 } else {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
370 this.relX = cropFloat(parseFloat(dlParams.wx.value)+(dlParams.ww.value*this.x/document.pic.offsetWidth));
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
371 }
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
372 if ( dlParams.mo.value.indexOf('vmir') > -1 ) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
373 this.relY = cropFloat(parseFloat(parseFloat(dlParams.wy.value)+parseFloat(dlParams.wh.value))-(dlParams.wh.value*this.y/document.pic.offsetHeight));
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
374 } else {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
375 this.relY = cropFloat(parseFloat(dlParams.wy.value)+(dlParams.wh.value*this.y/document.pic.offsetHeight));
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
376 }
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
377
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
378 } else {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
379
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
380 this.x = this.pageX-document.lay1.left;
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
381 this.y = this.pageY-document.lay1.top;
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
382
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
383 // mirror
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
384 if ( dlParams.mo.value.indexOf('hmir') > -1 ) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
385 this.relX = cropFloat(parseFloat(parseFloat(dlParams.wx.value)+parseFloat(dlParams.ww.value))-(dlParams.ww.value*this.x/document.lay1.clip.width));
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
386 } else {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
387 this.relX = cropFloat(parseFloat(dlParams.wx.value)+(dlParams.ww.value*this.x/document.lay1.clip.width));
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
388 }
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
389 if ( dlParams.mo.value.indexOf('vmir') > -1 ) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
390 this.relY = cropFloat(parseFloat(parseFloat(dlParams.wy.value)+parseFloat(dlParams.wh.value))-(dlParams.wh.value*this.y/document.lay1.clip.height));
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
391 } else {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
392 this.relY = cropFloat(parseFloat(dlParams.wy.value)+(dlParams.wh.value*this.y/document.lay1.clip.height));
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
393 }
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
394
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
395 }
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
396
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
397 }
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
398
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
399 return this;
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
400
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
401 }
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
402
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
403
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
404 /**
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
405 * removeMoFlag from mo parameter
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
406 */
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
407 function removeMoFlag(name) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
408
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
409 if ( dlParams.mo.value != '' ) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
410
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
411 var idx_comma_after = dlParams.mo.value.indexOf(name + ',');
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
412 var idx_comma_before = dlParams.mo.value.indexOf(',' + name);
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
413 var idx_nocomma = dlParams.mo.value.indexOf(name);
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
414
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
415 if ( idx_comma_after > -1 ) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
416 dlParams.mo.value = dlParams.mo.value.slice(0, idx_comma_after) + dlParams.mo.value.slice(idx_comma_after+name.length+1);
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
417 }else if ( idx_comma_before > -1 ) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
418 dlParams.mo.value = dlParams.mo.value.slice(0, idx_comma_before) + dlParams.mo.value.slice(idx_comma_before+name.length+1);
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
419 } else if ( idx_nocomma > -1 ) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
420 dlParams.mo.value = dlParams.mo.value.slice(0, idx_nocomma) + dlParams.mo.value.slice(idx_nocomma+name.length);
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
421 }
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
422 }
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
423
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
424 }
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
425
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
426
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
427 /**
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
428 * addMoFlag from mo parameter
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
429 */
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
430 function addMoFlag(name) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
431
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
432 if ( dlParams.mo.value.indexOf(name) == -1 ) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
433
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
434 if ( dlParams.mo.value.length > 0 ) {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
435 dlParams.mo.value += ',' + name;
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
436 } else {
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
437 dlParams.mo.value = name;
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
438 }
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
439 }
68e88c3bc575 unified scripts, nice xul sidebar, bugfixes
luginbue
parents: 106
diff changeset
440
228
fddb9a2577fc new versions on modules and contexto tool to show text
luginbue
parents: 135
diff changeset
441 }