[Users] Question on adding multiple layercontainer to TreePanel

Ryan Williams rwilliams at paqinteractive.com
Wed Sep 1 18:49:21 CEST 2010


No problem.
You could also append TreeNodes to a TreeNode and create a nested - 
folder tree - kind of look.....

Create the root of your tree:
//
     var layerRoot = new Ext.tree.TreeNode({
                 text: "Layers"
             });
//
  And create a branch, with another TreeNode:
//
     var blayerBranch = new Ext.tree.TreeNode({
                 text: "B Layers"
             });
//
Then append children to the branch:
//
    blayerBranch.appendChild(new GeoExt.tree.LayerContainer({
                 text: "County B layers",
                 map: mapPanel,
                 loader: {
                             filter: function(record) {
                                 var myarr = new Array();
                                 
myarr[0]=record.get("layer").name.indexOf("County");
                                 
myarr[1]=record.get("layer").name.indexOf("Balance");

                                 if(myarr[0]!==-1 && myarr[1]!==-1){
                                     return true;
                                 }else{
                                     return false;
                                 }
                             }
                         }
             }));
//
keep on appending children to that branch..... or create other branches 
and add children to those branches....
Then append the branches to the root:
//
      layerRoot.appendChild(blayerBranch);

     // if you made more branches add them in the same manner, like 
'layerRoot.appendChild(clayerBranch);' for a branch called clayerBranch...

//
Then add the root to the TreePanel with the "root:" paramater:
//
      var tree = new Ext.tree.TreePanel({
                 region: "west",
                 frame: false,
                 title: "Table of Contents",
                 root: layerRoot,
             });
//

On 9/1/2010 11:08 AM, Andrew Stewart wrote:
> Trying to find a good example on how to add multiple LayerContainers 
> to my TreePanel but so far unsuccesful.
> I've defined two LayerContainer controls like so -
>
>
> var layerList_Labels = new GeoExt.tree.LayerContainer({
> text: 'Labels',
> layerStore: mapPanel.layers,
> leaf: false,
> expanded: false,
> loader:
> {
> filter: function(record)
> {
> var myarr = new Array();
> myarr[0] = record.get("layer").name.indexOf("Overview Streets");
> myarr[1] = record.get("layer").name.indexOf("Quadrant Streets");
> if(myarr[0]==-1 && myarr[1]==-1)
> {
> return false;
> }
> else
> {
> return true;
> }
> }
> }
> });
>
>
> var layerList_Labels2 = new GeoExt.tree.LayerContainer({
> text: 'Labels2',
> layerStore: mapPanel.layers,
> leaf: false,
> expanded: false,
> loader:
> {
> filter: function(record)
> {
> var myarr = new Array();
> myarr[0] = record.get("layer").name.indexOf("Overview Streets");
> myarr[1] = record.get("layer").name.indexOf("Quadrant Streets");
> if(myarr[0]==-1 && myarr[1]==-1)
> {
> return false;
> }
> else
> {
> return true;
> }
> }
> }
> });
>
> Now I am just unsure exactly how to add these both to my TreePanel - 
> i've tried adding them both to root, or trying to use children but it 
> is not showing up. Any help greatly appreciated.
>
> var layerTree = new Ext.tree.TreePanel({
> title: '',
> renderTo: 'legend',
> root: layerList_Labels,
> enableDD: true,
> applyLoader: true
> });
>
> ------------------------------------------------------------------------
> This e-mail is intended for the original recipient(s) only. If you 
> have received it in error, please advise the sender and delete this 
> message.
>
>
> _______________________________________________
> Users mailing list
> Users at geoext.org
> http://www.geoext.org/cgi-bin/mailman/listinfo/users
>    

-- 
Ryan Williams, GISP
GIS Analyst / Programmer
PAQ Interactive Inc.
107 S State St., Suite 300
Monticello, IL 61856-1968
Office: (217) 762-7955
Mobile: (217) 722-2794
rwilliams at paqinteractive.com

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.geoext.org/pipermail/users/attachments/20100901/ede6852d/attachment.htm 


More information about the Users mailing list