annotate client/digitallibrary/navigation.js @ 239:2f4764230089

new digimage with red triangles for moving the zoomed area (can be switched off with "clop=noarrows")
author robcast
date Wed, 04 Aug 2004 20:35:35 +0200
parents 9856cc853801
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
129
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
1 /*
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
2
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
3 Copyright (C) 2003 WTWG, Uni Bern
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
4
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
5 This program is free software; you can redistribute it and/or
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
6 modify it under the terms of the GNU General Public License
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
7 as published by the Free Software Foundation; either version 2
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
8 of the License, or (at your option) any later version.
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
9
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
10 This program is distributed in the hope that it will be useful,
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
13 GNU General Public License for more details.
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
14
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
15 You should have received a copy of the GNU General Public License
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
16 along with this program; if not, write to the Free Software
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
18
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
19 Author: Christian Luginbuehl, 01.05.2003 , Version Alcatraz 0.4
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
20
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
21 */
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
22
221
f9f9a4c86ffd new digicat version with only one js file
luginbue
parents: 195
diff changeset
23 function identify() {
f9f9a4c86ffd new digicat version with only one js file
luginbue
parents: 195
diff changeset
24 return 'Digilib v0.6';
f9f9a4c86ffd new digicat version with only one js file
luginbue
parents: 195
diff changeset
25 }
f9f9a4c86ffd new digicat version with only one js file
luginbue
parents: 195
diff changeset
26
f9f9a4c86ffd new digicat version with only one js file
luginbue
parents: 195
diff changeset
27
129
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
28 var ZOOMFACTOR = Math.sqrt(2);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
29
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
30 dlParams = new Object();
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
31
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
32 function newParameter(name, value, defaultValue, detail) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
33
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
34 if ( !dlParams[name] ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
35
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
36 dlParams[name] = new Object();
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
37
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
38 dlParams[name].value = value;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
39 dlParams[name].defaultValue = defaultValue;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
40 dlParams[name].detail = detail;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
41
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
42 return dlParams[name];
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
43
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
44 } else {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
45
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
46 alert("Fatal: An object with name '" + name + "' already exists - cannot recreate!");
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
47 return false;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
48
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
49 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
50 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
51
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
52 function getParameter(name) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
53
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
54 if ( dlParams[name] ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
55 return dlParams[name].value;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
56 } else {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
57 return false;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
58 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
59 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
60
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
61
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
62
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
63 function listParametersAsString() {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
64
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
65 var params = new Array();
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
66
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
67 for ( param in dlParams ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
68 params.push(param);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
69 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
70
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
71 return params.join(",");
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
72
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
73 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
74
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
75
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
76 function listParameters() {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
77
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
78 var params = new Array();
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
79
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
80 for ( param in dlParams ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
81 params.push(param);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
82 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
83
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
84 return params;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
85
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
86 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
87
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
88
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
89 function init() {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
90
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
91 // give a name to the window containing digilib - this way one can test if there is already a
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
92 // digilib-window open and replace the contents of it (ex. digicat)
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
93 top.window.name = "digilib";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
94
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
95 placeMarks();
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
96
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
97 if ( document.all ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
98 this.document.onkeypress = parseKeypress;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
99 } else if ( typeof(document.addEventListener) == "function" ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
100 this.document.addEventListener('keypress', parseKeypress, true);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
101 } else {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
102 window.captureEvents(Event.KEYDOWN);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
103 window.onkeydown = parseKeypress;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
104 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
105
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
106 focus();
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
107 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
108
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
109
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
110 function display(detail) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
111
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
112 var queryString = '';
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
113
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
114 for ( param in dlParams ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
115
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
116 if ( dlParams[param].defaultValue != dlParams[param].value ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
117 if ( dlParams[param].detail <= detail ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
118 queryString += "&" + param + "=" + dlParams[param].value;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
119 } else {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
120 queryString += "&" + param + "=" + dlParams[param].defaultValue;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
121 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
122 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
123
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
124 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
125
195
51aea2a9a172 Corrected Problems with innerWidth and about:blank for Safari.
robcast
parents: 129
diff changeset
126 // window size
51aea2a9a172 Corrected Problems with innerWidth and about:blank for Safari.
robcast
parents: 129
diff changeset
127 var wwidth, wheight;
51aea2a9a172 Corrected Problems with innerWidth and about:blank for Safari.
robcast
parents: 129
diff changeset
128 if (self.innerHeight) // all except Explorer
51aea2a9a172 Corrected Problems with innerWidth and about:blank for Safari.
robcast
parents: 129
diff changeset
129 {
226
9856cc853801 removed ugly typo
luginbue
parents: 221
diff changeset
130 wwidth = self.innerWidth;
9856cc853801 removed ugly typo
luginbue
parents: 221
diff changeset
131 wheight = self.innerHeight;
129
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
132 }
195
51aea2a9a172 Corrected Problems with innerWidth and about:blank for Safari.
robcast
parents: 129
diff changeset
133 else if (document.documentElement && document.documentElement.clientHeight)
51aea2a9a172 Corrected Problems with innerWidth and about:blank for Safari.
robcast
parents: 129
diff changeset
134 // Explorer 6 Strict Mode
51aea2a9a172 Corrected Problems with innerWidth and about:blank for Safari.
robcast
parents: 129
diff changeset
135 {
226
9856cc853801 removed ugly typo
luginbue
parents: 221
diff changeset
136 wwidth = document.documentElement.clientWidth;
9856cc853801 removed ugly typo
luginbue
parents: 221
diff changeset
137 wheight = document.documentElement.clientHeight;
195
51aea2a9a172 Corrected Problems with innerWidth and about:blank for Safari.
robcast
parents: 129
diff changeset
138 }
51aea2a9a172 Corrected Problems with innerWidth and about:blank for Safari.
robcast
parents: 129
diff changeset
139 else if (document.body) // other Explorers
51aea2a9a172 Corrected Problems with innerWidth and about:blank for Safari.
robcast
parents: 129
diff changeset
140 {
226
9856cc853801 removed ugly typo
luginbue
parents: 221
diff changeset
141 wwidth = document.body.clientWidth;
9856cc853801 removed ugly typo
luginbue
parents: 221
diff changeset
142 wheight = document.body.clientHeight;
195
51aea2a9a172 Corrected Problems with innerWidth and about:blank for Safari.
robcast
parents: 129
diff changeset
143 }
226
9856cc853801 removed ugly typo
luginbue
parents: 221
diff changeset
144 queryString += "&dw=" + (wwidth-30) + "&dh=" + (wheight-30);
129
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
145
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
146 queryString += "&lv=1";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
147
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
148 queryString = queryString.slice(1);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
149
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
150 location.href = location.protocol + "//" + location.host + location.pathname + "?" + queryString;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
151
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
152 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
153
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
154
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
155 // constructor holding different values of a point
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
156 function Point(evt) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
157
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
158 if ( document.all ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
159
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
160 this.pageX = parseInt(document.body.scrollLeft+event.clientX);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
161 this.pageY = parseInt(document.body.scrollLeft+event.clientY);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
162
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
163 this.x = this.pageX-parseInt(document.all.lay1.style.left);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
164 this.y = this.pageY-parseInt(document.all.lay1.style.top);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
165
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
166 this.relX = cropFloat(parseFloat(dlParams.wx.value)+(dlParams.ww.value*this.x/document.all.lay1.offsetWidth));
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
167 this.relY = cropFloat(parseFloat(dlParams.wy.value)+(dlParams.wh.value*this.y/document.all.lay1.offsetHeight));
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
168
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
169 } else {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
170
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
171 this.pageX = parseInt(evt.pageX);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
172 this.pageY = parseInt(evt.pageY);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
173
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
174 if ( typeof(document.getElementById) == "function" ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
175
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
176 this.x = this.pageX-parseInt(document.getElementById("lay1").style.left);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
177 this.y = this.pageY-parseInt(document.getElementById("lay1").style.top);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
178
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
179 this.relX = cropFloat(parseFloat(dlParams.wx.value)+(dlParams.ww.value*this.x/document.pic.offsetWidth));
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
180 this.relY = cropFloat(parseFloat(dlParams.wy.value)+(dlParams.wh.value*this.y/document.pic.offsetHeight));
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
181
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
182 } else {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
183
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
184 this.x = this.pageX-document.lay1.left;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
185 this.y = this.pageY-document.lay1.top;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
186
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
187 this.relX = cropFloat(parseFloat(dlParams.wx.value)+(dlParams.ww.value*this.x/document.lay1.clip.width));
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
188 this.relY = cropFloat(parseFloat(dlParams.wy.value)+(dlParams.wh.value*this.y/document.lay1.clip.height));
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
189
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
190 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
191
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
192 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
193
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
194 return this;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
195
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
196 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
197
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
198
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
199 function page(page, details) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
200
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
201 if ( details == null ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
202 details = 1;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
203 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
204
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
205 if ( page.indexOf('-') == 0 ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
206 if ( dlParams.pn.value > 1 ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
207 page = Math.max(parseInt(dlParams.pn.value) - parseInt(page.slice(1)), 1);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
208 dlParams.pn.value = page;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
209 display(details);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
210 } else {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
211 alert("You are already on the first page!");
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
212 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
213
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
214 } else if ( page.indexOf('+') == 0 ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
215 page = parseInt(dlParams.pn.value) + parseInt(page.slice(1));
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
216 dlParams.pn.value = page;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
217 display(details);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
218 } else if ( page == parseInt(page) ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
219 dlParams.pn.value = parseInt(page);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
220 display(details);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
221 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
222
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
223 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
224
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
225
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
226 function digicat() {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
227
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
228 var url = baseUrl + "/digicat.jsp?" + dlParams.fn.value + "+" + dlParams.pn.value;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
229 win = window.open(url, "digicat");
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
230 win.focus();
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
231
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
232 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
233
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
234
221
f9f9a4c86ffd new digicat version with only one js file
luginbue
parents: 195
diff changeset
235 function ref() {
129
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
236
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
237 var hyperlinkRef = baseUrl + "/digilib.jsp?";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
238 hyperlinkRef += dlParams.fn.value + "+" + dlParams.pn.value + "+" + dlParams.ws.value + "+";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
239 hyperlinkRef += dlParams.mo.value + "+" + dlParams.mk.value;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
240
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
241 if ( (dlParams.wx.value != 0) || (dlParams.wy.value != 0) || (dlParams.ww.value != 1) || (dlParams.wh.value != 1) ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
242 hyperlinkRef += "+" + dlParams.wx.value + "+" + dlParams.wy.value + "+" + dlParams.ww.value;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
243 hyperlinkRef += "+" + dlParams.wh.value;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
244 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
245
221
f9f9a4c86ffd new digicat version with only one js file
luginbue
parents: 195
diff changeset
246 return hyperlinkRef;
f9f9a4c86ffd new digicat version with only one js file
luginbue
parents: 195
diff changeset
247
f9f9a4c86ffd new digicat version with only one js file
luginbue
parents: 195
diff changeset
248 }
f9f9a4c86ffd new digicat version with only one js file
luginbue
parents: 195
diff changeset
249
f9f9a4c86ffd new digicat version with only one js file
luginbue
parents: 195
diff changeset
250
f9f9a4c86ffd new digicat version with only one js file
luginbue
parents: 195
diff changeset
251 function ref(select) {
f9f9a4c86ffd new digicat version with only one js file
luginbue
parents: 195
diff changeset
252
129
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
253 if ( select == 0 ) {
221
f9f9a4c86ffd new digicat version with only one js file
luginbue
parents: 195
diff changeset
254 prompt("Link for LaTeX-documents", "\\href{" + ref() + "}{TEXT}");
129
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
255 } else if ( select == 1 ) {
221
f9f9a4c86ffd new digicat version with only one js file
luginbue
parents: 195
diff changeset
256 prompt("Link for HTML-documents", ref());
129
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
257 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
258 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
259
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
260
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
261 function mark() {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
262
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
263 if ( dlParams.mk.value.split(";").length > 7 ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
264 alert("Only 8 marks are possible at the moment!");
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
265 return;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
266 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
267
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
268 function markEvent(evt) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
269
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
270 var point = new Point(evt);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
271
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
272 if ( dlParams.mk.value != '' ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
273 dlParams.mk.value += ';';
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
274 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
275
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
276 dlParams.mk.value += point.relX + '/' + point.relY;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
277
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
278 // stopping event capture
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
279 if ( document.all ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
280 document.all.lay1.onmousedown = null;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
281 } else if ( typeof(document.removeEventListener) == "function" ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
282 document.getElementById("lay1").removeEventListener("mousedown", markEvent, true);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
283 } else {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
284 document.lay1.releaseEvents(Event.MOUSEDOWN);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
285 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
286
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
287 placeMarks();
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
288
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
289 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
290
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
291 // starting event capture
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
292 if ( document.all ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
293 document.all.lay1.onmousedown = markEvent;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
294 } else if ( typeof(document.addEventListener) == "function" ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
295 document.getElementById("lay1").addEventListener("mousedown", markEvent, true);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
296 } else {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
297 document.lay1.captureEvents(Event.MOUSEDOWN);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
298 document.lay1.onmousedown = markEvent;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
299 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
300 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
301
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
302
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
303 function placeMarks() {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
304
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
305 if ( dlParams.mk.value != '' ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
306
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
307 var mark = dlParams.mk.value.split(";");
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
308 var mark_count = mark.length;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
309
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
310 // maximum of marks is 8
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
311 // we do not report this error because this is already done in function 'mark'
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
312 if ( mark_count > 8 ) mark_count = 8;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
313
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
314 var picWidth = (document.all) ? parseInt(document.all.lay1.offsetWidth) : (typeof(document.getElementById) == "function") ? parseInt(document.pic.offsetWidth) : parseInt(document.pic.clip.width);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
315 var picHeight = (document.all) ? parseInt(document.all.lay1.offsetHeight) : (typeof(document.getElementById) == "function") ? parseInt(document.pic.offsetHeight) : parseInt(document.pic.clip.height);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
316
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
317 // catch the cases where the picture had not been loaded already and
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
318 // make a timeout so that the coordinates are calculated with the real dimensions
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
319 if ( (document.pic.complete) || (picWidth > 30) ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
320
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
321 var xOffset = (document.all) ? parseInt(document.all.lay1.style.left) : (typeof(document.getElementById) == "function") ? parseInt(document.getElementById('lay1').style.left) : document.lay1.left;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
322 var yOffset = (document.all) ? parseInt(document.all.lay1.style.top) : (typeof(document.getElementById) == "function") ? parseInt(document.getElementById('lay1').style.top) : document.lay1.top;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
323
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
324 for (var i = 0; i < mark_count; i++) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
325 mark[i] = mark[i].split("/");
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
326
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
327 if ( (mark[i][0] >= dlParams.wx.value) && (mark[i][1] >= dlParams.wy.value) && (mark[i][0] <= (parseFloat(dlParams.wx.value) + parseFloat(dlParams.ww.value))) && (mark[i][1] <= (parseFloat(dlParams.wy.value) + parseFloat(dlParams.wh.value))) ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
328
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
329 mark[i][0] = parseInt(xOffset + picWidth * (mark[i][0] - dlParams.wx.value)/dlParams.ww.value);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
330 mark[i][1] = parseInt(yOffset + picHeight * (mark[i][1] - dlParams.wy.value)/dlParams.wh.value);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
331
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
332 if ( (document.all) || (typeof(document.getElementById) == "function") ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
333 // suboptimal to place -5 pixels and not half size of mark-image
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
334 // should be changed in the future
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
335 document.getElementById("dot" + i).style.left = mark[i][0]-5;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
336 document.getElementById("dot" + i).style.top = mark[i][1]-5;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
337 document.getElementById("dot" + i).style.visibility = "visible";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
338 } else {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
339 document.layers[i+1].moveTo(mark[i][0]-5, mark[i][1]-5);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
340 document.layers[i+1].visibility = "show";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
341 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
342 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
343 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
344
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
345 } else {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
346 setTimeout("placeMarks()", 100);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
347 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
348 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
349 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
350
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
351
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
352 function zoomPoint() {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
353
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
354 function zoomPointEvent(evt) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
355
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
356 var point = new Point(evt);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
357
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
358 dlParams.wx.value = cropFloat(point.relX-0.5*dlParams.ww.value*(1/ZOOMFACTOR));
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
359 dlParams.wy.value = cropFloat(point.relY-0.5*dlParams.wh.value*(1/ZOOMFACTOR));
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
360
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
361 dlParams.ww.value = cropFloat(dlParams.ww.value*(1/ZOOMFACTOR));
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
362 dlParams.wh.value = cropFloat(dlParams.wh.value*(1/ZOOMFACTOR));
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
363
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
364 if ( dlParams.wx.value < 0 ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
365 dlParams.wx.value = 0;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
366 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
367 if ( dlParams.wy.value < 0 ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
368 dlParams.wy.value = 0;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
369 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
370 if ( dlParams.wx.value + dlParams.ww.value > 1 ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
371 dlParams.wx.value = 1 - dlParams.ww.value;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
372 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
373 if ( dlParams.wy.value + dlParams.wh.value > 1 ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
374 dlParams.wy.value = 1 - dlParams.wh.value;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
375 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
376
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
377 // stopping event capture
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
378 if ( document.all ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
379 document.all.lay1.onmousedown = null;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
380 } else if ( typeof(document.removeEventListener) == "function" ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
381 document.getElementById("lay1").removeEventListener("mousedown", zoomPointEvent, true);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
382 } else {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
383 document.lay1.releaseEvents(Event.MOUSEDOWN);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
384 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
385
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
386 display(3);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
387 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
388
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
389 // starting event capture
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
390 if ( document.all ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
391 document.all.lay1.onmousedown = zoomPointEvent;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
392 } else if ( typeof(document.addEventListener) == "function" ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
393 document.getElementById("lay1").addEventListener("mousedown", zoomPointEvent, true);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
394 } else {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
395 document.lay1.captureEvents(Event.MOUSEDOWN);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
396 document.lay1.onmousedown = zoomPointEvent;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
397 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
398 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
399
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
400
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
401 function zoomArea() {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
402 var state = 0;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
403 var pt1, pt2;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
404
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
405 function click(evt) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
406
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
407 if (state == 0) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
408 state = 1;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
409
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
410 pt1 = new Point(evt);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
411 pt2 = pt1;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
412
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
413 if ( document.all ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
414
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
415 document.all.eck1.style.left = pt1.pageX;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
416 document.all.eck1.style.top = pt1.pageY;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
417 document.all.eck2.style.left = pt2.pageX-12;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
418 document.all.eck2.style.top = pt1.pageY;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
419 document.all.eck3.style.left = pt1.pageX;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
420 document.all.eck3.style.top = pt2.pageY-12;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
421 document.all.eck4.style.left = pt2.pageX-12;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
422 document.all.eck4.style.top = pt2.pageY-12;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
423
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
424 document.all.eck1.style.visibility="visible";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
425 document.all.eck2.style.visibility="visible";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
426 document.all.eck3.style.visibility="visible";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
427 document.all.eck4.style.visibility="visible";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
428
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
429 document.all.lay1.onmousemove = move;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
430 document.all.eck4.onmousemove = move;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
431
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
432 } else if ( typeof(document.addEventListener) == "function" ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
433
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
434 document.getElementById("eck1").style.left = pt1.pageX;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
435 document.getElementById("eck1").style.top = pt1.pageY;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
436 document.getElementById("eck2").style.left = pt2.pageX-12;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
437 document.getElementById("eck2").style.top = pt1.pageY;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
438 document.getElementById("eck3").style.left = pt1.pageX;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
439 document.getElementById("eck3").style.top = pt2.pageY-12;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
440 document.getElementById("eck4").style.left = pt2.pageX-12;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
441 document.getElementById("eck4").style.top = pt2.pageY-12;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
442
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
443 document.getElementById("eck1").style.visibility="visible";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
444 document.getElementById("eck2").style.visibility="visible";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
445 document.getElementById("eck3").style.visibility="visible";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
446 document.getElementById("eck4").style.visibility="visible";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
447
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
448 document.getElementById("lay1").addEventListener("mousemove", move, true);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
449 document.getElementById("eck4").addEventListener("mousemove", move, true);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
450
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
451 } else {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
452
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
453 document.eck1.moveTo(pt1.pageX, pt1.pageY);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
454 document.eck2.moveTo(pt2.pageX-12, pt1.pageY);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
455 document.eck3.moveTo(pt1.pageX, pt2.pageY-12);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
456 document.eck4.moveTo(pt2.pageX-12, pt2.pageY-12);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
457
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
458 document.eck1.visibility="show";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
459 document.eck2.visibility="show";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
460 document.eck3.visibility="show";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
461 document.eck4.visibility="show";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
462
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
463 document.lay1.captureEvents(Event.MOUSEMOVE);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
464 document.eck4.captureEvents(Event.MOUSEMOVE);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
465 document.lay1.onmousemove = move;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
466 document.eck4.onmousemove = move;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
467
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
468 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
469
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
470 } else {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
471
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
472 pt2 = new Point(evt);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
473
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
474 if ( document.all ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
475
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
476 document.all.eck1.visibility="hidden";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
477 document.all.eck2.visibility="hidden";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
478 document.all.eck3.visibility="hidden";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
479 document.all.eck4.visibility="hidden";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
480
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
481 document.all.lay1.onmousedown = null;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
482 document.all.eck4.onmousedown = null;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
483 document.all.lay1.onmousemove = null;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
484 document.all.eck4.onmousemove = null;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
485
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
486 } else if ( typeof(document.removeEventListener) == "function" ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
487
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
488 document.getElementById("eck1").style.visibility="hidden";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
489 document.getElementById("eck2").style.visibility="hidden";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
490 document.getElementById("eck3").style.visibility="hidden";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
491 document.getElementById("eck4").style.visibility="hidden";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
492
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
493 document.getElementById("lay1").removeEventListener("mousedown", click, true);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
494 document.getElementById("eck4").removeEventListener("mousedown", click, true);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
495 document.getElementById("lay1").removeEventListener("mousemove", move, true);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
496 document.getElementById("eck4").removeEventListener("mousemove", move, true);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
497
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
498 } else {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
499
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
500 document.eck1.visibility="hide";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
501 document.eck2.visibility="hide";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
502 document.eck3.visibility="hide";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
503 document.eck4.visibility="hide";
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
504
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
505 document.lay1.releaseEvents(Event.MOUSEDOWN);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
506 document.eck4.releaseEvents(Event.MOUSEDOWN);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
507 document.lay1.releaseEvents(Event.MOUSEMOVE);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
508 document.eck4.releaseEvents(Event.MOUSEMOVE);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
509
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
510 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
511
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
512 dlParams.wx.value = cropFloat(parseFloat(Math.min(pt1.relX, pt2.relX)));
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
513 dlParams.wy.value = cropFloat(parseFloat(Math.min(pt1.relY, pt2.relY)));
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
514
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
515 dlParams.ww.value = cropFloat(parseFloat(Math.abs(pt1.relX-pt2.relX)));
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
516 dlParams.wh.value = cropFloat(parseFloat(Math.abs(pt1.relY-pt2.relY)));
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
517
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
518 if ( (dlParams.ww.value != 0) && (dlParams.wh.value != 0) ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
519 display(3);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
520 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
521 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
522 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
523
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
524 function move(evt) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
525
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
526 pt2 = new Point(evt);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
527
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
528 var eck1_left = ((pt1.pageX < pt2.pageX) ? pt1.pageX : pt2.pageX);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
529 var eck1_top = ((pt1.pageY < pt2.pageY) ? pt1.pageY : pt2.pageY);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
530 var eck2_left = ((pt1.pageX < pt2.pageX) ? pt2.pageX : pt1.pageX)-12;;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
531 var eck2_top = ((pt1.pageY < pt2.pageY) ? pt1.pageY : pt2.pageY);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
532 var eck3_left = ((pt1.pageX < pt2.pageX) ? pt1.pageX : pt2.pageX);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
533 var eck3_top = ((pt1.pageY < pt2.pageY) ? pt2.pageY : pt1.pageY)-12;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
534 var eck4_left = ((pt1.pageX < pt2.pageX) ? pt2.pageX : pt1.pageX)-12;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
535 var eck4_top = ((pt1.pageY < pt2.pageY) ? pt2.pageY : pt1.pageY)-12;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
536
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
537 if ( document.all ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
538
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
539 document.all.eck1.style.left = eck1_left;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
540 document.all.eck1.style.top = eck1_top;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
541 document.all.eck2.style.left = eck2_left;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
542 document.all.eck2.style.top = eck2_top;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
543 document.all.eck3.style.left = eck3_left;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
544 document.all.eck3.style.top = eck3_top;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
545 document.all.eck4.style.left = eck4_left;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
546 document.all.eck4.style.top = eck4_top;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
547
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
548 } else if ( typeof(document.getElementById) == "function" ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
549
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
550 document.getElementById("eck1").style.left = eck1_left;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
551 document.getElementById("eck1").style.top = eck1_top;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
552 document.getElementById("eck2").style.left = eck2_left;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
553 document.getElementById("eck2").style.top = eck2_top;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
554 document.getElementById("eck3").style.left = eck3_left;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
555 document.getElementById("eck3").style.top = eck3_top;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
556 document.getElementById("eck4").style.left = eck4_left;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
557 document.getElementById("eck4").style.top = eck4_top;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
558
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
559 } else {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
560
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
561 document.eck1.moveTo(eck1_left, eck1_top);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
562 document.eck2.moveTo(eck2_left, eck2_top);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
563 document.eck3.moveTo(eck3_left, eck3_top);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
564 document.eck4.moveTo(eck4_left, eck4_top);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
565
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
566 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
567 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
568
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
569 // starting event capture
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
570 if ( document.all ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
571 document.all.lay1.onmousedown = click;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
572 document.all.eck4.onmousedown = click;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
573 } else if ( typeof(document.addEventListener) == "function" ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
574 document.getElementById("lay1").addEventListener("mousedown", click, true);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
575 document.getElementById("eck4").addEventListener("mousedown", click, true);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
576 } else {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
577 document.lay1.captureEvents(Event.MOUSEDOWN);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
578 document.eck4.captureEvents(Event.MOUSEDOWN);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
579 document.lay1.onmousedown = click;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
580 document.eck4.onmousedown = click;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
581 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
582 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
583
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
584
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
585 function zoomExtends() {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
586
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
587 dlParams.wx.value = 0.0;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
588 dlParams.wy.value = 0.0;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
589
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
590 dlParams.ww.value = 1.0;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
591 dlParams.wh.value = 1.0;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
592
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
593 display(3);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
594
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
595 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
596
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
597
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
598 function zoomOut() {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
599
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
600 dlParams.wx.value = cropFloat(dlParams.wx.value-0.5*(dlParams.ww.value*(ZOOMFACTOR)-dlParams.ww.value));
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
601 dlParams.wy.value = cropFloat(dlParams.wy.value-0.5*(dlParams.wh.value*(ZOOMFACTOR)-dlParams.wh.value));
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
602
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
603 dlParams.ww.value = cropFloat(dlParams.ww.value*(ZOOMFACTOR));
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
604 dlParams.wh.value = cropFloat(dlParams.wh.value*(ZOOMFACTOR));
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
605
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
606 if ( dlParams.wx.value < 0 ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
607 dlParams.wx.value = 0;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
608 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
609 if ( dlParams.wy.value < 0 ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
610 dlParams.wy.value = 0;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
611 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
612 if ( dlParams.ww.value > 1 ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
613 dlParams.ww.value = 1;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
614 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
615 if ( dlParams.wh.value > 1 ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
616 dlParams.wh.value = 1;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
617 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
618 if ( dlParams.wx.value + dlParams.ww.value > 1 ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
619 dlParams.wx.value = 1 - dlParams.ww.value;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
620 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
621 if ( dlParams.wy.value + dlParams.wh.value > 1 ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
622 dlParams.wy.value = 1 - dlParams.wh.value;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
623 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
624
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
625 display(3);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
626 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
627
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
628
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
629 function moveTo() {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
630
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
631 if ( (parseFloat(dlParams.ww.value) == 1.0) && (parseFloat(dlParams.wh.value) == 1.0) ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
632 alert("This function is only available when zoomed in!");
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
633 return;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
634 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
635
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
636 function moveToEvent(event) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
637
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
638 var point = new Point(event);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
639
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
640 dlParams.wx.value = cropFloat(point.relX-0.5*dlParams.ww.value);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
641 dlParams.wy.value = cropFloat(point.relY-0.5*dlParams.wh.value);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
642
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
643 if ( dlParams.wx.value < 0 ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
644 dlParams.wx.value = 0;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
645 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
646 if ( dlParams.wy.value < 0 ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
647 dlParams.wy.value = 0;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
648 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
649 if ( dlParams.wx.value + dlParams.ww.value > 1 ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
650 dlParams.wx.value = 1 - dlParams.ww.value;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
651 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
652 if ( dlParams.wy.value + dlParams.wh.value > 1 ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
653 dlParams.wy.value = 1 - dlParams.wh.value;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
654 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
655
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
656 // stopping event capture
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
657 if ( document.all ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
658 document.all.lay1.onmousedown = null;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
659 } else if ( typeof(document.removeEventListener) == "function" ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
660 document.getElementById("lay1").removeEventListener("mousedown", moveToEvent, true);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
661 } else {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
662 document.lay1.releaseEvents(Event.MOUSEDOWN)
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
663 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
664
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
665 display(3);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
666 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
667
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
668 // starting event capture
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
669 if ( document.all ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
670 document.all.lay1.onmousedown = moveToEvent;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
671 } else if ( typeof(document.addEventListener) == "function" ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
672 document.getElementById("lay1").addEventListener("mousedown", moveToEvent, true);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
673 } else {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
674 document.lay1.captureEvents(Event.MOUSEDOWN);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
675 document.lay1.onmousedown = moveToEvent;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
676 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
677 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
678
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
679
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
680 function scale(factor) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
681
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
682 dlParams.ws.value = cropFloat(factor);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
683 display(3);
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
684
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
685 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
686
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
687
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
688 // capturing keypresses for next and previous page
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
689 function parseKeypress(evt) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
690
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
691 if ( document.all ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
692
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
693 if ( event.keyCode == 110 ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
694 page('+1');
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
695 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
696 if ( event.keyCode == 98 ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
697 page('-1');
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
698 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
699
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
700 document.cancleBubble = true;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
701
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
702 } else {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
703
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
704 if ( evt.charCode == 110 ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
705 page('+1');
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
706 } else if ( evt.charCode == 98 ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
707 page('-1');
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
708 } else if ( evt.which == 110 ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
709 page('+1');
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
710 } else if ( evt.which == 98 ) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
711 // does not work currentlyfor Opera, because it catches the 'b'-key on it's own
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
712 // have to change the key or find another way - luginbuehl
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
713 page('-1');
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
714 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
715
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
716 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
717 }
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
718
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
719
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
720 // auxiliary function to crop senseless precicsion
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
721 function cropFloat(tmp) {
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
722 return parseInt(10000*tmp)/10000;
e12783eb5d46 unified scripts, nice xul sidebar, bugfixes
luginbue
parents:
diff changeset
723 }