public Canvas getViewPanel() {
    Tree employeeTree = new Tree();
    employeeTree.setModelType(TreeModelType.PARENT);
    employeeTree.setRootValue(1);
    employeeTree.setNameProperty("Name");
    employeeTree.setIdField("EmployeeId");
    employeeTree.setParentIdField("ReportsTo");
    employeeTree.setOpenProperty("isOpen");
    employeeTree.setData(employeeData);

    TreeGridField formattedField = new TreeGridField("Name");
    formattedField.setCellFormatter(
        new CellFormatter() {
          public String format(Object value, ListGridRecord record, int rowNum, int colNum) {
            return record.getAttributeAsString("Job") + ": " + value;
          }
        });

    TreeGrid employeeTreeGrid = new TreeGrid();

    employeeTreeGrid.setWidth(500);
    employeeTreeGrid.setHeight(400);
    employeeTreeGrid.setNodeIcon("icons/16/person.png");
    employeeTreeGrid.setFolderIcon("icons/16/person.png");
    employeeTreeGrid.setCanReorderRecords(true);
    employeeTreeGrid.setCanAcceptDroppedRecords(true);
    employeeTreeGrid.setShowOpenIcons(false);
    employeeTreeGrid.setDropIconSuffix("into");
    employeeTreeGrid.setClosedIconSuffix("");
    employeeTreeGrid.setData(employeeTree);
    employeeTreeGrid.setFields(formattedField);

    return employeeTreeGrid;
  }
  public AddressbookTree() {
    super();
    SectionStackSection section = new SectionStackSection();
    section.setCanCollapse(false);
    section.setExpanded(true);
    section.setResizeable(true);

    TreeGrid tree = new TreeGrid();
    tree.setWidth100();
    tree.setHeight100();
    tree.setAnimateFolderTime(100);
    tree.setAnimateFolders(true);
    tree.setAnimateFolderSpeed(1000);
    tree.setShowSortArrow(SortArrow.CORNER);
    tree.setShowAllRecords(true);
    tree.setLoadDataOnDemand(false);
    tree.setCanSort(false);
    tree.setCellHeight(17);
    tree.setShowHeader(false);

    TreeGridField field = new TreeGridField();
    field.setCanFilter(true);
    field.setName("name");
    field.setTitle("<b>SmartGWT Showcase</b>");
    tree.setFields(field);

    Tree treeData = new Tree();
    treeData.setModelType(TreeModelType.PARENT);
    treeData.setNameProperty("name");
    treeData.setOpenProperty("isOpen");
    treeData.setIdField("nodeID");
    treeData.setParentIdField("parentNodeID");
    treeData.setRootValue("root");
    treeData.setData(DemoData.getAddressBookTreeData());

    tree.setData(treeData);
    section.setItems(tree);

    setSections(section);
  }