comparison client/digitallibrary/jquery/jquery.digilib.js @ 862:7ebdc106a61a jquery

second step towards zoom arrows
author hertzhaft
date Wed, 09 Mar 2011 00:39:17 +0100
parents 5795b9cae183
children 44ee29f20791
comparison
equal deleted inserted replaced
856:5795b9cae183 862:7ebdc106a61a
229 } 229 }
230 }, 230 },
231 // arrow overlays for moving the zoomed area 231 // arrow overlays for moving the zoomed area
232 'zoomArrows' : true, 232 'zoomArrows' : true,
233 // zoom arrow image info 233 // zoom arrow image info
234 'zoomArrowImg' : { 234 'zoomArrowsInfo' : {
235 // path to arrow images (must end with a slash) 235 // path to arrow images (must end with a slash)
236 'imagePath' : 'img/', 236 'imagePath' : 'img/',
237 // minimal width of the arrow bar (pixel) 237 // minimal width of the arrow bar (pixel)
238 'minwidth' : 6, 238 'minwidth' : 6,
239 // image file names 239 // image file names
926 // update display (overlays etc.) 926 // update display (overlays etc.)
927 var updateDisplay = function (data) { 927 var updateDisplay = function (data) {
928 updateImgTrafo(data); 928 updateImgTrafo(data);
929 renderMarks(data); 929 renderMarks(data);
930 setupZoomDrag(data); 930 setupZoomDrag(data);
931 renderZoomArrows(data);
931 // send event 932 // send event
932 $(data).trigger('update'); 933 $(data).trigger('update');
933 }; 934 };
934 935
935 // returns maximum size for scaler img in fullscreen mode 936 // returns maximum size for scaler img in fullscreen mode
1076 var $elem = data.$elem; 1077 var $elem = data.$elem;
1077 var settings = data.settings; 1078 var settings = data.settings;
1078 var show = settings.zoomArrows; 1079 var show = settings.zoomArrows;
1079 console.log('zoom arrows:', show); 1080 console.log('zoom arrows:', show);
1080 if (!show) return; 1081 if (!show) return;
1081 }; 1082 data.$arrows = {};
1083 var $arrows = data.$arrows;
1084 var info = settings.zoomArrowsInfo;
1085 $.each(['up','down','left','right'], function(i, s){
1086 var src = info.imagePath + info[s];
1087 var $div = $('<div class="keep arrow arrow-' + s + '"/>');
1088 var $img = $('<img src="' + src + '"/>');
1089 $div.attr('title', s);
1090 $img.attr('alt', s);
1091 $div.append($img);
1092 $elem.append($div);
1093 $arrows[s] = $div;
1094 });
1095 $arrows.up.bind('click.digilib', function(event) {
1096 //za.addPosition(delta.neg());
1097 // transform back
1098 // var newArea = data.imgTrafo.invtransform(za);
1099 // data.zoomArea = FULL_AREA.fit(newArea);
1100 redisplay(data);
1101 });
1102 $arrows.down.bind('click.digilib', function(event) {
1103 redisplay(data);
1104 });
1105 $arrows.left.bind('click.digilib', function(event) {
1106 redisplay(data);
1107 });
1108 $arrows.right.bind('click.digilib', function(event) {
1109 redisplay(data);
1110 });
1111 };
1112
1113 // size and show arrow overlays, called after scaler img is loaded
1114 var renderZoomArrows = function (data) {
1115 var $arrows = data.$arrows;
1116 var r = FULL_AREA.copy();
1117 r.height = 0.05;
1118 data.imgTrafo.transform(r).adjustDiv($arrows.up);
1119 r.y = 0.95;
1120 data.imgTrafo.transform(r).adjustDiv($arrows.down);
1121 r = FULL_AREA.copy();
1122 r.width = 0.05;
1123 data.imgTrafo.transform(r).adjustDiv($arrows.left);
1124 r.x = 0.95;
1125 data.imgTrafo.transform(r).adjustDiv($arrows.right);
1126 };
1127
1082 1128
1083 // creates HTML structure for the about view in elem 1129 // creates HTML structure for the about view in elem
1084 var setupAboutDiv = function (data) { 1130 var setupAboutDiv = function (data) {
1085 var $elem = data.$elem; 1131 var $elem = data.$elem;
1086 var settings = data.settings; 1132 var settings = data.settings;