List of usage examples for com.google.gwt.user.client.ui TreeItem setParentItem
void setParentItem(TreeItem parent)
From source file:org.iucn.sis.client.ui.TreeTable.java
License:Apache License
/** * Constructs an empty tree.//from w w w . jav a 2 s . c om */ public TreeTable() { Element tableElem = getElement(); headElem = DOM.createElement("thead"); Element tr = DOM.createTR(); DOM.appendChild(headElem, tr); DOM.insertChild(tableElem, headElem, 0); DOM.setStyleAttribute(getElement(), "position", "relative"); // focusable = impl.createFocusable(); // DOM.setStyleAttribute(focusable, "fontSize", "0"); // DOM.setStyleAttribute(focusable, "position", "absolute"); // DOM.setIntStyleAttribute(focusable, "zIndex", -1); // DOM.appendChild(getElement(), focusable); sinkEvents(Event.MOUSEEVENTS | Event.ONCLICK | Event.KEYEVENTS); // DOM.sinkEvents(focusable, Event.FOCUSEVENTS | Event.KEYEVENTS | // DOM.getEventsSunk(focusable)); // The 'root' item is invisible and serves only as a container // for all top-level items. root = new TreeItem() { @Override public void addItem(TreeItem item) { // If this element already belongs to a tree or tree item, // remove it. if ((item.getParentItem() != null) || (item.getTreeTable() != null)) { item.remove(); } item.setTreeTable(this.getTreeTable()); // Explicitly set top-level items' parents to null. item.setParentItem(null); getChildren().add(item); // Use no margin on top-most items. DOM.setIntStyleAttribute(item.getElement(), "marginLeft", 0); } @Override public void removeItem(TreeItem item) { if (!getChildren().contains(item)) { return; } // Update Item state. item.setTreeTable(null); item.setParentItem(null); getChildren().remove(item); } }; root.setTreeTable(this); setStyleName("gwt-TreeTable"); }