javax.swing
Interface UIDefaults.LazyValue
- Enclosing class:
- UIDefaults
- public static interface UIDefaults.LazyValue
This class enables one to store an entry in the defaults
table that isn't constructed until the first time it's
looked up with one of the getXXX(key)
methods.
Lazy values are useful for defaults that are expensive
to construct or are seldom retrieved. The first time
a LazyValue is retrieved its "real value" is computed
by calling LazyValue.createValue()
and the real
value is used to replace the LazyValue in the UIDefaults
table. Subsequent lookups for the same key return
the real value. Here's an example of a LazyValue that
constructs a Border:
Object borderLazyValue = new UIDefaults.LazyValue() {
public Object createValue(UIDefaults table) {
return new BorderFactory.createLoweredBevelBorder();
}
};
uiDefaultsTable.put("MyBorder", borderLazyValue);
- See Also:
UIDefaults.get(java.lang.Object)
createValue
public Object createValue(UIDefaults table)
- Creates the actual value retrieved from the UIDefaults
table. When an object that implements this interface is
retrieved from the table, this method is used to create
the real value, which is then stored in the table and
returned to the calling method.
- Parameters:
table
- a UIDefaults table- Returns:
- the created Object
Submit a bug or feature
Java, Java 2D, and JDBC are a trademarks or registered trademarks of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-1999 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.