Mega Code Archive

 
Categories / Java / GWT
 

Tree data can be specified as a tree of nodes where each node lists its children (Smart GWT)

/*  * SmartGWT (GWT for SmartClient)  * Copyright 2008 and beyond, Isomorphic Software, Inc.  *  * SmartGWT is free software; you can redistribute it and/or modify it  * under the terms of the GNU Lesser General Public License version 3  * as published by the Free Software Foundation.  SmartGWT is also  * available under typical commercial license terms - see  * http://smartclient.com/license  * This software is distributed in the hope that it will be useful,  * but WITHOUT ANY WARRANTY; without even the implied warranty of  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU  * Lesser General Public License for more details.  */ package com.smartgwt.sample.showcase.client; import com.google.gwt.core.client.EntryPoint; import com.google.gwt.user.client.ui.RootPanel; import com.smartgwt.client.types.TreeModelType; import com.smartgwt.client.widgets.Canvas; import com.smartgwt.client.widgets.tree.Tree; import com.smartgwt.client.widgets.tree.TreeGrid; import com.smartgwt.client.widgets.tree.TreeGridField; import com.smartgwt.client.widgets.tree.TreeNode; public class Showcase implements EntryPoint {   public void onModuleLoad() {     RootPanel.get().add(getViewPanel());   }   public Canvas getViewPanel() {     Tree employeeTree = new Tree();     employeeTree.setModelType(TreeModelType.CHILDREN);     employeeTree.setNameProperty("Name");     employeeTree.setChildrenProperty("directReports");     employeeTree.setRoot(employeeRoot);     TreeGrid employeeTreeGrid = new TreeGrid();     employeeTreeGrid.setWidth(500);     employeeTreeGrid.setHeight(400);     employeeTreeGrid.setNodeIcon("icons/16/person.png");     employeeTreeGrid.setFolderIcon("icons/16/person.png");     employeeTreeGrid.setShowOpenIcons(false);     employeeTreeGrid.setShowDropIcons(false);     employeeTreeGrid.setClosedIconSuffix("");     employeeTreeGrid.setFields(new TreeGridField("Name"));     employeeTreeGrid.setData(employeeTree);     employeeTreeGrid.getData().openAll();     return employeeTreeGrid;   }   public static class EmployeeTreeNode extends TreeNode {     public EmployeeTreeNode(String employeeId, String name) {       this(employeeId, name, new EmployeeTreeNode[] {});     }     public EmployeeTreeNode(String employeeId, String name, EmployeeTreeNode... children) {       setAttribute("EmployeeId", employeeId);       setAttribute("Name", name);       setAttribute("directReports", children);     }   }   public static final TreeNode employeeRoot = new EmployeeTreeNode("1", "Root",       new EmployeeTreeNode("4", "Charles Madigen", new EmployeeTreeNode("188", "Rogine Leger"),           new EmployeeTreeNode("189", "Gene Porter", new EmployeeTreeNode("265", "Olivier Doucet"),               new EmployeeTreeNode("264", "Cheryl Pearson")))); }                  SmartGWT.zip( 9,880 k)