Tree use in dhtmlx layout

i m try to attach tree into cell ‘a’ of layout “2U” …and when click on tree node then appropriate data display into “b” cell…



it is done but problem is that my data is not getting correct at same level…it means different data is get in other level… and i also use tree node icon…when i add new node then it can’t set icon picture immediately …

my problem is that how i set data perfect with its level…coding is right and level is also correct… and in context menu some menu is not appear even i set property show item of menu…

please help for this problem as soon as possible…

i will write my tree code//



menu = new dhtmlXMenuObject(null,“aqua_sky”);

         menu.setImagePath(“…/dhtmlxMenu/codebase/imgs/”);

         menu.setIconPath(“…/samples/images/”);

         menu.renderAsContextMenu();

         menu.setOpenMode(“web”);

         menu.attachEvent(“onClick”,onButtonClick);

         menu.loadXML(“_context.xml”);

        

        



        

    

         var dhxLayout = new dhtmlXLayoutObject(“tree1”, “2U”);

         var tree= dhxLayout.cells(“a”).attachTree(“0”);

var obj = document.getElementById(“showarea”);

dhxLayout.cells(“b”).attachObject(obj);

         dhxLayout.cells(“a”).setWidth(200);

dhxLayout.cells(“a”).setHeight(500);

                

         dhxLayout.cells(“b”).setWidth(1000);

dhxLayout.cells(“b”).setHeight(500);

dhxLayout.cells(“a”).setText(“Site Tree”);

         dhxLayout.cells(“b”).setText(“Inforamtion”);

                

                

tree.setImagePath(“…/codebase/imgs/csh_bluefolders/”);

             tree.enableSmartXMLParsing(true);

             tree.enableKeyboardNavigation(true);

             tree.enableKeySearch(true);

             tree.enableTreeLines(true);

             tree.enableMultiselection(true);                         

            

             tree.setImageArrays(“plus”,“open2.gif”,“open2.gif”,“open2.gif”,“open2.gif”,“open2.gif”);

             tree.setImageArrays(“minus”,“close2.gif”,“close2.gif”,“close2.gif”,“close2.gif”,“close2.gif”);

             tree.enableDragAndDrop(true);

             tree.setDragBehavior(“complex”);

             tree.enableItemEditor(true);

             tree.setEditStartAction(false,true);

            

              tree.setOnSelectStateChange(loadTheForm);

             tree.enableContextMenu(menu);

             tree.attachEvent(“onXLE”,function(a,id){

var ids = tree.getAllSubItems(id).split(“,”);

                 for ( var i=0; i< ids.length; i++)

                 fixImage(ids[i]);

});

            

             tree.attachEvent(“onBeforeContextMenu”,function(itemId){                

                 var ntype = getNodeType(itemId);

                 if(ntype==1)

                    {

                        menu.hideItem(‘show_site_info’);

                        menu.showItem(‘add_site’);

                        menu.showItem(‘add_device’);

                        menu.hideItem(‘add_oc12’);    

                        menu.hideItem(‘add_oc48’);

                        menu.hideItem(‘add_oc192’);

                        menu.hideItem(‘add_ds3’);

                        menu.hideItem(‘add_ds3_segment’);

                        menu.hideItem(‘add_ds1’);

                        menu.showItem(‘delete’);

                    }

                else if(ntype==2)

                    {

                        menu.hideItem(‘show_site_info’);

                        menu.hideItem(‘add_site’);

                        menu.showItem(‘add_device’);

                        menu.showItem(‘add_oc12’);                        

                        menu.showItem(‘add_oc48’);

                        menu.showItem(‘add_oc192’);

                        menu.hideItem(‘add_ds3’);

                        menu.hideItem(‘add_ds3_segment’);

                        menu.hideItem(‘add_ds1’);                    

                        menu.showItem(‘delete’);

                    }

                else if(ntype==3)

                    {

                        menu.hideItem(‘show_site_info’);

                        menu.hideItem(‘add_site’);

                        menu.hideItem(‘add_device’);

                        menu.showItem(‘add_oc12’);

                        menu.showItem(‘add_oc48’);

                        menu.showItem(‘add_oc192’);

                        menu.showItem(‘add_ds3’);

                        menu.hideItem(‘add_ds3_segment’);

                        menu.hideItem(‘add_ds1’);                        

                        menu.showItem(‘delete’);

                    }

                else if(ntype==4)

                    {

                        menu.hideItem(‘show_site_info’);

                        menu.hideItem(‘add_site’);

                        menu.hideItem(‘add_device’);

                        menu.hideItem(‘add_oc12’);

                        menu.showItem(‘add_oc48’);

                        menu.hideItem(‘add_oc192’);

                        menu.showItem(‘add_ds3’);

                        menu.showItem(‘add_ds3_segment’);

                        menu.hideItem(‘add_ds1’);                        

                        menu.showItem(‘delete’);

                    }

                    else if(ntype==5)

                    {

                        menu.hideItem(‘show_site_info’);

                        menu.hideItem(‘add_site’);

                        menu.hideItem(‘add_device’);

                        menu.hideItem(‘add_oc12’);    

                        menu.hideItem(‘add_oc48’);

                        menu.hideItem(‘add_oc192’);                        

                        menu.hideItem(‘add_ds3’);

                        menu.showItem(‘add_ds3_segment’);

                        menu.showItem(‘add_ds1’);                        

                        menu.showItem(‘delete’);

                    }

                    else if(ntype==6)

                    {

                        menu.hideItem(‘show_site_info’);

                        menu.hideItem(‘add_site’);

                        menu.hideItem(‘add_device’);

                        menu.hideItem(‘add_oc12’);    

                        menu.hideItem(‘add_oc48’);

                        menu.hideItem(‘add_oc192’);                        

                        menu.hideItem(‘add_ds3’);

                        menu.hideItem(‘add_ds3_segment’);

                        menu.showItem(‘add_ds1’);                        

                        menu.showItem(‘delete’);

                    }

                 else

                    alert(“There is a problem in the script”);                    

                return true

            })

             tree.setXMLAutoLoading(“php/get.php”);

             tree.loadXML(“php/get.php”);    

            

    

     myDataProcessor = new dataProcessor(“php/update.php”);

                    

             myDataProcessor.init(tree);






