[Mapbender-commits] r5617 - trunk/mapbender/http/javascripts
svn_mapbender at osgeo.org
svn_mapbender at osgeo.org
Wed Feb 24 04:32:16 EST 2010
Author: christoph
Date: 2010-02-24 04:32:00 -0500 (Wed, 24 Feb 2010)
New Revision: 5617
Modified:
trunk/mapbender/http/javascripts/geometry.js
Log:
optional icon width and height
Modified: trunk/mapbender/http/javascripts/geometry.js
===================================================================
--- trunk/mapbender/http/javascripts/geometry.js 2010-02-24 09:29:01 UTC (rev 5616)
+++ trunk/mapbender/http/javascripts/geometry.js 2010-02-24 09:32:00 UTC (rev 5617)
@@ -1637,7 +1637,6 @@
* @param {MultiGeometry} g a MultiGeometry object
* @param {String} col a color
* @private
- */
this.drawGeometry = function(t,g,col){
var mapframeWidth = map.width;
var mapframeHeight = map.height;
@@ -1645,9 +1644,11 @@
if(t == geomType.point) {
var poiIcon = g.e.getElementValueByName("Mapbender:icon");
var poiOffsetX = parseInt(g.e.getElementValueByName("Mapbender:iconOffsetX"), 10);
-
var poiOffsetY = parseInt(g.e.getElementValueByName("Mapbender:iconOffsetY"), 10);
+ var poiWidth = parseInt(g.e.getElementValueByName("Mapbender:iconWidth"), 10);
+ var poiHeight = parseInt(g.e.getElementValueByName("Mapbender:iconHeight"), 10);
+
for(var i=0, ilen = g.count(); i < ilen; i++){
var currentGeom = g.get(i);
var p = realToMap(mapframe, currentGeom.get(0));
@@ -1664,7 +1665,12 @@
) {
// if the point contains a link to an icon, display the icon
if (poiIcon) {
- displayIcon(poiIcon, px, py, poiOffsetX, poiOffsetY);
+ if (isNan(poiWidth) || isNan(poiHeight)) {
+ displayIcon(poiIcon, px, py, poiOffsetX, poiOffsetY);
+ }
+ else {
+ displayIcon(poiIcon, px, py, poiOffsetX, poiOffsetY, poiWidth, poiHeight);
+ }
}
else {
drawCircle(px-1, py-1, diameter,col);
@@ -1783,7 +1789,7 @@
* @param {Float} x x coordinate within the map frame
* @param {Float} y y coordinate within the map frame
*/
- var displayIcon = function (url, x, y, offsetX, offsetY) {
+ var displayIcon = function (url, x, y, offsetX, offsetY, width, height) {
if (typeof offsetX !== "number") {
offsetX = -40;
@@ -1796,7 +1802,11 @@
var newImg = document.createElement("img");
var newImgTop = y + offsetY;
var newImgLeft = x + offsetX;
- that.canvasDivTag.getTag().innerHTML = "<img name='mapSymbol' id='mapSymbol' src='" + url + "' style='position:absolute;top:"+newImgTop+";left:"+newImgLeft+";z-index:100'/>";
+ that.canvasDivTag.getTag().innerHTML = "<img name='mapSymbol' id='mapSymbol' src='" +
+ url + "' style='position:absolute;top:" + newImgTop + ";left:" + newImgLeft +
+ ";" + (width !== undefined ? "width:" + width + "px;" : "") +
+ (height !== undefined ? "height:" + height + "px;" : "") +
+ ";z-index:100'/>";
}
else{
var newImg = document.createElement("img");
@@ -1805,14 +1815,15 @@
newImg.name = "mapSymbol";
newImg.id = "mapSymbol";
that.canvasDivTag.getTag().appendChild(newImg);
- //newImg.style.cursor = "help";
newImg.style.position = "absolute";
// center the image at x, y
newImg.style.top = y + offsetY;
newImg.style.left = x + offsetX;
- // newImg.style.top = y - Math.round(80);
- // newImg.style.left = x;
+ if (width !== undefined && height !== undefined) {
+ newImg.style.width = width;
+ newImg.style.height = height;
+ }
newImg.style.zIndex = 100;
}
};
More information about the Mapbender_commits
mailing list