/** Returns the {@link Treerow} that is associated with * this treechildren, or null if no such treerow. * In other words, it is {@link Treeitem#getTreerow} of * {@link #getParent}. * * @since 2.4.1 * @see Treerow#getLinkedTreechildren */ public Treerow getLinkedTreerow() { final Component parent = getParent(); return parent instanceof Treeitem ? ((Treeitem) parent).getTreerow() : null; }
Set<Treeitem> oldSelection; ... @Command public void select(@BindingParam("tree")Tree tree){ // delete Set<Treeitem> unselected = oldSelected.removeAll(tree.getSelectedItems()); for(Treeitem x : unselected){ x.getTreerow().getLastChild().setParent(null); } // add tree.getSelectedItem().getTreerow().appendChild(getCombobox()); oldSelection = tree.getSelectedItems() }
@SuppressWarnings("unchecked") protected void smartUpdate(String name, Object value) { Component comp = getParent(); if (comp instanceof Treeitem) { Treerow tr = ((Treeitem) comp).getTreerow(); if (tr != null) tr.smartUpdate(name, value); } else if (comp instanceof Tree) { ((Tree) comp).smartUpdate(name, value); } else { // do it later for bug ZK-2206 Map<String, Object> attributes = (Map<String, Object>) getAttribute( "org.zkoss.zul.Treechildren_smartUpdate"); if (attributes == null) { attributes = new LinkedHashMap<String, Object>(3); setAttribute("org.zkoss.zul.Treechildren_smartUpdate", attributes); } attributes.put(name, value); } }
v2 = handleCase((Comparable) ti2.getValue()); } else { List tcs1 = ti1.getTreerow().getChildren(); if (index >= tcs1.size()) v1 = null; v1 = handleCase(_byval ? ti1.getValue() : tc.getLabel()); List lcs2 = ti2.getTreerow().getChildren(); if (index >= lcs2.size()) v2 = null;
public void render(Component comp, Writer out) throws IOException { final Treeitem self = (Treeitem) comp; final SmartWriter wh = new SmartWriter(out); final Tree tree = self.getTree(); if ("paging".equals(tree.getMold())) { if (self.isVisible() && ZulFns.shallVisitTree(tree, self)) { if (ZulFns.shallRenderTree(tree)) wh.write(self.getTreerow()); if (self.isOpen()) wh.write(self.getTreechildren()); } } else { wh.write(self.getTreerow()).write(self.getTreechildren()); } } }
if (item.getTreerow() != null) // just in case item.getTreerow().detach(); Treechildren tc = item.getTreechildren(); _renderer.render(item, node, index);
Treerow tr = null; ti.setValue(node); if (ti.getTreerow() == null) { tr = new Treerow(); tr.setParent(ti); } else { tr = ti.getTreerow(); tr.getChildren().clear();
private void renderChildren(Renderer renderer, Treechildren parent, Object node) throws Throwable { final int initSize = initRodSize(); for (int i = 0, j = _model.getChildCount(node); i < j; i++) { Treeitem ti = newUnloadedItem(); ti.setParent(parent); Object childNode = _model.getChild(node, i); // Bug ZK-1696: must render all opened node to have correct page count TreeOpenableModel model = (TreeOpenableModel) _model; // render nodes when no ROD or within ROD range or opened node if (initSize < 0 || i < initSize || model.isPathOpened(_model.getPath(childNode))) { renderChildren0(renderer, parent, ti, childNode, i); } else { //render empty row ti.appendChild(new Treerow()); ti.getTreerow().appendChild(new Treecell()); } } }
protected void redrawChildren(Writer out) throws IOException { Tree tree = getTree(); if (!tree.inPagingMold()) { super.redrawChildren(out); } else if (isRealVisible() && shallVisitTree(tree, this)) { if (shallRenderTree(tree)) { ComponentCtrl child = getTreerow(); if (child != null) child.redraw(out); } boolean close = !isOpen(); ComponentCtrl child = getTreechildren(); if (child != null) { if (close) ((Component) child).setAttribute(Attributes.SHALL_RENDER_ITEM, Boolean.TRUE); child.redraw(out); if (close) ((Component) child).removeAttribute(Attributes.SHALL_RENDER_ITEM); } } }
Treerow tr = null; item.setValue(data); if (item.getTreerow() == null) { tr = new Treerow(); tr.setParent(item); } else { tr = item.getTreerow(); tr.getChildren().clear();