2
* Copyright (c) 2008-2011 The Open Source Geospatial Foundation
4
* Published under the BSD license.
5
* See http://svn.geoext.org/core/trunk/geoext/license.txt for the full text
10
* @requires GeoExt/widgets/tree/LayerContainer.js
12
Ext.namespace("GeoExt.tree");
15
* module = GeoExt.tree
16
* class = BaseLayerContainer
20
* GeoExt/widgets/tree/LayerContainer.js
24
* .. class:: BaseLayerContainer
26
* A layer container that will collect all base layers of an OpenLayers
27
* map. Only layers that have displayInLayerSwitcher set to true will be
28
* included. The childrens' iconCls defaults to
29
* "gx-tree-baselayer-icon" and this node' text defaults to
32
* Children will be rendered with a radio button instead of a checkbox,
33
* showing the user that only one base layer can be active at a time.
35
* To use this node type in ``TreePanel`` config, set nodeType to
36
* "gx_baselayercontainer".
38
GeoExt.tree.BaseLayerContainer = Ext.extend(GeoExt.tree.LayerContainer, {
40
/** private: property[text]
41
* ``String`` The text for this node.
45
/** private: method[constructor]
46
* Private constructor override.
48
constructor: function(config) {
49
config = Ext.applyIf(config || {}, {
53
config.loader = Ext.applyIf(config.loader, {
54
baseAttrs: Ext.applyIf(config.loader.baseAttrs || {}, {
55
iconCls: 'gx-tree-baselayer-icon',
56
checkedGroup: 'baselayer'
58
filter: function(record) {
59
var layer = record.getLayer();
60
return layer.displayInLayerSwitcher === true &&
61
layer.isBaseLayer === true;
65
GeoExt.tree.BaseLayerContainer.superclass.constructor.call(this,
71
* NodeType: gx_baselayercontainer
73
Ext.tree.TreePanel.nodeTypes.gx_baselayercontainer = GeoExt.tree.BaseLayerContainer;