The r:togglePanel is a core component for all switchable panels in RichFaces. It renders a sequence of panels based on state that can be switched (toggled) by a behavior called r:toggleControl. All of these other panels (e.g. tabPanel, accordion, etc...) share the basic sets a features defined below.

The switchType attribute defines the strategy used to toggle between panels. The possible values for this attributes are:

- client - switching happens on the client without any request to the server. A jsf form is not required in this mode
- ajax - when states are switched, the content of new states comes from the server via Ajax requests.
- server - the whole page is reloaded when states are switched

There is also a very useful set of shortcut toggle values that allow you to create many custom effects like wizards. See the other switchable panel examples. Available shortcuts are defined below:

- @next
- @prev
- @first
- @last

A r:togglePanel has no default appearance, and allows you to customize it's look-n-feel any way you like. You create a set of child r:togglePanelItem's with any content you want inside of them.

As the component does not provide any predefined layout it could be used for creation of any kind of switchable panels. This example is a very simple tabbed pane organized using that component: