Hi Juliette, in general you can only pass one component to "attr.component" as the name indicates to. But if you wrap your components (legend, slider, etc.) in a parent container you can easily add as much components as you want. Here is some code (untested) which gives you an idea how to tackles this
... attr.component = { xtype: 'container', layout: 'vbox', //or whatever layout you need items: [ // add your components (legend and slider) here ] } ... Hope this helps. Cheers, Chris Am 06.01.2015 um 17:47 schrieb Juliette Fabre: > Thanks, no I didn't try, but actually I don't really see how I have to > do it. Would you have some code samples so that I can try to copy what > you did? > > > Le 06/01/2015 16:00, dustin.r.blankens...@accenturefederal.com a écrit : >> Have you tried extending the LayerLoader'? >> >> extend: 'GeoExt.tree.LayerLoader', >> >> createNode: function(attr) { >> >> I had to extend the layer container and use a custom loader. This allowed me >> to add text and an icon to the node. >> >> >> -----Original Message----- >> From: users-boun...@geoext.org [mailto:users-boun...@geoext.org] On Behalf >> Of Juliette Fabre >> Sent: Tuesday, January 06, 2015 3:20 AM >> To: users@geoext.org >> Subject: [Users] How to add multiple components to a tree store node >> >> Hello, >> >> I'm trying to add a WMS legend AND an opacity slider to each node of a tree >> store. >> I can add each component separately, but not together ... >> >> It could be something like this, but attr.component = [{...}, {}] raises >> errors .. : >> >> var tree_store = Ext.create('Ext.data.TreeStore', { >> model: 'GeoExt.data.LayerTreeModel', >> root: { >> expanded: true, >> children: [ >> { >> // Base layers >> plugins: ['gx_baselayercontainer'], >> expanded: true, >> text: "Base maps" >> }, >> { >> // Overlays >> plugins: [{ >> ptype: "gx_overlaylayercontainer", >> loader: { >> createNode: function(attr) { >> attr.component = >> [ >> // Add a WMS legend to each node created >> { >> xtype: "gx_wmslegend", >> layerRecord: >> mapPanel.layers.getByLayer(attr.layer), >> showTitle: false, >> baseParams: { >> // Overrides gif format that is ugly in >> this case >> FORMAT: 'image/png', >> LEGEND_OPTIONS: 'forceLabels:off' >> }, >> }, >> // Add an opacity slider >> { >> xtype: "gx_opacityslider", >> layer: attr.layer, >> vertical: false, >> value: 100, >> //x: 100, >> //y: 100, >> width: 200, >> aggressive: true, >> listeners: { >> change: function(slider, val) { >> attr.layer.setOpacity(val/100); >> } >> } >> }]; >> return >> GeoExt.tree.LayerLoader.prototype.createNode.call(this, attr); >> } >> } >> }], >> expanded: true, >> text: "Layers", >> }] >> } >> }); >> >> Any idea? >> >> Thanks, >> >> Juliette >> >> -- >> Juliette Fabre >> Ingénieur d'Etudes Systèmes d'Information Scientifiques OSU OREME Bât. 22, >> bureau 220, Université Montpellier 2 Place Eugène Bataillon - CC 22002, >> 34095 Montpellier Tél : 04 67 14 40 41 data.oreme.org >> >> _______________________________________________ >> Users mailing list >> Users@geoext.org >> http://www.geoext.org/cgi-bin/mailman/listinfo/users >> > _______________________________________________ > Users mailing list > Users@geoext.org > http://www.geoext.org/cgi-bin/mailman/listinfo/users -- Christian Mayer, Dipl.-Ing.(FH) GIS-Spezialist & Software-Developer Web: http://www.meggsimum.de Mail: ch...@meggsimum.de _______________________________________________ Users mailing list Users@geoext.org http://www.geoext.org/cgi-bin/mailman/listinfo/users