This is a preliminary version of the RichFaces Theme feature (Real designer does not touch it yet).
The demo shows the different aspects of Theme and how it relates to Skin feature.
1. Default theme
It uses the default rich:page renderer (based on the Y! CSS Grid layout). Page width sidebar width and position work.
Changing skin does nothing. The default rendered does not predefine any color scheme for the rich:pages elements (any RichFaces components will be skinnable if we put them inside. So, it is only for rich:page default)
2. Simple theme
Shows that theme might be skinnable with using the pre-defined RichFaces Skins (any custom will work as well)
The Simple theme does not override the default rich:page renderer, but just provides the CSS classes.
This theme demonstrate the old feature of RichFaces - generated images based on the skin parameters. The skinned gradient (at the top of the page body just under the header) that is referenced from the css class.
3. VioletRays theme
The theme is borrowed from http://www.freecsstemplates.org/css-templates/
It demonstrates the ability to override the default rich:page layout with any custom one.
I took the original layout (http://www.freecsstemplates.org/preview/violetrays) and created a rendere based on it. Them put the original css classes to the jar.
The page attributes are not incorporated into the renderer. So, page width, sidebar width and position as well as skin do not work here.
In general, it is possible to incorporate, but takes some time to understand the original layout.
P.S. The current RichFaces skins have skin parameters for components, but not for the page itself (except generalBackgroundColor). Most of the CSS template we overview require more color params that skin now has. This is one of the drawback we figured out.
Sure, the skin parameters are expendable. So, if someone wants to have a fancy theme and skin it, it is possible.