1 package net.suberic.util.swing; 2 import javax.swing.plaf.metal.MetalTheme; 3 4 /** 5 * A UI which can dynamically set its theme. 6 */ 7 8 public interface ThemeSupporter { 9 10 /** 11 * Gets the Theme object from the ThemeManager which is appropriate 12 * for this UI. 13 */ 14 public MetalTheme getTheme(ThemeManager mgr); 15 16 /** 17 * Gets the currently configured Theme. 18 */ 19 public MetalTheme getCurrentTheme(); 20 21 /** 22 * Sets the Theme that this component is currently using. 23 */ 24 public void setCurrentTheme(MetalTheme newTheme); 25 26 } 27