[Commits] r2593 - sandbox/mapgears/geoext.ux/ux/LayerTreeBuilder/lib/GeoExt.ux/widgets/tree
commits at geoext.org
commits at geoext.org
Thu Feb 3 21:51:01 CET 2011
Author: adube
Date: 2011-02-03 21:51:01 +0100 (Thu, 03 Feb 2011)
New Revision: 2593
Modified:
sandbox/mapgears/geoext.ux/ux/LayerTreeBuilder/lib/GeoExt.ux/widgets/tree/LayerTreeBuilder.js
Log:
LayerTreeBuilder - make sure LayerNodes are visible when according layer visibility is set to true
Modified: sandbox/mapgears/geoext.ux/ux/LayerTreeBuilder/lib/GeoExt.ux/widgets/tree/LayerTreeBuilder.js
===================================================================
--- sandbox/mapgears/geoext.ux/ux/LayerTreeBuilder/lib/GeoExt.ux/widgets/tree/LayerTreeBuilder.js 2011-02-03 19:56:04 UTC (rev 2592)
+++ sandbox/mapgears/geoext.ux/ux/LayerTreeBuilder/lib/GeoExt.ux/widgets/tree/LayerTreeBuilder.js 2011-02-03 20:51:01 UTC (rev 2593)
@@ -411,6 +411,21 @@
onLayerContainerNodeInsert: function(tree, parentNode, childNode, refNode) {
this.validateLayerContainerStatus(parentNode);
+
+ // make sure all LayerNode objects added to a LayerContainer listen to
+ // the layer "visibilitychanged" event. If visibility is changed by
+ // something else than the tree, ensure that the node and all its
+ // parents are visibles.
+ var onLayerNodeAdded = function(tree, parentNode, childNode) {
+ childNode.layer &&
+ childNode.layer.events.on({"visibilitychanged": function() {
+ if(!this._visibilityChanging) {
+ this.layer.getVisibility() && this.ensureVisible();
+ }
+ }, scope: childNode});
+ };
+ this.on("insert", onLayerNodeAdded, this);
+ this.on("append", onLayerNodeAdded, this);
},
onLayerContainerNodeAppend: function(tree, parentNode, childNode, index) {
More information about the Commits
mailing list