Tobago Demo

Menu

Root Dummy Intro Search Getting Started Docker What's New Migration Compatibility FAQ API Download Server Info Logging Info In Suggest Textarea Date Range Group 5 Star Rating File Upload Out Label Badge Image Figure Progress Object Checkbox Toggle Dropdown Radio Listbox SelectOneList Multi Checkbox Multi Listbox Shuttle SelectManyList Button and Link Default Command Button Group Customizer Link Group Box Panel Separator Section Header and Footer Bar Popup Popover Toast Basic example Tab Client Tab Ajax Tab Server Basic example Sheet Sorting Paginator Sheet Column Selector Sheet Selectionchange Sheet Event Sheet Action Sheet Markup Sheet Style Empty Sheet Column Bar Sheet Filter Sheet Static Header Sheet Multi Header Sheet Tree Column Panel Sheet Editable Sheet Lazy Sheet Nested Basic example Tree Command Types Tree Select Tree Editor Tree Menu Tree Listbox Intro TinyMCE CKEditor Flow Layout Flex Layout Segment Layout Label Layout Grid Layout Split Layout Message-layout Overview Collapsible Box Collapsible Popup Collapsible Panel Collapsible Section Content Validation JSR 303 Severity Messages Content Security Policy Sanitize Roles Form AccessKey Focus Exception Handler Style Tag Bootstrap Theme Icons Partial Ajax Behavior WebSocket Transition Non Faces Request Conversion Error Handling For Each ConversationScoped Download Configuration Format Locale DataAttribute Meta
Root Dummy Intro Search Getting Started Docker What's New Migration Compatibility FAQ API Download Server Info Logging Info In Suggest Textarea Date Range Group 5 Star Rating File Upload Out Label Badge Image Figure Progress Object Checkbox Toggle Dropdown Radio Listbox SelectOneList Multi Checkbox Multi Listbox Shuttle SelectManyList Button and Link Default Command Button Group Customizer Link Group Box Panel Separator Section Header and Footer Bar Popup Popover Toast Basic example Tab Client Tab Ajax Tab Server Basic example Sheet Sorting Paginator Sheet Column Selector Sheet Selectionchange Sheet Event Sheet Action Sheet Markup Sheet Style Empty Sheet Column Bar Sheet Filter Sheet Static Header Sheet Multi Header Sheet Tree Column Panel Sheet Editable Sheet Lazy Sheet Nested Basic example Tree Command Types Tree Select Tree Editor Tree Menu Tree Listbox Intro TinyMCE CKEditor Flow Layout Flex Layout Segment Layout Label Layout Grid Layout Split Layout Message-layout Overview Collapsible Box Collapsible Popup Collapsible Panel Collapsible Section Content Validation JSR 303 Severity Messages Content Security Policy Sanitize Roles Form AccessKey Focus Exception Handler Style Tag Bootstrap Theme Icons Partial Ajax Behavior WebSocket Transition Non Faces Request Conversion Error Handling For Each ConversationScoped Download Configuration Format Locale DataAttribute Meta

Split Layout

Warning! Preliminary implementation, work in progress!

The SplitLayout implements a two component layout with a divider between the components to adjust the space between the components.

Drag the divder between the boxes to see the effect

Split Layout with Two Text Areas

<tc:splitLayout columns="2fr 1fr 1fr"> <tc:panel> <tc:style minWidth="150px"/> <p>...</p> </tc:panel> <tc:textarea value="Text 1" labelLayout="none"> <tc:style minWidth="150px"/> </tc:textarea> <tc:textarea value="Text 2" labelLayout="none"> <tc:style minWidth="150px"/> </tc:textarea> </tc:splitLayout>

Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.

Split Layout with Two Buttons

<tc:splitLayout columns="1fr 4fr 1fr"> <tc:button label="A"/> <tc:button label="B"/> </tc:splitLayout>

Nested Split Layout with Dynamic Values

<tc:splitLayout columns="#{splitLayoutController.verticalLayout}"> <tc:splitLayout rows="#{splitLayoutController.horizontalLayout}"> <tc:box label="Top left box"> <tc:style minWidth="150px"/> <tc:out value="Current vertical layout first value: #{splitLayoutController.verticalLayoutFirstToken}"/> <tc:out value="Current horizontal layout first value: #{splitLayoutController.horizontalLayoutFirstToken}"/> </tc:box> <tc:box label="Top right box"> <tc:style minWidth="150px"/> <tc:out value="Current vertical layout first value: #{splitLayoutController.verticalLayoutFirstToken}"/> <tc:out value="Current horizontal layout second value: #{splitLayoutController.horizontalLayoutSecondToken}"/> </tc:box> </tc:splitLayout> <tc:box label="Bottom box"> <tc:style minWidth="150px"/> <tc:out value="Current vertical layout second value: #{splitLayoutController.verticalLayoutSecondToken}"/> </tc:box> </tc:splitLayout>

Top left box

Current vertical layout first value: 1fr Current horizontal layout first value: 1fr

Top right box

Current vertical layout first value: 1fr Current horizontal layout second value: 1fr

Bottom box

Current vertical layout second value: 1fr
© 2005-2025 Apache Software Foundation, Licensed under the Apache License, Version 2.0.