bibliothek.gui.dock.common.theme
Class CDockThemeFactory<D extends DockTheme>

java.lang.Object
  extended by bibliothek.gui.dock.common.theme.CDockThemeFactory<D>
Type Parameters:
D - the kind of theme that gets wrapped up
All Implemented Interfaces:
ThemeFactory

public abstract class CDockThemeFactory<D extends DockTheme>
extends Object
implements ThemeFactory

A factory that envelops another factory in order to build a CX-theme instead of a X-theme.

Author:
Benjamin Sigg

Constructor Summary
CDockThemeFactory(ThemePropertyFactory<D> delegate, CControl control)
          Creates a new factory.
 
Method Summary
 DockTheme create()
          Creates a new theme.
abstract  DockTheme create(CControl control)
          Creates a new theme.
 String[] getAuthors()
          Gets a list of strings, containing the names of the authors.
 CControl getControl()
          Gets the control for which this factory works.
 String getDescription()
          Gets a human readable description of the theme.
 String getName()
          Gets the name of the theme.
 URI[] getWebpages()
          Gets a set of links to any webpage the authors might want to show the user.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CDockThemeFactory

public CDockThemeFactory(ThemePropertyFactory<D> delegate,
                         CControl control)
Creates a new factory.

Parameters:
delegate - the factory that should be used as delegate to create the initial DockTheme.
control - the control for which this factory will work
Method Detail

getControl

public CControl getControl()
Gets the control for which this factory works.

Returns:
the control

create

public DockTheme create()
Description copied from interface: ThemeFactory
Creates a new theme.

Specified by:
create in interface ThemeFactory
Returns:
the new theme

create

public abstract DockTheme create(CControl control)
Creates a new theme.

Parameters:
control - the control in whose realm the theme will be used
Returns:
the new theme

getAuthors

public String[] getAuthors()
Description copied from interface: ThemeFactory
Gets a list of strings, containing the names of the authors.

Specified by:
getAuthors in interface ThemeFactory
Returns:
the authors, might be null

getDescription

public String getDescription()
Description copied from interface: ThemeFactory
Gets a human readable description of the theme.

Specified by:
getDescription in interface ThemeFactory
Returns:
the description, might be null

getName

public String getName()
Description copied from interface: ThemeFactory
Gets the name of the theme.

Specified by:
getName in interface ThemeFactory
Returns:
the name, might be null

getWebpages

public URI[] getWebpages()
Description copied from interface: ThemeFactory
Gets a set of links to any webpage the authors might want to show the user.

Specified by:
getWebpages in interface ThemeFactory
Returns:
the pages, might be null