Substance 2.0 - new features

New bright themes

Six new bright themes have been added. They are:

Light Aqua in org.jvnet.substance.theme.SubstanceLightAquaTheme

SunGlare in org.jvnet.substance.theme.SubstanceSunGlareTheme

Sunset in org.jvnet.substance.theme.SubstanceSunsetTheme

Bottle Green in org.jvnet.substance.theme.SubstanceBottleGreenTheme

Raspberry in org.jvnet.substance.theme.SubstanceRaspberryTheme

Barby Pink in org.jvnet.substance.theme.SubstanceBarbyPinkTheme

In addition, the Lime Green scheme has been brightened:

New cold themes

Four new cold themes have been added. They are:

Steel Blue in org.jvnet.substance.theme.SubstanceSteelBlueTheme

Sepia in org.jvnet.substance.theme.SubstanceSepiaTheme

Terracotta in org.jvnet.substance.theme.SubstanceTerracottaTheme

Olive in org.jvnet.substance.theme.SubstanceOliveTheme

New dark themes

Three new dark themes have been added. They are:

Ebony in org.jvnet.substance.theme.SubstanceEbonyTheme

Charcoal in org.jvnet.substance.theme.SubstanceCharcoalTheme

Dark violet in org.jvnet.substance.theme.SubstanceDarkVioletTheme


Watermark support has been added to relevant controls (panels, menus, toolbar and others). See main page for options for using watermarks. Nine watermark implementations are provided. They are:

Stripes in org.jvnet.substance.watermark.SubstanceStripesWatermark

Katakana in org.jvnet.substance.watermark.SubstanceKatakanaWatermark

Bubbles in org.jvnet.substance.watermark.SubstanceBubblesWatermark

Crosshatch in org.jvnet.substance.watermark.SubstanceCrosshatchWatermark

Binary in org.jvnet.substance.watermark.SubstanceBinaryWatermark

Mosaic in org.jvnet.substance.watermark.SubstanceMosaicWatermark

Latch in org.jvnet.substance.watermark.SubstanceLatchWatermark

Metal Wall in org.jvnet.substance.watermark.SubstanceMetalWallWatermark

Image (local and HTTP) in org.jvnet.substance.watermark.SubstanceImageWatermark

Color chooser

Quaqua look and feel author Werner Randelshofer has kindly agreed to allow usage of his color chooser UI delegate in Substance. There are five views:

Color Wheel and Color Sliders:

Color Palettes and Color Swatches:


Striped default renderers

Default renderers for lists, combo boxes and tables have striped backgrounds (odd-even rule). Note that if you use your own cell renderer, you will have to implement this behaviour by yourself. The striped renderers respect background settings. Examples:

List (one with default background and one with pink background) and ComboBox with pink background:

Table (note that the last column has custom renderer without striped background):

Internal frames and desktop icons

Minimize, Restore and Close are available on desktop icon (instead of only Restore as in Metal):

Desktop icons are translucent showing other desktop icons and open internal frames:

Hovering the mouse pointer over desktop icon shows preview snapshot of the corresponding internal frame when it was minimized:

Large and vertical buttons

Large and vertical buttons have the correct painting of shine-spot:

Menu search

Automatic menu search functionality on menu bars with buttons leading to matching menu items:

NetBeans menubar after opening menu search and searching for file string (note the tooltip):

NetBeans menubar after clicking on one of the search result buttons - the corresponding menu path is expanded:

Button strip component

New component JButtonStrip (in org.jvnet.substance.comp package) provides visual grouping of AbstractButtons:

Ribbon component

New component JRibbon (in org.jvnet.substance.comp package) provides Office 12 ribbon functionality:

Tree colors

JTree default renderer icons, expand / collapse icons and lines are theme-based:

Theme editor

Editor for creating new color themes is test.ThemeEditor. It allows choosing an existing theme and changing its colors, showing live preview of the major components: