[Commits] r2507 - in sandbox/mapgears/geoext.ux/ux/LayerTreeBuilder: examples lib/GeoExt.ux/widgets/tree
commits at geoext.org
commits at geoext.org
Fri Dec 3 16:22:47 CET 2010
Author: adube
Date: 2010-12-03 16:22:47 +0100 (Fri, 03 Dec 2010)
New Revision: 2507
Modified:
sandbox/mapgears/geoext.ux/ux/LayerTreeBuilder/examples/tree-builder.js
sandbox/mapgears/geoext.ux/ux/LayerTreeBuilder/lib/GeoExt.ux/widgets/tree/LayerTreeBuilder.js
Log:
LayerTreeBuilder - layerNodes option (boolean) to have legendNodes or not
Modified: sandbox/mapgears/geoext.ux/ux/LayerTreeBuilder/examples/tree-builder.js
===================================================================
--- sandbox/mapgears/geoext.ux/ux/LayerTreeBuilder/examples/tree-builder.js 2010-12-01 08:52:09 UTC (rev 2506)
+++ sandbox/mapgears/geoext.ux/ux/LayerTreeBuilder/examples/tree-builder.js 2010-12-03 15:22:47 UTC (rev 2507)
@@ -97,6 +97,21 @@
}
));
+ // a layer with 'displayInLayerSwitcher': false shouldn't be added to the
+ // layertree... and shouldn't have a group (if it has any, it should be
+ // removed...)
+ layers.push(new OpenLayers.Layer.WMS("displayInLayerSwitcher:false", url, {
+ layers: "park",
+ format: 'image/png'
+ }, {
+ singleTile: true,
+ group: "GMap/Polygons",
+ isBaseLayer: false,
+ visibility: false,
+ displayInLayerSwitcher: false
+ }
+ ));
+
map = new OpenLayers.Map({
projection: new OpenLayers.Projection("EPSG:900913"),
units: "m",
@@ -121,7 +136,9 @@
autoScroll: true,
enableDD: true,
rootVisible: false,
- lines: false
+ lines: false,
+ // widget custom properties
+ legendNodes: true
});
new Ext.Viewport({
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 2010-12-01 08:52:09 UTC (rev 2506)
+++ sandbox/mapgears/geoext.ux/ux/LayerTreeBuilder/lib/GeoExt.ux/widgets/tree/LayerTreeBuilder.js 2010-12-03 15:22:47 UTC (rev 2507)
@@ -2,12 +2,24 @@
GeoExt.ux.tree.LayerTreeBuilder = Ext.extend(Ext.tree.TreePanel, {
+ /* begin i18n */
+ /** api: config[title] ``String`` i18n */
title: "Layers",
+ /** api: config[otherLayersText] ``String`` i18n */
otherLayersText: "Other layers",
+ /** api: config[baseLayersText] ``String`` i18n */
baseLayersText: "Base layers",
+ /* end i18n */
+ /** api: config[closeOnLayerAdded]
+ * ``Boolean``
+ * Defaults to true. Whether layer nodes (such as WMS, Vector, etc) should
+ * have child legend nodes or not.
+ */
+ legendNodes: true,
+
/** api: config[layerStore]
* ``GeoExt.data.LayerStore``
* The layer store containing layers to be displayed in the tree.
@@ -111,7 +123,30 @@
if (!childNode) {
// if that's the last element of the groups array, we need a
// 'LayerContainer'
- if (groups.length == 0){
+ if (groups.length == 0) {
+ var createNode;
+
+ if (this.legendNodes) {
+ createNode = function(attr) {
+ var layerRecord = this.store.getByLayer(attr.layer);
+ if (layerRecord.getLayer() instanceof OpenLayers.Layer.WMS){
+ // add a WMS legend to each node created
+ attr.component = {
+ xtype: "gx_wmslegend",
+ layerRecord: layerRecord,
+ showTitle: false,
+ hidden: true,
+ cls: "gx-layertreebuilder-legend"
+ };
+ }
+ return GeoExt.tree.LayerLoader.prototype.createNode.call(this, attr);
+ }
+ } else {
+ createNode = function(attr) {
+ return GeoExt.tree.LayerLoader.prototype.createNode.call(this, attr);
+ }
+ }
+
parentNode.appendChild({
text: group,
layerStore: this.layerStore,
@@ -125,20 +160,7 @@
baseAttrs: {
uiProvider: "custom_ui"
},
- createNode: function(attr) {
- var layerRecord = this.store.getByLayer(attr.layer);
- if (layerRecord.getLayer() instanceof OpenLayers.Layer.WMS){
- // add a WMS legend to each node created
- attr.component = {
- xtype: "gx_wmslegend",
- layerRecord: layerRecord,
- showTitle: false,
- hidden: true,
- cls: "gx-layertreebuilder-legend"
- };
- }
- return GeoExt.tree.LayerLoader.prototype.createNode.call(this, attr);
- }
+ createNode: createNode
}
});
} else {
More information about the Commits
mailing list