Have you experimented with the pre-existing themes in the *.gwt.xml to see if they complement each other?
<!-- Inherit the default GWT style sheet. You can change -->
<!-- the theme of your GWT application by uncommenting -->
<!-- any one of the following lines. -->
<!-- <inherits name='com.google.gwt.user.theme.standard.Standard'/> -->
<!-- <inherits name="com.google.gwt.user.theme.chrome.Chrome"/> -->
<inherits name="com.google.gwt.user.theme.dark.Dark"/>
They are quite basic. The challenge in creating a custom skin for GWT lies in the necessity to individually modify certain widgets within the package. With the emergence of UiBinder
and ClientBundle
, some widgets (such as DisclosurePanel
and CellTable
) have internal styling using embedded styles and images. Customizing different arrows or highlighting schemes requires overriding at an implementation level.
For instance, inspecting the CellTable
and exploring the package through this link reveals numerous styling components packaged within the JAR. Therefore, achieving a new style for CellTable
would involve something similar to the following:
class MyCellTable<T> extends CellTable<T> {
interface MyResources extends CellTable.Resources {
@Override
@ImageOptions(flipRtl = true)
@Source("hamsterDance.gif") // because I can :P
ImageResource cellTableLoading();
@Source("MyCellTableStyle.css")
Style cellTableStyle();
}
}