[Users] opacity slider in a bbar - trouble connecting to selected layer

Bart van den Eijnden (OSGIS) bartvde at osgis.nl
Tue Jul 27 17:20:25 CEST 2010


What versions of GeoExt and ExtJS are you using?

Your code looks okay, I am using something similar. Have you checked the
contents of node2.layer using Firebug console.log?

With "nothing happens", do you mean if you drag the slider it does not
apply to the attached layer?

Best regards,
Bart

> Thankyou Andreas and Bart.
> Bart, I looked at http://trac.geoext.org/ticket/301 and updated
> layerOpacitySlider.js accordingly.
> Thanks to your efforts, given the patch, I would expect to be able to call
>
> slider.setLayer(node.layer);
>
> to attach the layer to the slider, but nothing happens.
> My code is:
>
> var slider = new GeoExt.LayerOpacitySlider({ renderTo: document.body,
> width: 200,value: 100}); 
>
> ....then within the TreePanel:
>
> bbar: [{
>             text: "Remove layer from Map",
>             handler: function() {
>                 var node = tree.getSelectionModel().getSelectedNode();
>                 if(node) {
>                     map.removeLayer(node.layer);  
>                 }
>             }
>         },{
>             text: "Attach slider to selected layer",
>             handler: function() {
>                 var node2 = tree.getSelectionModel().getSelectedNode();
>                 if(node2) {
>                 slider.setLayer(node2.layer);
>                 }
>             }
>         }]
>
>
>
>
> Right, that's why I wanted to implement:
>
> http://trac.geoext.org/ticket/301
>
> to make it easier to attach a layer to the opacity slider on the fly.
>
> Best regards,
> Bart
>
>> Hi,
>>
>> On Jul 27, 2010, at 10:51 , Eoin Mac Aoidh wrote:
>>
>>> Hi list,
>>> I have a tree containing the layers in my map. It has a bbar with a
>>> button to remove a selected layer from the map. Following this
>>> template,
>>> I am trying to also add in an opacity slider for the selected layer in
>>> the bbar: So that you can either remove a selected layer, or change its
>>> opacity.
>>> I am having trouble connecting the slider to the selected layer.
>>> I suspect at least some of the
>  problem is with the line:
>>> "layer: tree.getSelectionModel().getSelectedNode().layer"
>>
>> The whole problem lies here. At the time you construct the tree, there
>> is
>> no selected layer yet. You should construct your OpacitySlider in a
>> listener to the tree's click event. In this listener, you also have to
>> remove an existing slider if there is one already.
>>
>> Regards,
>> Andreas.
>>
>>
>>> I would appreciate any help regarding how to connect the selected layer
>>> with the slider.
>>> Many Thanks,
>>> Eoin
>>>
>>> The following is the code I have:
>>>
>>> var tree = new Ext.tree.TreePanel({
>>>         region: "center",    //NBNBNBNB centER
>>>         title: "Map Layers",
>>>         width:
>  200,
>>>         autoScroll: true,
>>>         enableDD: true,
>>>         lines: false,
>>>         rootVisible: false,
>>>         root: new GeoExt.tree.LayerContainer({
>>>             layerStore: mapPanel.layers,
>>>             expanded: true
>>>         }),
>>>         bbar: [{
>>>             text: "Remove from Map",
>>>             handler: function() {
>>>                 var node =
>  tree.getSelectionModel().getSelectedNode();
>>>                 if(node) {
>>>                     map.removeLayer(node.layer);
>>>                 }
>>>             }
>>>         },{
>>>             xtype: "gx_opacityslider",
>>>             layer: tree.getSelectionModel().getSelectedNode().layer,
>>>             aggressive: true,
>>>             horizontal: true,
>>>             width: 120,
>>>         
>     plugins: new GeoExt.LayerOpacitySliderTip()
>>>         }
>>>          ]
>>>       });
>>>
>
>
>       _______________________________________________
> Users mailing list
> Users at geoext.org
> http://www.geoext.org/cgi-bin/mailman/listinfo/users
>


-- 
Looking for flexible support on OpenLayers or GeoExt? Please check out
http://www.osgis.nl/support.html

Bart van den Eijnden
OSGIS
bartvde at osgis.nl



More information about the Users mailing list