[fusion-commits] r2298 - in trunk/widgets: . LayerManager

svn_fusion at osgeo.org svn_fusion at osgeo.org
Mon Dec 6 15:55:09 EST 2010


Author: madair
Date: 2010-12-06 12:55:09 -0800 (Mon, 06 Dec 2010)
New Revision: 2298

Modified:
   trunk/widgets/LayerManager.js
   trunk/widgets/LayerManager/LayerManager.css
Log:
re platform #2: adjustments for showing layer icon and info

Modified: trunk/widgets/LayerManager/LayerManager.css
===================================================================
--- trunk/widgets/LayerManager/LayerManager.css	2010-12-06 19:06:48 UTC (rev 2297)
+++ trunk/widgets/LayerManager/LayerManager.css	2010-12-06 20:55:09 UTC (rev 2298)
@@ -20,6 +20,7 @@
   margin: 0px;
   padding: 0px;
   white-space: nowrap;
+  vertical-align: middle;
 }
 
 ul.jxLman a, 
@@ -54,4 +55,9 @@
   position: absolute;
   right: 0px;
 }
+.lmanInfoIcon {
+  visibility: hidden;
+  position: absolute;
+  right: 16px;
+}
 

Modified: trunk/widgets/LayerManager.js
===================================================================
--- trunk/widgets/LayerManager.js	2010-12-06 19:06:48 UTC (rev 2297)
+++ trunk/widgets/LayerManager.js	2010-12-06 20:55:09 UTC (rev 2298)
@@ -54,7 +54,7 @@
     currentNode: null,
     bIsDrawn: false,
     map: null, 
-    defTemplate: '<li id="{id}" class="jxListItemContainer jxLmanLayer"><a class="jxListItem lmanLabel" href="javascript:void(0);" alt="{label}" title="{label}"><img src="{delIcon}" class="lmanDelIcon"><input type="checkbox" class="lmanVisCheck" {visSelect}><img src="'+Jx.aPixel.src+'" style="background-image: url({icon}); background-position: {iconOffset};">{label}</a></li>',
+    defTemplate: '<li id="{id}" class="jxListItemContainer jxLmanLayer"><a class="jxListItem lmanLabel" href="javascript:void(0);" alt="{label}" title="{label}"><input type="checkbox" class="lmanVisCheck" {visSelect}><img src="'+Jx.aPixel.src+'" style="background-image: url({icon}); background-position: {iconOffset}; width:16px; height:16px;">{label}<img src="{delIcon}" class="lmanDelIcon"><img src="{infoIcon}" class="lmanInfoIcon"></a></li>',
     
     initializeWidget: function(widgetTag) {
         //console.log("initializeWidget");
@@ -177,6 +177,7 @@
       var range = layer.getScaleRange(scale);
       var iconUrl = Jx.aPixel.src;
       var iconOffset = '0px 0px';
+      var label = layer.legendLabel;
       if (range && range.styles.length>0) {
           var style = range.styles[0];//TODO: handle multiple styles?
           var iconX = 0;
@@ -185,23 +186,29 @@
               iconX = -1 * (style.iconX);
               iconY = -1 * (style.iconY);
           }
-          iconUrl = '"'+style.iconOpt.url+'"';
+          iconUrl = style.iconOpt.url;
           iconOffset = iconX + 'px ' + iconY + 'px';
+          if (style.legendLabel) {
+            label = style.legendLabel;
+          }
       }
       
       var templStr = this.template.substitute({
         'id': 'layer_'+layer.uniqueId,
-        'label': layer.legendLabel,
+        'label': label,
         'icon': iconUrl,
         'iconOffset': iconOffset,
         'delIcon': this.delIconSrc,
+        'infoIcon': this.infoIconSrc,
         'visSelect': layer.visible? 'CHECKED': ''
       });
     
     var listItem = new Jx.ListItem({template: templStr });
     
-    //OpenLayers.Event.observe(infoIcon, 'click', OpenLayers.Function.bind(this.showLayerInfo, this, layer));
-    var delIcon = listItem.domObj.getElement('img');
+    var icons = listItem.domObj.getElements('img');
+    var infoIcon = icons[2];
+    var delIcon = icons[1];
+    OpenLayers.Event.observe(infoIcon, 'click', OpenLayers.Function.bind(this.showLayerInfo, this, layer));
     OpenLayers.Event.observe(delIcon, 'click', OpenLayers.Function.bind(this.deleteLayer, this, layer));
     OpenLayers.Event.observe(listItem.domObj.getElement('input'), 'click', OpenLayers.Function.bind(this.visChanged, this, layer));
     
@@ -209,20 +216,20 @@
     OpenLayers.Event.observe(listItem.domObj, 'mousedown', OpenLayers.Function.bind(this.setDragCursor, this));
     OpenLayers.Event.observe(listItem.domObj, 'mouseout', OpenLayers.Function.bind(this.setNormalCursor, this));
     
-    OpenLayers.Event.observe(listItem.domObj, 'mouseover', OpenLayers.Function.bind(this.setHandleVis, this, delIcon));
-    OpenLayers.Event.observe(listItem.domObj, 'mouseout', OpenLayers.Function.bind(this.setHandleHide, this, delIcon));
+    OpenLayers.Event.observe(listItem.domObj, 'mouseover', OpenLayers.Function.bind(this.setHandleVis, this, delIcon, infoIcon));
+    OpenLayers.Event.observe(listItem.domObj, 'mouseout', OpenLayers.Function.bind(this.setHandleHide, this, delIcon, infoIcon));
     
     return listItem;
   },
   
   setHandleVis: function(delIcon, infoIcon) {
     delIcon.style.visibility = 'visible';
-    //infoIcon.style.visibility = 'visible';
+    infoIcon.style.visibility = 'visible';
   },
   
   setHandleHide: function(delIcon, infoIcon) {
     delIcon.style.visibility = 'hidden';
-    //infoIcon.style.visibility = 'hidden';
+    infoIcon.style.visibility = 'hidden';
   },
   
   setGrabCursor: function(ev) {



More information about the fusion-commits mailing list