WU/WirtualnaUczelnia_files/png_1.js
2018-11-21 15:30:21 +01:00

65 lines
2.0 KiB
JavaScript

function ViewMgrSetRasterLocation(pageID, shapeID, pinX, pinY)
{
clickMenu ();
var rasterImage = document.images("RasterImage");
var imageLeft = 0;
var imageRight = imageLeft + rasterImage.offsetWidth;
var imageTop = 0;
var imageBottom = imageTop + rasterImage.offsetHeight;
var xLong = parent.ConvertXorYCoordinate(pinX, viewMgr.visBBoxLeft, viewMgr.visBBoxRight, imageLeft, imageRight, 0);
var yLong = parent.ConvertXorYCoordinate(pinY, viewMgr.visBBoxBottom, viewMgr.visBBoxTop, imageTop, imageBottom, 1);
var pixelWidth = document.body.scrollWidth;
var pixelHeight = document.body.scrollHeight;
var clientWidth = document.body.clientWidth;
var clientHeight = document.body.clientHeight;
var halfClientWidth = clientWidth;
var halfClientHeight = clientHeight;
xLong = xLong + rasterImage.offsetLeft;
yLong = yLong + rasterImage.offsetTop;
var xScrollAmount = 0;
var yScrollAmount = 0;
var xPrevScrollAmount = document.body.scrollLeft;
var yPrevScrollAmount = document.body.scrollTop;
var arrowHalfWidth = arrowdiv.clientWidth / 2;
var arrowHeight = arrowdiv.clientHeight;
if ((xLong - arrowHalfWidth) < xPrevScrollAmount)
{
// X off left of screen.
document.body.scrollLeft = xLong - arrowHalfWidth;
}
else if ((xLong + arrowHalfWidth) > (clientWidth + xPrevScrollAmount))
{
// X off right of screen.
document.body.scrollLeft = xLong - clientWidth + xPrevScrollAmount + arrowHalfWidth;
}
if (yLong < yPrevScrollAmount)
{
// Y off top of screen.
document.body.scrollTop = yLong;
}
else if ((yLong + arrowHeight) > (clientHeight + yPrevScrollAmount))
{
// Y off bottom of screen.
document.body.scrollTop = yLong - clientHeight + yPrevScrollAmount + arrowHeight;
}
arrowdiv.style.posLeft = xLong - arrowHalfWidth;
arrowdiv.style.posTop = yLong;
arrowdiv.style.visibility = "visible";
setTimeout( "parent.hideObject(arrowdiv)", 0 );
setTimeout( "parent.showObject(arrowdiv)", 1 );
setTimeout( "parent.hideObject(arrowdiv)", 2000 );
}