[Commits] r1458 - in core/trunk/geoext: lib/GeoExt/widgets/tree tests/lib/GeoExt/widgets/tree
commits at geoext.org
commits at geoext.org
Mon Nov 16 12:11:03 CET 2009
Author: ahocevar
Date: 2009-11-16 12:11:03 +0100 (Mon, 16 Nov 2009)
New Revision: 1458
Modified:
core/trunk/geoext/lib/GeoExt/widgets/tree/LayerParamNode.js
core/trunk/geoext/tests/lib/GeoExt/widgets/tree/LayerParamNode.html
Log:
made checked attribute of LayerParamNode configurable. r=tschaub (closes
#166)
Modified: core/trunk/geoext/lib/GeoExt/widgets/tree/LayerParamNode.js
===================================================================
--- core/trunk/geoext/lib/GeoExt/widgets/tree/LayerParamNode.js 2009-11-16 08:48:09 UTC (rev 1457)
+++ core/trunk/geoext/lib/GeoExt/widgets/tree/LayerParamNode.js 2009-11-16 11:11:03 UTC (rev 1458)
@@ -110,7 +110,13 @@
}
this.layer = layer;
this.allItems = this.getItems();
- this.attributes.checked = layer.getVisibility();
+
+ var visibility = layer.getVisibility();
+ this.attributes.checked = this.attributes.checked == null ?
+ visibility : this.attributes.checked;
+ if(this.attributes.checked !== visibility) {
+ this.onCheckChange(this, !visibility);
+ }
this.addVisibilityEventHandlers();
GeoExt.tree.LayerParamNode.superclass.render.apply(this, arguments);
Modified: core/trunk/geoext/tests/lib/GeoExt/widgets/tree/LayerParamNode.html
===================================================================
--- core/trunk/geoext/tests/lib/GeoExt/widgets/tree/LayerParamNode.html 2009-11-16 08:48:09 UTC (rev 1457)
+++ core/trunk/geoext/tests/lib/GeoExt/widgets/tree/LayerParamNode.html 2009-11-16 11:11:03 UTC (rev 1458)
@@ -7,7 +7,7 @@
<script>
- function setupTree() {
+ function setupTree(layer1Checked) {
var layer = new OpenLayers.Layer.WMS("Group", "http://localhost/wms", {
"LAYERS": ["layer1", "layer2"],
"CQL_FILTER": "city='Vienna' OR city='Graz'"
@@ -33,7 +33,8 @@
nodeType: "gx_layerparam",
layer: layer,
param: "LAYERS",
- item: "layer1"
+ item: "layer1",
+ checked: layer1Checked
}, {
nodeType: "gx_layerparam",
layer: layer,
@@ -86,14 +87,16 @@
}
function test_render(t) {
- t.plan(3);
+ t.plan(5);
- var panel = setupTree();
+ var panel = setupTree(true);
var nodes = panel.getRootNode().childNodes;
var layer = nodes[0].layer;
t.ok(nodes[2].layer instanceof OpenLayers.Layer, "layer set from store.");
t.eq(nodes[0].allItems, ["layer1", "layer2"], "allItems with set from array");
+ t.eq(nodes[0].attributes.checked, true, "checked attribute maintained correctly");
+ t.eq(layer.params.LAYERS, ["layer1"], "layer displayed with checked item");
t.eq(nodes[2].allItems, ["city='Vienna'", "city='Graz'"], "allItems with custom delimiter set");
panel.destroy();
More information about the Commits
mailing list