# HG changeset patch # User robcast # Date 1295523674 -3600 # Node ID 2e817524992eb141fa2e8b730bab645239b53f5a # Parent 91d168f7dd0d9ef1d12dddf3b80bf27a3e28dee0 set mark works now setup of image transformation fixed diff -r 91d168f7dd0d -r 2e817524992e client/digitallibrary/jquery/jquery.digilib.js --- a/client/digitallibrary/jquery/jquery.digilib.js Wed Jan 19 20:41:25 2011 +0100 +++ b/client/digitallibrary/jquery/jquery.digilib.js Thu Jan 20 12:41:14 2011 +0100 @@ -35,7 +35,7 @@ img : "zoom-area.png" }, zoomfull : { - onclick : "javascript:zoomFullpage()", + onclick : "zoomFullpage", tooltip : "view the whole image", img : "zoom-full.png" }, @@ -75,7 +75,7 @@ img : "reset.png" }, mark : { - onclick : "javascript:setMark()", + onclick : "setMark", tooltip : "set a mark", img : "mark.png" }, @@ -188,7 +188,7 @@ // path to button images (must end with a slash) 'buttonsImagePath' : '../greyskin/', // actions groups - 'actionsStandard' : ["reference","zoomin","zoomout","zoomarea","zoomfull","pagewidth","back","fwd","page","bird","SEP","help","reset","options"], + 'actionsStandard' : ["reference","zoomin","zoomout","zoomarea","zoomfull","pagewidth","mark","back","fwd","page","bird","SEP","help","reset","options"], 'actionsSpecial' : ["mark","delmark","hmir","vmir","rot","brgt","cont","rgb","quality","size","calibrationx","scale","SEP","options"], 'actionsCustom' : [], // is birdView shown? @@ -228,9 +228,8 @@ elemSettings = $.extend({}, settings, parseImgParams($elem)); } // store $(this) element in the settings - elemSettings.digilibRoot = $elem; data = { - target : $elem, + $elem : $elem, settings : elemSettings, queryParams : queryParams }; @@ -312,6 +311,28 @@ var $elem = $(this); var data = $elem.data('digilib'); zoomBy(data, factor); + }, + + // zoom out to full page + zoomFullpage : function () { + var $elem = $(this); + var data = $elem.data('digilib'); + data.zoomArea = MAX_ZOOMAREA; + redisplay(data); + }, + + // set a mark by clicking (or giving a position) + setMark : function (mpos) { + var $elem = $(this); + var data = $elem.data('digilib'); + if (mpos == null) { + // interactive + setMark(data); + } else { + // use position + data.marks.push(pos); + redisplay(data); + } } }; @@ -431,10 +452,10 @@ var settings = data.settings; // zoom area if (data.zoomArea) { - settings.wx = data.zoomArea.x; - settings.wy = data.zoomArea.y; - settings.ww = data.zoomArea.width; - settings.wh = data.zoomArea.height; + settings.wx = cropFloat(data.zoomArea.x); + settings.wy = cropFloat(data.zoomArea.y); + settings.ww = cropFloat(data.zoomArea.width); + settings.wh = cropFloat(data.zoomArea.height); } // marks if (data.marks) { @@ -475,7 +496,7 @@ // creates HTML structure for digilib in elem var setupScalerDiv = function (data) { var settings = data.settings; - var $elem = data.target; + var $elem = data.$elem; var $img; if (settings.interactionMode === 'fullscreen') { // fullscreen @@ -509,7 +530,7 @@ // creates HTML structure for buttons in elem var setupButtons = function (data, actionGroup) { - var $elem = data.target; + var $elem = data.$elem; var settings = data.settings; if (settings.interactionMode === 'fullscreen') { // fullscreen -- create new @@ -555,7 +576,7 @@ // creates HTML structure for the bird's eye view in elem var setupBirdDiv = function (data) { - var $elem = data.target; + var $elem = data.$elem; var settings = data.settings; // use only the relevant parameters var keys = ['fn','pn','dw','dh']; @@ -579,7 +600,7 @@ // creates HTML structure for the about view in elem var setupAboutDiv = function (data) { - var $elem = data.target; + var $elem = data.$elem; var settings = data.settings; var $aboutDiv = $('