|  |  | 
 |  |  |             for (i = 0; i < s; i++) | 
 |  |  |             { | 
 |  |  |              | 
 |  |  |                KXMLDOMElement& e = *new KXMLDOMElement(nlist.item(i)); | 
 |  |  |                KXMLDOMElement e = nlist.item(i); | 
 |  |  |                xstring name = e.selectSingleNode(L"@name").text(); | 
 |  |  |                HTREEITEM hw = xtreeview::InsertChildItem(wid, h, name,(LPARAM)&e , 15); | 
 |  |  |                HTREEITEM hw = tv_folder.InsertChildItem(h, name,e , 15); | 
 |  |  |                createSubTree(wid, hw, e); | 
 |  |  |             } | 
 |  |  |          return 1; | 
 |  |  | 
 |  |  |  | 
 |  |  |       int OnCreateTree() | 
 |  |  |       { | 
 |  |  |          int wid = tv_folder.GetId(); | 
 |  |  |          while (xtreeview::GetRootItem(wid) > 0) | 
 |  |  |             xtreeview::DeleteItem(wid, xtreeview::GetRootItem(wid)); | 
 |  |  |          //int wid = tv_folder.GetId(); | 
 |  |  |          while (!tv_folder.GetRootItem()) | 
 |  |  |             tv_folder.DeleteItem(tv_folder.GetRootItem()); | 
 |  |  |  | 
 |  |  |          xml x; | 
 |  |  |          x; | 
 |  |  | 
 |  |  |             int i; | 
 |  |  |             for (i = 0; i < len; i++) | 
 |  |  |             { | 
 |  |  |                KXMLDOMElement& e = *new KXMLDOMElement(nlist.item(i)); | 
 |  |  |                KXMLDOMElement e = nlist.item(i); | 
 |  |  |                xstring name = e.selectSingleNode(L"@name").text(); | 
 |  |  |                HTREEITEM h = xtreeview::InsertChildItem(wid, 0, name, name, (LPARAM)&e, 15); | 
 |  |  |                createSubTree(wid, h, e); | 
 |  |  |                xtreeview::ExpandItem(wid, h); | 
 |  |  |                HTREEITEM h = tv_folder.InsertChildItem(0,  name, e, 15); | 
 |  |  |                createSubTree(0,h, e); | 
 |  |  |                tv_folder.ExpandItem(h); | 
 |  |  |             } | 
 |  |  |             xtreeview::ExpandItem(wid, 0); | 
 |  |  |             tv_folder.ExpandItem( 0); | 
 |  |  |          } | 
 |  |  |  | 
 |  |  |          return 1; | 
 |  |  | 
 |  |  |          NMTREEVIEW& nmtv = *(NMTREEVIEW*)evt->notify.pnmh; | 
 |  |  |          HTREEITEM hItem = nmtv.itemNew.hItem; | 
 |  |  |  | 
 |  |  |          KXMLDOMElement e = xtreeview::GetItemData(tv_folder.GetId(), sItem); | 
 |  |  |          KXMLDOMElement e = tv_folder.GetItemData(hItem); | 
 |  |  |          xstring UserGroupID = e.selectSingleNode(L"@guid").text(); | 
 |  |  |          OnRetrieve(UserGroupID); | 
 |  |  |          return 1; | 
 |  |  | 
 |  |  |          if (comdid == L"xmMemberAdd") | 
 |  |  |          { | 
 |  |  |             HTREEITEM hItem = tv_folder.GetSelectedItem(); | 
 |  |  |             if (hItem < 0) return 1; | 
 |  |  |             if (!hItem) return 1; | 
 |  |  |             KXMLDOMElement e = tv_folder.GetItemData(hItem); | 
 |  |  |  | 
 |  |  |             xaserverarg arg; |