0

I'm using GeoExt to create a tree. In each node I want the corresponding image at left instead of the default image default image like this site. How can I do it?

Edit

I found this example but I don't know how can I add childrens

Edit 2

This is part of my code:

var bpn = new OpenLayers.Layer.WMS("bpn", 
    url,
    {
        LAYERS: [ 'Año 2004', 'Año 2005', 'Año 2006', 'Año 2007', 'Año 2009'],
        format: "image/png",
        transparent: "true",
        projection: 'EPSG:4326'
     },
     {
         buffer: 0, 
         displayOutsideMaxExtent: true,
         isBaseLayer: false,
         displayInLayerSwitcher: false,
         yx: {'EPSG:4326' : true}
      });

var treeConfig = [
    {
        nodeType: "gx_layer",
        layer: bpn,
        isLeaf: false,

        loader: {
            param: "LAYERS",

        },
        expanded: false
    }];

tree = new Ext.tree.TreePanel({
    border: true,
    region: "west",
    title: "Entre Ríos",
    width: 250,
    split: true,
    collapsible: true,
    collapseMode: "mini",
    autoScroll: true,

    loader: new Ext.tree.TreeLoader({
        applyLoader: true,
        uiProviders: {
            "layernodeui": LayerNodeUI
        }
    }),
    root: {
        nodeType: "async",
        children: treeConfig
    },     
    rootVisible: false,
    lines: false,
});

Each layer (node)'Año 2004', 'Año 2005', 'Año 2006', 'Año 2007', 'Año 2009' has a different image. What should I change in treeConfig?

1

For each of your nodes add an iconCls option, the iconCls refers to some css

nodeType: "gx_layer", layer: "xyz", iconCls: "cc_xyz",

and the css might look like this

.cc_xyz { background-image: url( /_images/parcel_sm.png ) !important; }

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.