annotate client/digitallibrary/navigation_n4.js @ 31:84a481a388bb

first update of new client-version
author luginbue
date Thu, 21 Feb 2002 02:27:06 +0100
parents d407cb901df4
children 930413351738
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
1 // this global variable has to be initialised before the frist use of the functions below
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
2 // to fill in the attributes you can use the function init provided below
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
3 // - array with all attributes
d407cb901df4 Initial revision
robcast
parents:
diff changeset
4 var att = new Array();
d407cb901df4 Initial revision
robcast
parents:
diff changeset
5
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
6 // fill in the values of the "att"-array
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
7 function init(fn, pn, ws, mo, mk, wx, wy, ww, wh) {
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
8
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
9 // debug window to check the parameters passed
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
10 //alert ("DEBUG message (parameters in init):\n\npu = " + pu + "\npn = " + pn + "\nws = " + ws + "\nmo = " + mo + "\nmk = " + mk + "\nwx = " + wx + "\nwy = " + wy + "\nww = " + ww + "\nwh = " + wh);
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
11
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
12 // attaching the values to the att-array
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
13 att[0] = fn;
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
14 att[1] = parseInt(pn);
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
15 att[2] = parseFloat(ws);
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
16 att[3] = mo;
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
17 att[4] = mk;
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
18 att[5] = parseFloat(wx);
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
19 att[6] = parseFloat(wy);
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
20 att[7] = parseFloat(ww);
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
21 att[8] = parseFloat(wh);
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
22
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
23 // compatablility issue
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
24 if (att[3].indexOf("f") > -1) {
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
25 att[3] = "fit";
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
26 }
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
27
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
28 // converts the old mark format (0-1000) to new format(0.0 - 1.0)
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
29 // could even be useless now
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
30 if (att[4] != "0/0") {
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
31 var tmp = att[4].split(";");
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
32
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
33 att[4] = "";
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
34
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
35 for (i = 0; i < tmp.length; i++) {
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
36 tmp[i] = tmp[i].split("/");
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
37
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
38 if (tmp[i][0] > 1 && tmp[i][1] > 1) {
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
39 tmp[i][0] /= 1000;
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
40 tmp[i][1] /= 1000;
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
41 }
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
42
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
43 att[4] += tmp[i][0] + "/" + tmp[i][1] + ";";
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
44 }
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
45 att[4] = att[4].slice(0, -1);
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
46 }
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
47
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
48 // initialisation stuff
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
49 // ====================
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
50
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
51 setMarks();
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
52
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
53 window.captureEvents(Event.KEYDOWN);
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
54 window.onkeydown = parseKeypress;
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
55
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
56 focus();
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
57
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
58 // give a name to the window containing digilib - this way one can test if there is already a
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
59 // digilib-window open and replace the contents of it (ex. digicat)
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
60 top.window.name = "digilib";
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
61 }
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
62
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
63
d407cb901df4 Initial revision
robcast
parents:
diff changeset
64 // function that launches the ScaleServlet
d407cb901df4 Initial revision
robcast
parents:
diff changeset
65 // the different detailGrades:
d407cb901df4 Initial revision
robcast
parents:
diff changeset
66 // 0 -> back, next, page
d407cb901df4 Initial revision
robcast
parents:
diff changeset
67 // 1 -> zoomout
d407cb901df4 Initial revision
robcast
parents:
diff changeset
68 // 2 -> zoomarea, zoompoint, moveto, scaledef
d407cb901df4 Initial revision
robcast
parents:
diff changeset
69
d407cb901df4 Initial revision
robcast
parents:
diff changeset
70 function loadPicture(detailGrade, keepArea) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
71
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
72 var newURL = "dlImage.jsp?"
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
73 newURL += "fn=" + att[0] + "&pn=" + att[1] + "&ws=" + att[2] + "&mo=" + att[3];
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
74
d407cb901df4 Initial revision
robcast
parents:
diff changeset
75 if (detailGrade == 0) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
76 att[4] = "0/0";
d407cb901df4 Initial revision
robcast
parents:
diff changeset
77 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
78
d407cb901df4 Initial revision
robcast
parents:
diff changeset
79 if ((detailGrade == 1) || (detailGrade == 0 && !keepArea)) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
80 att[5] = 0;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
81 att[6] = 0;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
82 att[7] = 1;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
83 att[8] = 1;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
84 }
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
85
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
86 newURL += "&mk=" + att[4] + "&wx=" + att[5] + "&wy=" + att[6] + "&ww=" + att[7] + "&wh=" + att[8];
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
87 newURL += "&dw=" + (innerWidth-30) + "&dh=" + (innerHeight-30);
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
88
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
89 // debug window - checking the parameters passed to the next image
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
90 //alert ("DEBUG MESSAGE (complete URL in loadPicture):\n\n" + newURL);
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
91
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
92 location.href = newURL;
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
93 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
94
d407cb901df4 Initial revision
robcast
parents:
diff changeset
95
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
96 function backPage(keepArea) {
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
97
d407cb901df4 Initial revision
robcast
parents:
diff changeset
98 att[1] = parseInt(att[1]) - 1;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
99
d407cb901df4 Initial revision
robcast
parents:
diff changeset
100 if (att[1] > 0) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
101 loadPicture(0, keepArea);
d407cb901df4 Initial revision
robcast
parents:
diff changeset
102 } else {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
103 att[1] = parseInt(att[1]) + 1;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
104 alert("You are already on the first page!");
d407cb901df4 Initial revision
robcast
parents:
diff changeset
105 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
106 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
107
d407cb901df4 Initial revision
robcast
parents:
diff changeset
108
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
109 function nextPage(keepArea) {
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
110
d407cb901df4 Initial revision
robcast
parents:
diff changeset
111 att[1] = parseInt(att[1]) + 1;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
112
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
113 loadPicture(0, keepArea);
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
114 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
115
d407cb901df4 Initial revision
robcast
parents:
diff changeset
116
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
117 function page(keepArea) {
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
118
d407cb901df4 Initial revision
robcast
parents:
diff changeset
119 do {
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
120 page = prompt("Goto Page:", 1);
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
121 } while ((page != null) && (page < 1));
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
122
d407cb901df4 Initial revision
robcast
parents:
diff changeset
123 if (page != null && page != att[1]) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
124 att[1] = page;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
125 loadPicture(0, keepArea);
d407cb901df4 Initial revision
robcast
parents:
diff changeset
126 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
127 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
128
d407cb901df4 Initial revision
robcast
parents:
diff changeset
129
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
130 function digicat() {
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
131 var url = "http://" + location.host + "/docuserver/digitallibrary/digicat.html?" + att[0] + "+" + att[1];
d407cb901df4 Initial revision
robcast
parents:
diff changeset
132 win = window.open(url, "digicat");
d407cb901df4 Initial revision
robcast
parents:
diff changeset
133 win.focus();
d407cb901df4 Initial revision
robcast
parents:
diff changeset
134 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
135
d407cb901df4 Initial revision
robcast
parents:
diff changeset
136
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
137 function ref(refselect) {
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
138
d407cb901df4 Initial revision
robcast
parents:
diff changeset
139 var hyperlinkRef = "http://" + location.host + "/docuserver/digitallibrary/digilib.jsp?";
d407cb901df4 Initial revision
robcast
parents:
diff changeset
140 hyperlinkRef += att[0] + "+" + att[1] + "+" + att[2] + "+" + att[3] + "+" + att[4];
d407cb901df4 Initial revision
robcast
parents:
diff changeset
141
d407cb901df4 Initial revision
robcast
parents:
diff changeset
142 if ((att[5] != 0) || (att[6] != 0) || (att[7] != 1) || (att[8] != 1)) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
143 hyperlinkRef += "+" + att[5] + "+" + att[6] + "+" + att[7] + "+" + att[8];
d407cb901df4 Initial revision
robcast
parents:
diff changeset
144 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
145
d407cb901df4 Initial revision
robcast
parents:
diff changeset
146 if (refselect == 1) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
147 prompt("Link for HTML--documents", hyperlinkRef);
d407cb901df4 Initial revision
robcast
parents:
diff changeset
148 } else {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
149 prompt("Link for LaTeX--documents", "\\href{" + hyperlinkRef + "}{TEXT}");
d407cb901df4 Initial revision
robcast
parents:
diff changeset
150 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
151 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
152
d407cb901df4 Initial revision
robcast
parents:
diff changeset
153
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
154 function mark(refselect) {
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
155
d407cb901df4 Initial revision
robcast
parents:
diff changeset
156 if (att[4].split(";").length > 7) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
157 alert("Only 8 marks are possible at the moment!");
d407cb901df4 Initial revision
robcast
parents:
diff changeset
158 return;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
159 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
160
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
161 document.lay1.captureEvents(Event.MOUSEDOWN);
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
162 document.lay1.onmousedown = function(event) {
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
163
d407cb901df4 Initial revision
robcast
parents:
diff changeset
164 if ((att[4] != "") && (att[4] != "0/0")) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
165 att[4] += ";";
d407cb901df4 Initial revision
robcast
parents:
diff changeset
166 } else {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
167 att[4] = "";
d407cb901df4 Initial revision
robcast
parents:
diff changeset
168 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
169
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
170 var markX = cropFloat(att[5]+(att[7]*event.x/document.lay1.clip.width));
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
171 var markY = cropFloat(att[6]+(att[8]*event.y/document.lay1.clip.height));
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
172
d407cb901df4 Initial revision
robcast
parents:
diff changeset
173 att[4] += markX + "/" + markY;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
174
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
175 document.lay1.releaseEvents(Event.MOUSEDOWN);
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
176 setMarks();
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
177 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
178 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
179
d407cb901df4 Initial revision
robcast
parents:
diff changeset
180
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
181 function zoomArea() {
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
182 var state = 0;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
183 var x1, y1, x2, y2;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
184
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
185 function click(event) {
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
186
d407cb901df4 Initial revision
robcast
parents:
diff changeset
187 if (state == 0) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
188 state = 1;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
189
d407cb901df4 Initial revision
robcast
parents:
diff changeset
190 x1 = event.pageX;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
191 y1 = event.pageY;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
192 x2 = x1;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
193 y2 = y1;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
194
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
195 document.eck1.moveTo(((x1 < x2) ? x1 : x2), ((y1 < y2) ? y1 : y2));
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
196 document.eck2.moveTo(((x1 < x2) ? x2 : x1)-12, ((y1 < y2) ? y1 : y2));
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
197 document.eck3.moveTo(((x1 < x2) ? x1 : x2), ((y1 < y2) ? y2 : y1)-12);
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
198 document.eck4.moveTo(((x1 < x2) ? x2 : x1)-12, ((y1 < y2) ? y2 : y1)-12);
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
199
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
200 document.eck1.visibility="show";
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
201 document.eck2.visibility="show";
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
202 document.eck3.visibility="show";
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
203 document.eck4.visibility="show";
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
204
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
205 document.lay1.captureEvents(Event.MOUSEMOVE);
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
206 document.eck4.captureEvents(Event.MOUSEMOVE);
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
207
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
208 document.lay1.onmousemove = move;
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
209 document.eck4.onmousemove = move;
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
210
d407cb901df4 Initial revision
robcast
parents:
diff changeset
211 } else {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
212
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
213 x1 -= document.lay1.x;
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
214 y1 -= document.lay1.y;
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
215
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
216 x2 = event.pageX-document.lay1.x;
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
217 y2 = event.pageY-document.lay1.y;
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
218
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
219 document.lay1.releaseEvents(Event.MOUSEDOWN | Event.MOUSEMOVE);
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
220 document.eck4.releaseEvents(Event.MOUSEDOWN | Event.MOUSEMOVE);
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
221
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
222 document.eck1.visibility="hide";
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
223 document.eck2.visibility="hide";
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
224 document.eck3.visibility="hide";
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
225 document.eck4.visibility="hide";
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
226
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
227 att[5] = cropFloat(att[5]+att[7]*((x1 < x2) ? x1 : x2)/document.lay1.clip.width);
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
228 att[6] = cropFloat(att[6]+att[8]*((y1 < y2) ? y1 : y2)/document.lay1.clip.height);
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
229
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
230 att[7] = cropFloat(att[7]*Math.abs(x1-x2)/document.lay1.clip.width);
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
231 att[8] = cropFloat(att[8]*Math.abs(y1-y2)/document.lay1.clip.height);
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
232
d407cb901df4 Initial revision
robcast
parents:
diff changeset
233 if (att[7] != 0 && att[8] != 0) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
234 loadPicture(2);
d407cb901df4 Initial revision
robcast
parents:
diff changeset
235 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
236 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
237 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
238
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
239 function move(event) {
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
240
d407cb901df4 Initial revision
robcast
parents:
diff changeset
241 x2 = event.pageX;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
242 y2 = event.pageY;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
243
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
244 document.eck1.moveTo(((x1 < x2) ? x1 : x2), ((y1 < y2) ? y1 : y2));
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
245 document.eck2.moveTo(((x1 < x2) ? x2 : x1)-12, ((y1 < y2) ? y1 : y2));
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
246 document.eck3.moveTo(((x1 < x2) ? x1 : x2), ((y1 < y2) ? y2 : y1)-12);
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
247 document.eck4.moveTo(((x1 < x2) ? x2 : x1)-12, ((y1 < y2) ? y2 : y1)-12);
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
248 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
249
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
250 document.lay1.captureEvents(Event.MOUSEDOWN);
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
251 document.eck4.captureEvents(Event.MOUSEDOWN);
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
252
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
253 document.lay1.onmousedown = click;
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
254 document.eck4.onmousedown = click;
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
255 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
256
d407cb901df4 Initial revision
robcast
parents:
diff changeset
257
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
258 function zoomPoint() {
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
259
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
260 document.lay1.captureEvents(Event.MOUSEDOWN);
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
261 document.lay1.onmousedown = function(event) {
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
262
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
263 att[5] = cropFloat(att[5]+(att[7]*event.x/document.lay1.clip.width-0.5*att[7]*0.7));
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
264 att[6] = cropFloat(att[6]+(att[8]*event.y/document.lay1.clip.height-0.5*att[8]*0.7));
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
265
d407cb901df4 Initial revision
robcast
parents:
diff changeset
266 att[7] = cropFloat(att[7]*0.7);
d407cb901df4 Initial revision
robcast
parents:
diff changeset
267 att[8] = cropFloat(att[8]*0.7);
d407cb901df4 Initial revision
robcast
parents:
diff changeset
268
d407cb901df4 Initial revision
robcast
parents:
diff changeset
269 if (att[5] < 0) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
270 att[5] = 0;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
271 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
272 if (att[6] < 0) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
273 att[6] = 0;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
274 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
275 if (att[5]+att[7] > 1) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
276 att[5] = 1-att[7];
d407cb901df4 Initial revision
robcast
parents:
diff changeset
277 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
278 if (att[6]+att[8] > 1) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
279 att[6] = 1-att[8];
d407cb901df4 Initial revision
robcast
parents:
diff changeset
280 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
281
d407cb901df4 Initial revision
robcast
parents:
diff changeset
282 releaseEvents(Event.MOUSEDOWN);
d407cb901df4 Initial revision
robcast
parents:
diff changeset
283
d407cb901df4 Initial revision
robcast
parents:
diff changeset
284 loadPicture(2);
d407cb901df4 Initial revision
robcast
parents:
diff changeset
285 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
286 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
287
d407cb901df4 Initial revision
robcast
parents:
diff changeset
288
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
289 function zoomOut() {
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
290 loadPicture(1);
d407cb901df4 Initial revision
robcast
parents:
diff changeset
291 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
292
d407cb901df4 Initial revision
robcast
parents:
diff changeset
293
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
294 function moveTo() {
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
295
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
296 document.lay1.captureEvents(Event.MOUSEDOWN);
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
297 document.lay1.onmousedown = function(event) {
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
298
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
299 att[5] = cropFloat(att[5]+(att[7]*event.x/document.lay1.clip.width-0.5*att[7]));
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
300 att[6] = cropFloat(att[6]+(att[8]*event.y/document.lay1.clip.height-0.5*att[8]));
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
301
d407cb901df4 Initial revision
robcast
parents:
diff changeset
302 if (att[5] < 0) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
303 att[5] = 0;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
304 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
305 if (att[6] < 0) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
306 att[6] = 0;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
307 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
308 if (att[5]+att[7] > 1) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
309 att[5] = 1-att[7];
d407cb901df4 Initial revision
robcast
parents:
diff changeset
310 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
311 if (att[6]+att[8] > 1) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
312 att[6] = 1-att[8];
d407cb901df4 Initial revision
robcast
parents:
diff changeset
313 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
314
d407cb901df4 Initial revision
robcast
parents:
diff changeset
315 releaseEvents(Event.MOUSEDOWN);
d407cb901df4 Initial revision
robcast
parents:
diff changeset
316
d407cb901df4 Initial revision
robcast
parents:
diff changeset
317 loadPicture(2);
d407cb901df4 Initial revision
robcast
parents:
diff changeset
318 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
319 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
320
d407cb901df4 Initial revision
robcast
parents:
diff changeset
321
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
322 function scale(scaledef) {
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
323
d407cb901df4 Initial revision
robcast
parents:
diff changeset
324 att[2] = scaledef;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
325 loadPicture(2);
d407cb901df4 Initial revision
robcast
parents:
diff changeset
326 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
327
d407cb901df4 Initial revision
robcast
parents:
diff changeset
328
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
329 function setMarks() {
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
330 if ((att[4] != "") && (att[4] != "0/0")) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
331 var mark = att[4].split(";");
d407cb901df4 Initial revision
robcast
parents:
diff changeset
332
d407cb901df4 Initial revision
robcast
parents:
diff changeset
333 var countMarks = mark.length;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
334
d407cb901df4 Initial revision
robcast
parents:
diff changeset
335 // maximum of marks is 8
d407cb901df4 Initial revision
robcast
parents:
diff changeset
336 // we do not report this error because this is already done in func. "Mark"
d407cb901df4 Initial revision
robcast
parents:
diff changeset
337 if (countMarks > 8) countMarks = 8;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
338
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
339 var picWidth = document.lay1.clip.width;
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
340 var picHeight = document.lay1.clip.height;
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
341
d407cb901df4 Initial revision
robcast
parents:
diff changeset
342 for (var i = 0; i < countMarks; i++) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
343 mark[i] = mark[i].split("/");
d407cb901df4 Initial revision
robcast
parents:
diff changeset
344
d407cb901df4 Initial revision
robcast
parents:
diff changeset
345 if ((mark[i][0] > att[5]) && (mark[i][1] > att[6]) && (mark[i][0] < (att[5]+att[7])) && (mark[i][1] < (att[6]+att[8]))) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
346
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
347 mark[i][0] = parseInt(document.lay1.x + (picWidth*(mark[i][0]-att[5]))/att[7]);
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
348 mark[i][1] = parseInt(document.lay1.y + (picHeight*(mark[i][1]-att[6]))/att[8]);
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
349
31
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
350 document.layers[i+1].moveTo(mark[i][0]-5, mark[i][1]-5);
84a481a388bb first update of new client-version
luginbue
parents: 17
diff changeset
351 document.layers[i+1].visibility = "show";
17
d407cb901df4 Initial revision
robcast
parents:
diff changeset
352 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
353 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
354 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
355 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
356
d407cb901df4 Initial revision
robcast
parents:
diff changeset
357
d407cb901df4 Initial revision
robcast
parents:
diff changeset
358 // capturing keypresses for next and previous page
d407cb901df4 Initial revision
robcast
parents:
diff changeset
359 function parseKeypress(event) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
360 var whichCode = (window.Event) ? event.which : event.keyCode;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
361 if (String.fromCharCode(whichCode) == "n") {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
362 Nextpage();
d407cb901df4 Initial revision
robcast
parents:
diff changeset
363 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
364 if (String.fromCharCode(whichCode) == "b") {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
365 Backpage();
d407cb901df4 Initial revision
robcast
parents:
diff changeset
366 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
367 }
d407cb901df4 Initial revision
robcast
parents:
diff changeset
368
d407cb901df4 Initial revision
robcast
parents:
diff changeset
369
d407cb901df4 Initial revision
robcast
parents:
diff changeset
370 // auxiliary function to crop senseless precicsion
d407cb901df4 Initial revision
robcast
parents:
diff changeset
371 function cropFloat(tmp) {
d407cb901df4 Initial revision
robcast
parents:
diff changeset
372 return parseInt(10000*tmp)/10000;
d407cb901df4 Initial revision
robcast
parents:
diff changeset
373 }