<style type="text/css">
.compact-demo .orgchart {
background: unset;
}
</style>
<h:form id="compactForm">
<h:panelGroup layout="block" styleClass="compact-demo" style="margin:0 0 0.75rem 0;">
<pe:orgchart id="orgChart"
widgetVar="orgChartCompact"
value="#{compactOrgchartController.orgChartNode}"
nodeContent="title"
parentNodeSymbol="fa-users"
pan="true"
zoom="true"
direction="t2b"
style="height:480px">
</pe:orgchart>
</h:panelGroup>
<h:panelGroup layout="block" style="margin:0.75rem 0 0 0;">
<p:panel header="About Compact Mode">
Set <code>compact=true</code> on a node to display its children in a compact grid
inside the parent box.
<br/><br/>
In this sample, <strong>Bo Miao</strong> is compact and includes a nested compact node
(<strong>Si Xuan</strong>). Use the green corner controls to switch between compact and
loose layouts.
</p:panel>
</h:panelGroup>
</h:form>
@Named("compactOrgchartController")
@ViewScoped
public class CompactOrgchartController implements Serializable {
private static final long serialVersionUID = 1L;
private OrgChartNode orgChartNode;
public CompactOrgchartController() {
init();
}
public void init() {
orgChartNode = new DefaultOrgChartNode("root", "Lao Lao", "General Manager");
final DefaultOrgChartNode boMiao = new DefaultOrgChartNode("n1", "Bo Miao", "Department Manager");
boMiao.setCompact(true);
boMiao.addChild(new DefaultOrgChartNode("n1a", "Fei Xuan", "Engineer"));
boMiao.addChild(new DefaultOrgChartNode("n1b", "Er Xuan", "Engineer"));
boMiao.addChild(new DefaultOrgChartNode("n1c", "San Xuan", "Engineer"));
final DefaultOrgChartNode siXuan = new DefaultOrgChartNode("n1d", "Si Xuan", "Engineer");
siXuan.setCompact(true);
siXuan.addChild(new DefaultOrgChartNode("n1d1", "Feng Shou", "Engineer"));
siXuan.addChild(new DefaultOrgChartNode("n1d2", "Er Shou", "Engineer"));
siXuan.addChild(new DefaultOrgChartNode("n1d3", "San Shou", "Engineer"));
siXuan.addChild(new DefaultOrgChartNode("n1d4", "Si Shou", "Engineer"));
boMiao.addChild(siXuan);
boMiao.addChild(new DefaultOrgChartNode("n1e", "Wu Xuan", "Engineer"));
final DefaultOrgChartNode suMiao = new DefaultOrgChartNode("n2", "Su Miao", "Department Manager");
suMiao.addChild(new DefaultOrgChartNode("n2a", "Tie Hua", "Senior Engineer"));
final DefaultOrgChartNode heiHei = new DefaultOrgChartNode("n2b", "Hei Hei", "Senior Engineer");
heiHei.addChild(new DefaultOrgChartNode("n2b1", "Dan Dan", "Engineer"));
heiHei.addChild(new DefaultOrgChartNode("n2b2", "Er Dan", "Engineer"));
heiHei.addChild(new DefaultOrgChartNode("n2b3", "San Dan", "Engineer"));
suMiao.addChild(heiHei);
suMiao.addChild(new DefaultOrgChartNode("n2c", "Pang Pang", "Senior Engineer"));
final DefaultOrgChartNode hongMiao = new DefaultOrgChartNode("n3", "Hong Miao", "Department Manager");
orgChartNode.addChild(boMiao);
orgChartNode.addChild(suMiao);
orgChartNode.addChild(hongMiao);
}
public OrgChartNode getOrgChartNode() {
return orgChartNode;
}
public void setOrgChartNode(final OrgChartNode orgChartNode) {
this.orgChartNode = orgChartNode;
}
}