Hello,


could you please provide the complete sample to the support@dhtmlx.com. It isn’t clear what getNodeType function does and what data is loaded

hi,

 i m sending u require ALL function for that code…

///this is my java script file… in this i mdefine several function i send u some require function  …i can’t display whole code…

–> another problem is that whan i use this in IE 8 then it design view is change like it align right hand side…

–> i can’t get correct data at correct level…menas level -3 data display on level -2’s node  click event.… all my logic is correct but when i try this layout then it make problem to tree behaviour …if i not use tree then it will work perfact…
but i must use this layout…
–> also i define all menu item into context.xml file but when i inital try to add first node as “add site” then it will not display in  the menu…

–> how i add first node when no tree is diaplay into tree area…

so, please guide me on code…
this are function of javs script… 

function fixImage(id)
{
            switch(tree.getLevel(id))
            {
            case 1:
            tree.setItemImage2(id,‘Site.gif’,‘Site.gif’,‘Site.gif’);
                break;
            case 2:
            tree.setItemImage2(id,‘device.gif’,‘device.gif’,‘device.gif’);           
                break;
            case 3:
            tree.setItemImage2(id,‘OC.gif’,‘OC.gif’,‘OC.gif’);           
                break;   
            case 4:
             tree.setItemImage2(id,‘DS.gif’,‘DS.gif’,‘DS.gif’);
                break;
            case 5:
             tree.setItemImage2(id,‘DS.gif’,‘DS.gif’,‘DS.gif’);
                break;
            default:
            tree.setItemImage2(id,‘DS.gif’,‘DS.gif’,‘DS.gif’);           
                break;
            }
            return true;
}

