comparison webapp/src/main/webapp/jquery/jquery.digilib.js @ 1019:287e2d2d2ae8

fix flicker in Firefox by leaving scaler background visible. add setSize and setRGB actions. disabled rotation slider for now (needs excact numerical input option).
author robcast
date Mon, 20 Feb 2012 22:23:07 +0100
parents 7f8aaae89f9b
children 0eedb4a5b674
comparison
equal deleted inserted replaced
1018:7f8aaae89f9b 1019:287e2d2d2ae8
36 36
37 (function($) { 37 (function($) {
38 38
39 var defaults = { 39 var defaults = {
40 // version of this script 40 // version of this script
41 'version' : 'jquery.digilib.js 2.1.5b2', 41 'version' : 'jquery.digilib.js 2.1.6a1',
42 // logo url 42 // logo url
43 'logoUrl' : 'img/digilib-logo-text1.png', 43 'logoUrl' : 'img/digilib-logo-text1.png',
44 // homepage url (behind logo) 44 // homepage url (behind logo)
45 'homeUrl' : 'http://digilib.berlios.de', 45 'homeUrl' : 'http://digilib.berlios.de',
46 // base URL to digilib (e.g. 'http://digilib.mpiwg-berlin.mpg.de/digitallibrary') 46 // base URL to digilib (e.g. 'http://digilib.mpiwg-berlin.mpg.de/digitallibrary')
407 } 407 }
408 data.settings.cont = factor; 408 data.settings.cont = factor;
409 redisplay(data); 409 redisplay(data);
410 }, 410 },
411 411
412 /** change rgb contrast and brightness
413 *
414 * @param data
415 * @param rgbm
416 * @param rgba
417 */
418 setRGB : function (data, rgbm, rgba) {
419 var oldRgbm = data.settings.rgbm;
420 var oldRgba = data.settings.rgba;
421 if (rgbm == null && rgba == null) {
422 var rgb = window.prompt("RGBm, RGBa (m_r/m_g/m_b, a_r/a_g/a_b)", oldRgbm+', '+oldRgba);
423 if (rgb != null) {
424 rgbs = rgb.split(/,\s*/);
425 if (rgbs.length == 2) {
426 data.settings.rgbm = rgbs[0];
427 data.settings.rgba = rgbs[1];
428 redisplay(data);
429 }
430 }
431 } else {
432 if (rgbm != null) data.settings.rgbm = rgbm;
433 if (rgba != null) data.settings.rgba = rgba;
434 redisplay(data);
435 }
436 },
437
412 /** reset image parameters to defaults 438 /** reset image parameters to defaults
413 * TODO: improve this! 439 * TODO: improve this!
414 * 440 *
415 * @param data 441 * @param data
416 */ 442 */
488 qual = window.prompt("Image quality (0..2)", oldq); 514 qual = window.prompt("Image quality (0..2)", oldq);
489 } 515 }
490 qual = parseInt(qual, 10); 516 qual = parseInt(qual, 10);
491 if (qual >= 0 && qual <= 2) { 517 if (qual >= 0 && qual <= 2) {
492 setQuality(data, qual); 518 setQuality(data, qual);
519 redisplay(data);
520 }
521 },
522
523 /** set image size
524 *
525 * @param data
526 * @param size
527 */
528 setSize : function (data, size) {
529 var olds = data.settings.ws;
530 if (size == null) {
531 size = window.prompt("Image size (1=screen size)", olds);
532 }
533 size = parseFloat(size);
534 if (size > 0) {
535 data.settings.ws = size;
493 redisplay(data); 536 redisplay(data);
494 } 537 }
495 }, 538 },
496 539
497 /** calibrate (set client screen dpi) 540 /** calibrate (set client screen dpi)
1128 $scaler.css('cursor', 'auto'); 1171 $scaler.css('cursor', 'auto');
1129 // adjust scaler div size (beware: setting position makes the element relative) 1172 // adjust scaler div size (beware: setting position makes the element relative)
1130 imgRect.getSize().adjustDiv($scaler); 1173 imgRect.getSize().adjustDiv($scaler);
1131 // show image in case it was hidden (for example in zoomDrag) 1174 // show image in case it was hidden (for example in zoomDrag)
1132 $img.css('visibility', 'visible'); 1175 $img.css('visibility', 'visible');
1133 $scaler.css({'opacity' : '1', 'background' : 'transparent'}); 1176 $scaler.css({'opacity' : '1'});
1134 data.hasPreviewBg = false; 1177 data.hasPreviewBg = false;
1135 // update display (render marks, etc.) 1178 // update display (render marks, etc.)
1136 updateDisplay(data); 1179 updateDisplay(data);
1137 }; 1180 };
1138 }; 1181 };