@Override public Object getParent(Object itemId) { // If the wrapped container implements the method directly, use it if (hierarchical) { return ((Container.Hierarchical) container).getParent(itemId); } return parent.get(itemId); }
/** * @deprecated since 5.4.6, use #isDescendantOf on the TreeView itself, not on the TreeTable. */ @Deprecated public boolean isDescendantOf(final Object itemId, final Object parentId) { Hierarchical container = getContainerDataSource(); Object id = itemId; while (!container.isRoot(id)) { id = container.getParent(id); if (id.equals(parentId)) { return true; } } return false; } }
/** * Consider adding getDepth to {@link Collapsible}, might help * scalability with some container implementations. */ @Override public int getDepth(Object itemId) { int depth = 0; Hierarchical hierarchicalContainer = getContainerDataSource(); while (!hierarchicalContainer.isRoot(itemId)) { depth++; itemId = hierarchicalContainer.getParent(itemId); } return depth; }
@Override public Object getParent(Object itemId) { return getContainerDataSource().getParent(itemId); }
@Override public Object getParent(Object itemId) { return hierarchical.getParent(itemId); }
/** * Gets the ID of the parent Item of the specified Item. * * @see Container.Hierarchical#getParent(Object) */ @Override public Object getParent(Object itemId) { return ((Container.Hierarchical) items).getParent(itemId); }