UIXRenderingContext context,
UINode node
) throws IOException
{
boolean initialLinkSelectedStatus = LinkUtils.isSelected(context);
UIXHierarchy component = getHierarchyBase(context, node);
if (component != null)
{
UINode stamp = getStamp(context, node);
if(stamp != null)
{
// Save the current key
Object oldPath = component.getRowKey();
boolean isNewPath = setNewPath(context, node, component);
if (isNewPath)
{
int size = component.getRowCount();
int rowIndex = component.getRowIndex();
boolean needsSeparator = false;
for (int i = 0; i < size; i++)
{
component.setRowIndex(i);
boolean rendered = isRendered(context, stamp);
if (rendered)
{
if (needsSeparator)
renderBetweenNodes(context, node);
else
needsSeparator = true;
renderStamp(context, stamp, i==rowIndex);
}
}
if (getVisibleIndexedChildCount(context, node) > 0)
renderBetweenNodes(context, node);
// Restore the old path
component.setRowKey(oldPath);
}
}
}
super.renderContent(context, node);