function getAllParents(id)
{
                var id=""+id;   //original node id
               if(id!="")
                {
                      var ar=""+tree.getItemText(id);
                    while (id=tree.getParentId(id)) 
                     ar=ar+" : “+tree.getItemText(id);  
                    var m =ar.split(”:");
                    var b =m.reverse();
                    var k=b.join(":");
                     return k;
                   
                }               

}   


function getNodeType(id)
{
                var parents = “”;
                var show_Id= id;           
                while (id=tree.getParentId(id))
                {                     
                    parents = parents+","+tree.getItemText(id);
                }
                var p_arr = parents.split(",");
                var nodetype = p_arr.length;
                return nodetype;
}

function onButtonClick(menuitemId,type)
{
                   
                   
                 var id = tree.contextID;                   
                var ntype_action = getNodeType(id);
                var d=new Date();
                if(ntype_action==1)
                {
                        /if(menuitemId==“show_site_info”){
                            create_info_win(id);
                            //alert(tree.getSubItems(id));
                        }
                        else
/
                       
                    if(menuitemId==“add_site”)
                    {
                        tree.insertNewNext(id,d.valueOf(),‘New Site’,‘SELECT’);
                    }
                    else if(menuitemId==“add_device”)
                    {
                            tree.insertNewItem(id,d.valueOf(),‘New Device’,‘SELECT’);
                            //tree.sortTree(id,“asc”,true);
                    }
                    else if(menuitemId==“delete”)
                    {
                       if(confirm(“Are you sure, you want to delete whole site?”))
                       {
                                tree.deleteItem(id);
                       }
                       else
                       {
                                //do nothing
                       }
                    }
                    else
                    {//do nothing
                    }
                }
                else if(ntype_action==2)
                {
                       if(menuitemId==“show_site_info”)
                       {
                            //create_info_win(id);
                            //alert(tree.getSubItems(id));
                        }
                       else if(menuitemId==“add_device”)
                       {                           
                            tree.insertNewItem(tree.getParentId(id),d.valueOf(),‘New Device’,‘SELECT’);
                            tree.sortTree(id,“asc”,true);
                       }
                       else if(menuitemId==“add_oc12”)
                       {                                                   
                            tree.insertNewItem(id,d.valueOf(),‘New OC12’,‘SELECT’);                                                       
                            tree.sortTree(id,“asc”,true);
                       }
                       else if(menuitemId==“add_oc48”)
                       {                                                   
                            tree.insertNewItem(id,d.valueOf(),‘New OC48’,‘SELECT’);                                                       
                            tree.sortTree(id,“asc”,true);
                       }
                       else if(menuitemId==“delete”)
                       {
                            tree.deleteItem(id);
                       }
                        else {//do nothing
                        }
                 }
                else if(ntype_action==3)
                {
                     if(menuitemId==“add_oc12”)
                       {                           
                            tree.insertNewItem(tree.getParentId(id),d.valueOf(),‘New OC12’,‘SELECT’);
                            tree.sortTree(id,“asc”,true);
                       }
                       else if(menuitemId==“add_oc48”)
                       {                                                   
                            tree.insertNewItem(id,d.valueOf(),‘New OC48’,‘SELECT’);                                                       
                            tree.sortTree(id,“asc”,true);
                       }
                      
                       else if(menuitemId==“add_ds3”)
                       {                                                   
                            tree.insertNewItem(id,d.valueOf(),‘New DS3’,‘SELECT’);                                                       
                            tree.sortTree(id,“asc”,true);
                       }
                      
                       else if(menuitemId==“delete”)
                       {
                            tree.deleteItem(id);
                       }
                        else {//do nothing
                        }
                }
                else if(ntype_action==4)
                {
                      if(menuitemId==“add_ds3”)
                       {                           
                            tree.insertNewItem(tree.getParentId(id),d.valueOf(),‘New DS3’,‘SELECT’);
                            tree.sortTree(id,“asc”,true);
                       }
                       else if(menuitemId==“add_ds3_segment”)
                       {                                                   
                            tree.insertNewItem(id,d.valueOf(),‘New DS3 Segment’,‘SELECT’);                                                       
                            tree.sortTree(id,“asc”,true);
                       }
                       else if(menuitemId==“delete”)
                       {
                            tree.deleteItem(id);
                       }
                        else {//do nothing
                        }
                }
                else if(ntype_action==5)
                {
                     if(menuitemId==“add_ds3_segment”)
                       {                           
                            tree.insertNewItem(tree.getParentId(id),d.valueOf(),‘New DS3 Segment’,‘SELECT’);
                            tree.sortTree(id,“asc”,true);
                       }
                       else if(menuitemId==“add_ds1”)
                       {                                                   
                            tree.insertNewItem(id,d.valueOf(),‘New DS1’,‘SELECT’);                                                       
                            tree.sortTree(id,“asc”,true);
                       }
                       else if(menuitemId==“delete”)
                       {
                            tree.deleteItem(id);
                       }
                        else {//do nothing
                        }
                }
                else if(ntype_action==6)
                {
                     if(menuitemId==“add_ds1”)
                       {                           
                            tree.insertNewItem(tree.getParentId(id),d.valueOf(),‘New DS1’,‘SELECT’);
                            tree.sortTree(id,“asc”);
                       }
                      
                       else if(menuitemId==“delete”)
                       {
                            tree.deleteItem(id);
                       }
                        else {//do nothing
                        }
                }
                else
                    alert(“There is a problem in the script”);
               
}

//init Menu Creation   
                               
         menu = new dhtmlXMenuObject(null,“aqua_sky”);
         menu.setImagePath("…/dhtmlxMenu/codebase/imgs/");
         menu.setIconPath("…/samples/images/");
         menu.renderAsContextMenu();
         menu.setOpenMode(“web”);
         menu.attachEvent(“onClick”,onButtonClick);
         menu.loadXML("_context.xml");
         
         
//init Tree Creation         
  
            
             // var tree = new dhtmlXTreeObject(“tree1”,“100%”,“100%”,0);
              //var obj =document.getElementById(“treebobox_tree”);
              var dhxLayout = new dhtmlXLayoutObject(“tree1”, “2U”);
               var tree= dhxLayout.cells(“a”).attachTree(“0”);
                 var obj = document.getElementById(“showarea”);
                 dhxLayout.cells(“b”).attachObject(obj);
                 dhxLayout.cells(“a”).setWidth(150);
                 dhxLayout.cells(“a”).setHeight(800);
                 
                 dhxLayout.cells(“b”).setWidth(1200);
                 dhxLayout.cells(“b”).setHeight(800);
                 dhxLayout.cells(“a”).setText(“Site Tree”);
                 dhxLayout.cells(“b”).setText(“Inforamtion”);
                 tree.setImagePath("…/codebase/imgs/csh_bluefolders/");
              tree.enableSmartXMLParsing(true);
              tree.enableKeyboardNavigation(true);
              tree.enableKeySearch(true);
              tree.enableTreeLines(true);
              tree.enableMultiselection(true);                           
               tree.setImageArrays(“plus”,“open2.gif”,“open2.gif”,“open2.gif”,“open2.gif”,“open2.gif”);
              tree.setImageArrays(“minus”,“close2.gif”,“close2.gif”,“close2.gif”,“close2.gif”,“close2.gif”);
              tree.enableDragAndDrop(true);
              tree.setDragBehavior(“complex”);
              tree.enableItemEditor(true);
              tree.setEditStartAction(false,true);
               tree.setOnSelectStateChange(loadTheForm);
              tree.enableContextMenu(menu);
             tree.attachEvent(“onXLE”,function(a,id){
             var ids = tree.getAllSubItems(id).split(",");
                 for ( var i=0; i< ids.length; i++)
                 fixImage(ids[i]);
               });
             
              tree.attachEvent(“onBeforeContextMenu”,function(itemId){               
                  var ntype = getNodeType(itemId);
                  if(ntype==1)
                    {
                        menu.hideItem(‘show_site_info’);
                        menu.showItem(‘add_site’);
                        menu.showItem(‘add_device’);
                        menu.hideItem(‘add_oc12’);   
                        menu.hideItem(‘add_oc48’);                   
                        menu.hideItem(‘add_ds3’);
                        menu.hideItem(‘add_ds3_segment’);
                        menu.hideItem(‘add_ds1’);
                        menu.showItem(‘delete’);
                    }
                else if(ntype==2)
                    {
                        menu.hideItem(‘show_site_info’);
                        menu.hideItem(‘add_site’);
                        menu.showItem(‘add_device’);
                        menu.showItem(‘add_oc12’);                       
                        menu.showItem(‘add_oc48’);           
                        menu.hideItem(‘add_ds3’);
                        menu.hideItem(‘add_ds3_segment’);
                        menu.hideItem(‘add_ds1’);                   
                        menu.showItem(‘delete’);
                    }
                else if(ntype==3)
                    {
                        menu.hideItem(‘show_site_info’);
                        menu.hideItem(‘add_site’);
                        menu.hideItem(‘add_device’);
                        menu.showItem(‘add_oc12’);
                        menu.showItem(‘add_oc48’);
                        menu.showItem(‘add_ds3’);
                        menu.hideItem(‘add_ds3_segment’);
                        menu.hideItem(‘add_ds1’);                       
                        menu.showItem(‘delete’);
                    }
                else if(ntype==4)
                    {
                        menu.hideItem(‘show_site_info’);
                        menu.hideItem(‘add_site’);
                        menu.hideItem(‘add_device’);
                        menu.hideItem(‘add_oc12’);
                        menu.hideItem(‘add_oc48’);
                        menu.showItem(‘add_ds3’);
                        menu.showItem(‘add_ds3_segment’);
                        menu.hideItem(‘add_ds1’);                       
                        menu.showItem(‘delete’);
                    }
                    else if(ntype==5)
                    {
                        menu.hideItem(‘show_site_info’);
                        menu.hideItem(‘add_site’);
                        menu.hideItem(‘add_device’);
                        menu.hideItem(‘add_oc12’);   
                        menu.hideItem(‘add_oc48’);
                        menu.hideItem(‘add_ds3’);
                        menu.showItem(‘add_ds3_segment’);
                        menu.showItem(‘add_ds1’);                       
                        menu.showItem(‘delete’);
                    }
                    else if(ntype==6)
                    {
                        menu.hideItem(‘show_site_info’);
                        menu.hideItem(‘add_site’);
                        menu.hideItem(‘add_device’);
                        menu.hideItem(‘add_oc12’);   
                        menu.hideItem(‘add_oc48’);
                        menu.hideItem(‘add_ds3’);
                        menu.hideItem(‘add_ds3_segment’);
                        menu.showItem(‘add_ds1’);                       
                        menu.showItem(‘delete’);
                    }
                    else
                    alert(“There is a problem in the script”);                   
                return true
            });
              tree.setXMLAutoLoading(“php/get.php”);
              tree.loadXML(“php/get.php”);   
                myDataProcessor = new dataProcessor(“php/update.php”);
                myDataProcessor.init(tree);
                   


Hello,


the answer will be sent by email.