/** Sets whether this container is open. * * <p>Note: if you use a model as the data to render, don't use setOpen(). It'll tangle the lifecycle with model * You should control the model directly. * For example, you can use setClose() of GroupsModelArray */ public void setOpen(boolean open) { if (_open != open) { _open = open; smartUpdate("open", _open); final Rows rows = (Rows) getParent(); if (rows != null) rows.addVisibleItemCount(isOpen() ? getVisibleItemCount() : -getVisibleItemCount()); } }
public boolean setVisible(boolean visible) { if (isVisible() != visible) { final Rows rows = (Rows) getParent(); if (rows != null) { final Group g = rows.getGroup(getIndex()); if (g == null || g.isOpen()) rows.addVisibleItemCount(visible ? 1 : -1); } } return super.setVisible(visible); }
addVisibleItemCount(isRemove ? -1 : 1); if (preRow == null) { if (!group.isOpen()) { addVisibleItemCount(isRemove ? group.getVisibleItemCount() : -group.getVisibleItemCount()); if (preGroup != null) { if (!preGroup.isOpen() && group.isOpen()) addVisibleItemCount(isRemove ? -group.getVisibleItemCount() : group.getVisibleItemCount()); else if (preGroup.isOpen() && !group.isOpen()) addVisibleItemCount(isRemove ? group.getVisibleItemCount() : -group.getVisibleItemCount()); } else { if (!group.isOpen()) addVisibleItemCount(isRemove ? group.getVisibleItemCount() : -group.getVisibleItemCount());
final Rows rows = (Rows) getParent(); if (rows != null) { rows.addVisibleItemCount(_open ? getVisibleItemCount() : -getVisibleItemCount()); final Grid grid = getGrid(); if (grid != null) {