Package com.google.gwt.user.client.ui
Class TreeItem
java.lang.Object
com.google.gwt.user.client.ui.UIObject
com.google.gwt.user.client.ui.TreeItem
- All Implemented Interfaces:
HasSafeHtml
,HasHTML
,HasText
,HasTreeItems
,HasVisibility
,IsTreeItem
An item that can be contained within a
Tree
.
Each tree item is assigned a unique DOM id in order to support ARIA. See
Accessibility
for more information.
Example
public class TreeExample implements EntryPoint { @Override public void onModuleLoad() { // Create a tree with a few items in it. TreeItem root = new TreeItem(); root.setText("root"); root.addTextItem("item0"); root.addTextItem("item1"); root.addTextItem("item2"); // Add a CheckBox to the tree TreeItem item = new TreeItem(new CheckBox("item3")); root.addItem(item); Tree t = new Tree(); t.addItem(root); // Add it to the root panel. RootPanel.get().add(t); } }
-
Nested Class Summary
Nested classes/interfaces inherited from class com.google.gwt.user.client.ui.UIObject
UIObject.DebugIdImpl, UIObject.DebugIdImplEnabled
Nested classes/interfaces inherited from interface com.google.gwt.user.client.ui.HasTreeItems
HasTreeItems.ForIsWidget
-
Field Summary
Fields inherited from class com.google.gwt.user.client.ui.UIObject
DEBUG_ID_PREFIX, MISSING_ELEMENT_ERROR, SETELEMENT_TWICE_ERROR
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionAdds a child tree item containing the specified html.void
addItem
(IsTreeItem isItem) Adds another item as a child to this one.void
Adds another item as a child to this one.Adds a child tree item containing the specified widget.addTextItem
(String itemText) Adds a child tree item containing the specified text.(package private) void
addTreeItems
(List<TreeItem> accum) Returns theTreeItem
aspect of the receiver.getChild
(int index) Gets the child at the specified index.int
Gets the number of children contained in this item.int
getChildIndex
(TreeItem child) Gets the index of the specified child item.(package private) Element
protected Focusable
Returns a suggestedFocusable
instance to use when this tree item is selected.protected HasFocus
Deprecated.getHTML()
Gets this object's contents as HTML.(package private) Element
(package private) Element
Gets this item's parent.boolean
getState()
Gets whether this item's children are displayed.getText()
Gets this object's text.getTitle()
Gets the title associated with this object.final Tree
getTree()
Gets the tree that contains this item.Gets the user-defined object associated with this item.Gets theWidget
associated with this tree item.(package private) void
insertItem
(int beforeIndex, SafeHtml itemHtml) Inserts a child tree item at the specified index containing the specified html.void
insertItem
(int beforeIndex, TreeItem item) Inserts an item as a child to this one.insertItem
(int beforeIndex, Widget widget) Inserts a child tree item at the specified index containing the specified widget.insertTextItem
(int beforeIndex, String itemText) Inserts a child tree item at the specified index containing the specified text.(package private) boolean
boolean
Determines whether this item is currently selected.(package private) void
Remove a tree item from its parent if it has one.protected void
onEnsureDebugId
(String baseID) Affected Elements: -content = The text orWidget
next to the image. -child# = The child at the specified index.void
remove()
Removes this item from its tree.void
removeItem
(IsTreeItem isItem) Removes one of this item's children.void
removeItem
(TreeItem item) Removes one of this item's children.void
Removes all of this item's children.void
Sets this object's contents via known-safe HTML.void
Sets this object's contents via HTML.(package private) void
setParentItem
(TreeItem parent) void
setSelected
(boolean selected) Selects or deselects this item.void
setState
(boolean open) Sets whether this item's children are displayed.void
setState
(boolean open, boolean fireEvents) Sets whether this item's children are displayed.void
Sets this object's text.void
Sets the title associated with this object.(package private) void
void
setUserObject
(Object userObj) Sets the user-defined object associated with this item.void
Sets the current widget.(package private) void
updateState
(boolean animate, boolean updateTreeSelection) (package private) void
Methods inherited from class com.google.gwt.user.client.ui.UIObject
addStyleDependentName, addStyleName, ensureDebugId, ensureDebugId, ensureDebugId, getAbsoluteLeft, getAbsoluteTop, getElement, getOffsetHeight, getOffsetWidth, getStyleElement, getStyleName, getStyleName, getStylePrimaryName, getStylePrimaryName, isVisible, isVisible, removeStyleDependentName, removeStyleName, replaceElement, resolvePotentialElement, setElement, setElement, setHeight, setPixelSize, setSize, setStyleDependentName, setStyleName, setStyleName, setStyleName, setStyleName, setStylePrimaryName, setStylePrimaryName, setVisible, setVisible, setWidth, sinkBitlessEvent, sinkEvents, toString, unsinkEvents
-
Field Details
-
IMAGE_PAD
static final int IMAGE_PAD- See Also:
-
-
Constructor Details
-
TreeItem
public TreeItem()Creates an empty tree item. -
TreeItem
Constructs a tree item with the givenWidget
.- Parameters:
widget
- the item's widget
-
TreeItem
TreeItem(boolean isRoot) Creates an empty tree item.- Parameters:
isRoot
- true if this item is the root of a tree
-
-
Method Details
-
addItem
Adds another item as a child to this one.- Specified by:
addItem
in interfaceHasTreeItems
- Parameters:
item
- the item to be added
-
addItem
Adds another item as a child to this one.- Specified by:
addItem
in interfaceHasTreeItems
- Parameters:
isItem
- the wrapper of item to be added
-
addItem
Adds a child tree item containing the specified widget.- Specified by:
addItem
in interfaceHasTreeItems
- Parameters:
widget
- the widget to be added- Returns:
- the item that was added
-
addTextItem
Adds a child tree item containing the specified text.- Specified by:
addTextItem
in interfaceHasTreeItems
- Parameters:
itemText
- the text of the item to be added- Returns:
- the item that was added
-
asTreeItem
Description copied from interface:IsTreeItem
Returns theTreeItem
aspect of the receiver.- Specified by:
asTreeItem
in interfaceIsTreeItem
-
getChild
Gets the child at the specified index.- Parameters:
index
- the index to be retrieved- Returns:
- the item at that index
-
getChildCount
public int getChildCount()Gets the number of children contained in this item.- Returns:
- this item's child count.
-
getChildIndex
Gets the index of the specified child item.- Parameters:
child
- the child item to be found- Returns:
- the child's index, or
-1
if none is found
-
getHTML
Description copied from interface:HasHTML
Gets this object's contents as HTML. -
getParentItem
Gets this item's parent.- Returns:
- the parent item
-
getState
public boolean getState()Gets whether this item's children are displayed.- Returns:
true
if the item is open
-
getText
Description copied from interface:HasText
Gets this object's text. -
getTree
Gets the tree that contains this item.- Returns:
- the containing tree
-
getUserObject
Gets the user-defined object associated with this item.- Returns:
- the item's user-defined object
-
getWidget
Gets theWidget
associated with this tree item.- Returns:
- the widget
-
getTitle
Description copied from class:UIObject
Gets the title associated with this object. The title is the 'tool-tip' displayed to users when they hover over the object. -
setTitle
Description copied from class:UIObject
Sets the title associated with this object. The title is the 'tool-tip' displayed to users when they hover over the object. -
insertItem
Inserts an item as a child to this one.- Parameters:
beforeIndex
- the index where the item will be inserteditem
- the item to be added- Throws:
IndexOutOfBoundsException
- if the index is out of range
-
insertItem
Inserts a child tree item at the specified index containing the specified widget.- Parameters:
beforeIndex
- the index where the item will be insertedwidget
- the widget to be added- Returns:
- the item that was added
- Throws:
IndexOutOfBoundsException
- if the index is out of range
-
insertTextItem
Inserts a child tree item at the specified index containing the specified text.- Parameters:
beforeIndex
- the index where the item will be inserteditemText
- the item's text- Returns:
- the item that was added
- Throws:
IndexOutOfBoundsException
- if the index is out of range
-
isSelected
public boolean isSelected()Determines whether this item is currently selected.- Returns:
true
if it is selected
-
remove
public void remove()Removes this item from its tree. -
removeItem
Removes one of this item's children.- Specified by:
removeItem
in interfaceHasTreeItems
- Parameters:
item
- the item to be removed
-
removeItem
Removes one of this item's children.- Specified by:
removeItem
in interfaceHasTreeItems
- Parameters:
isItem
- the wrapper of item to be removed
-
removeItems
public void removeItems()Removes all of this item's children.- Specified by:
removeItems
in interfaceHasTreeItems
-
setHTML
Description copied from interface:HasHTML
Sets this object's contents via HTML. Use care when setting an object's HTML; it is an easy way to expose script-based security problems. Consider usingHasText.setText(String)
whenever possible. -
setSelected
public void setSelected(boolean selected) Selects or deselects this item.- Parameters:
selected
-true
to select the item,false
to deselect it
-
setState
public void setState(boolean open) Sets whether this item's children are displayed.- Parameters:
open
- whether the item is open
-
setState
public void setState(boolean open, boolean fireEvents) Sets whether this item's children are displayed.- Parameters:
open
- whether the item is openfireEvents
-true
to allow open/close events to be
-
setText
Description copied from interface:HasText
Sets this object's text. -
setUserObject
Sets the user-defined object associated with this item.- Parameters:
userObj
- the item's user-defined object
-
setWidget
Sets the current widget. Any existing child widget will be removed.- Parameters:
newWidget
- Widget to set
-
getFocusable
Returns a suggestedFocusable
instance to use when this tree item is selected. The tree maintains focus if this method returns null. By default, if the tree item contains a focusable widget, that widget is returned. Note, theTree
will ignore this value if the user clicked on an input element such as a button or text area when selecting this item.- Returns:
- the focusable item
-
getFocusableWidget
Deprecated.usegetFocusable()
insteadReturns the widget, if any, that should be focused on if this TreeItem is selected.- Returns:
- widget to be focused.
-
onEnsureDebugId
Affected Elements:- -content = The text or
Widget
next to the image. - -child# = The child at the specified index.
- Overrides:
onEnsureDebugId
in classUIObject
- Parameters:
baseID
- the base ID used by the main element- See Also:
- -content = The text or
-
addTreeItems
-
getChildren
-
getContentElem
Element getContentElem() -
getImageElement
Element getImageElement() -
getImageHolderElement
Element getImageHolderElement() -
initChildren
void initChildren() -
isFullNode
boolean isFullNode() -
maybeRemoveItemFromParent
Remove a tree item from its parent if it has one.- Parameters:
item
- the tree item to remove from its parent
-
setParentItem
-
setTree
-
updateState
void updateState(boolean animate, boolean updateTreeSelection) -
updateStateRecursive
void updateStateRecursive()
getFocusable()
instead