Input Style

Free Themes

Built-in component themes created by the PrimeFaces Theme Designer.

Saga Saga
Vela Vela
Arya Arya

Legacy Free Themes

Luna Amber Luna Amber
Luna Blue Luna Blue
Luna Green Luna Green
Luna Pink Luna Pink
Nova Nova
Nova Nova Alt
Nova Nova Accent

PREMIUM TEMPLATES

Create awesome applications in no time using the premium templates and impress your users.

TreeTable Selection

Tree provides three selection modes, "single", "multiple" and "checkbox" in addition to the regular column based selection.

Single Selection
NameSizeType
Multiple Selection with metakey
NameSizeType
Checkbox Selection
NameSizeType

<h:form>
    <p:growl id="msgs" showDetail="true" escape="false"/>

    <div class="card">
        <h5>Single Selection</h5>
        <p:treeTable value="#{ttSelectionView.root1}" var="document" selectionMode="single"
                     selection="#{ttSelectionView.selectedNode}" style="margin-top:0">
            <p:column headerText="Name">
                <h:outputText value="#{document.name}"/>
            </p:column>
            <p:column headerText="Size">
                <h:outputText value="#{document.size}"/>
            </p:column>
            <p:column headerText="Type">
                <h:outputText value="#{document.type}"/>
            </p:column>
        </p:treeTable>

        <p:commandButton value="Display" update="msgs" icon="pi pi-clone" action="#{ttSelectionView.displaySelectedSingle}" styleClass="p-mt-3" />
    </div>

    <div class="card">
        <h5>Multiple Selection with metakey</h5>
        <p:treeTable value="#{ttSelectionView.root2}" var="document" selectionMode="multiple"
                     selection="#{ttSelectionView.selectedNodes1}">
            <p:column headerText="Name">
                <h:outputText value="#{document.name}"/>
            </p:column>
            <p:column headerText="Size">
                <h:outputText value="#{document.size}"/>
            </p:column>
            <p:column headerText="Type">
                <h:outputText value="#{document.type}"/>
            </p:column>
        </p:treeTable>

        <p:commandButton value="Display" update="msgs" icon="pi pi-clone" styleClass="p-mt-3"
                         action="#{ttSelectionView.displaySelectedMultiple(ttSelectionView.selectedNodes1)}"/>
    </div>

    <div class="card">
        <h5>Checkbox Selection</h5>
        <p:treeTable value="#{ttSelectionView.root3}" var="document" selectionMode="checkbox"
                     selection="#{ttSelectionView.selectedNodes2}">
            <p:column headerText="Name">
                <h:outputText value="#{document.name}"/>
            </p:column>
            <p:column headerText="Size">
                <h:outputText value="#{document.size}"/>
            </p:column>
            <p:column headerText="Type">
                <h:outputText value="#{document.type}"/>
            </p:column>
        </p:treeTable>

        <p:commandButton value="Display" update="msgs" icon="pi pi-clone" styleClass="p-mt-3"
                         action="#{ttSelectionView.displaySelectedMultiple(ttSelectionView.selectedNodes2)}"/>
    </div>

</h:form>