Class TreeItemImpl
- All Implemented Interfaces:
Serializable,TreeItem
- Author:
- Bogdan Stefanescu
- See Also:
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionTreeItemImpl(ContentProvider provider, Object data) TreeItemImpl(TreeItem parent, Object data) TreeItemImpl(TreeItem parent, ContentProvider provider, Object data) -
Method Summary
Modifier and TypeMethodDescriptionprotected TreeItemaccept(TreeItemVisitor visitor) Accepts a visitor.voidcollapse()Collapses this item.booleanTreeItem[]expand()Expands the item.Finds the item given its relative path to that item.findAndReveal(Path path) Finds the item given its relative path to that item and expand all its parents so that the item will be visible in the tree.Gets the child item given its name.TreeItem[]Gets the cached children.Gets the current content provider.String[]getLabel()Gets the label to be displayed for this item.getName()Gets this node name.Gets the object attached to this item.Gets the parent item or null if this is the root item.getPath()Gets the item path.intReturns the validation state.booleanTests whether this item has any children.voidinvalidate(int type) Invalidates the item.booleanTests whether or not the item may have children.booleanTests whether or not the item is expanded.protected voidprotected voidloadData()voidrefresh(int type) Reloads item information like label, properties and children depending on the specified refresh type.toString()voidvalidate()Validates the item.voidvoid
-
Field Details
-
F_CONTAINER
public static final int F_CONTAINER- See Also:
-
F_EXPANDED
public static final int F_EXPANDED- See Also:
-
EMPTY_CHILDREN
-
HAS_CHILDREN
-
provider
-
parent
-
path
-
label
-
facets
-
children
-
obj
-
state
protected volatile int state
-
-
Constructor Details
-
TreeItemImpl
-
TreeItemImpl
-
TreeItemImpl
-
-
Method Details
-
hasChildren
public boolean hasChildren()Description copied from interface:TreeItemTests whether this item has any children.This method will not load children if not already loaded.
- Specified by:
hasChildrenin interfaceTreeItem- Returns:
- true if the children item has children, false otherwise
-
getChildren
Description copied from interface:TreeItemGets the cached children.The children items are created using the content provider the first time you call
TreeItem.expand()- Specified by:
getChildrenin interfaceTreeItem
-
getObject
Description copied from interface:TreeItemGets the object attached to this item.The nature of the object depends on the registered content provider which will populate the tree branches when
ContentProvider.getChildren(Object)is called. The root item is specified by usingTreeModel.setInput(Object) -
getPath
Description copied from interface:TreeItemGets the item path.The path is uniquely identifying the item in its tree and is consistent with the tree structure so the parent item will have the same path as the child minus the last segment. The root item path will always be "/". (The root item should not be displayed in the tree - it has no label or other properties.)
Paths are useful to locate items in the tree using
findmethods. -
getParent
Description copied from interface:TreeItemGets the parent item or null if this is the root item. -
getContentProvider
Description copied from interface:TreeItemGets the current content provider.- Specified by:
getContentProviderin interfaceTreeItem- Returns:
- the content provider. never return null
-
getName
Description copied from interface:TreeItemGets this node name.This is the same as the last segment on the item path
-
getLabel
Description copied from interface:TreeItemGets the label to be displayed for this item. -
getFacets
-
isContainer
public boolean isContainer()Description copied from interface:TreeItemTests whether or not the item may have children.- Specified by:
isContainerin interfaceTreeItem- Returns:
- true if a container, false otherwise
-
find
Description copied from interface:TreeItemFinds the item given its relative path to that item.This method will search only the loaded items - it will not make additional calls to provider to get new items.
-
findAndReveal
Description copied from interface:TreeItemFinds the item given its relative path to that item and expand all its parents so that the item will be visible in the tree.The item itself will not be expanded. Use
TreeItem.expand()on the returned item if you want so.This method is loading any parent if not already loaded by using the registered provider.
- Specified by:
findAndRevealin interfaceTreeItem- Parameters:
path- the item path to find- Returns:
- the item or null if none
-
getChild
Description copied from interface:TreeItemGets the child item given its name.This method will force loading children using the provider if not already loaded or if invalidated.
-
_getChild
-
expand
Description copied from interface:TreeItemExpands the item.This will load children items from the provider if they are not already loaded or if invalidated.
-
loadData
protected void loadData() -
validateData
public void validateData() -
validateChildren
public void validateChildren() -
loadChildren
protected void loadChildren() -
collapse
public void collapse()Description copied from interface:TreeItemCollapses this item. This will hide any loaded children. -
isExpanded
public boolean isExpanded()Description copied from interface:TreeItemTests whether or not the item is expanded.- Specified by:
isExpandedin interfaceTreeItem- Returns:
- true of expanded, false otherwise
-
refresh
public void refresh(int type) Description copied from interface:TreeItemReloads item information like label, properties and children depending on the specified refresh type.The argument is used to specify the type of refresh and can have one of the following values:
TreeItem.DATA- to refresh only item data like labelsTreeItem.CHILDREN- to refresh only item childrenTreeItem.BOTH- to refresh both data and children
-
validate
public void validate()Description copied from interface:TreeItemValidates the item.If the item was not invalidated do nothing.
-
invalidate
public void invalidate(int type) Description copied from interface:TreeItemInvalidates the item.This will force reloading item data and/or children next time item and/or children are accessed. The argument is used to specify the type of invalidation and can have one of the following values:
TreeItem.DATA- to invalidate only item data like labelsTreeItem.CHILDREN- to invalidate only item childrenTreeItem.BOTH- to invalidate both data and children
- Specified by:
invalidatein interfaceTreeItem- Parameters:
type- of invalidation
-
getValidationState
public int getValidationState()Description copied from interface:TreeItemReturns the validation state.Can be one of:
TreeItem.DATA- the item data is invalid (not loaded or invalidated)TreeItem.CHILDREN- the item children are invalidTreeItem.BOTH- both data and children are invalid
- Specified by:
getValidationStatein interfaceTreeItem- Returns:
- the validation state.
-
accept
Description copied from interface:TreeItemAccepts a visitor. This is to support visitor pattern. -
toString
-
equals
-