<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#ffffff">
    Hi,<br>
    <br>
    Where are your themes and theme variables defined? They will need to
    be in the scope of the filter function to work correctly. <br>
    Try putting a debugger; statement in to see exactly what is in these
    variables (I'd imagine undefined at the moment). <br>
    <pre wrap="">filter: function(record){
        debugger;
        return (record.get("layer").options.themeId == themes[theme].id);
}

</pre>
    Regards,<br>
    <br>
    Seth<br>
    --<br>
    <font color="#888888"> web:</font><a href="http://geographika.co.uk"><font
        color="#888888"> </font>http://geographika.co.uk</a><br>
    <font color="#888888">twitter: @geographika<br>
    </font><br>
    On 11/02/2011 11:32, Frans Knibbe wrote:
    <blockquote cite="mid:4D55102D.6010002@geodan.nl" type="cite">
      <pre wrap="">Hello!

I am trying to create several GeoExt.tree.LayerContainer nodes in my 
layer tree. I want to group layers by a custom attribute (themes) that I 
have added to the OpenLayers layer definition. Let's call this attribute 
'themeId'. It could have values like 'vegetation', 'water', 'roads', 
etc.. What I want to do is loop though the themes and create 
.LayerContainers for matching layers. I am doing this by means of a 
filter of the GeoExt.tree.LayerLoader, which looks like this:

filter: function(record){
        return (record.get("layer").options.themeId == themes[theme].id);
}

My problem is that the filter does not work :-). This seems to be caused 
by the variable holding the theme ID ( themes[theme].id in the example 
above) being unknown at them time the filter function is executed. If I 
exchange the variable with a string everything works fine, like this:

filter: function(record){
        return (record.get("layer").options.themeId == 'vegetation');
}

So my question is: Can I somehow get the variable to have the right 
value at the time the filter function is executed? Or is there another 
way of dynamically building LayerContainers I could try?

Thanks!
Frans



_______________________________________________
Users mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Users@geoext.org">Users@geoext.org</a>
<a class="moz-txt-link-freetext" href="http://www.geoext.org/cgi-bin/mailman/listinfo/users">http://www.geoext.org/cgi-bin/mailman/listinfo/users</a>

</pre>
    </blockquote>
    <br>
  </body>
</html>