public class NoStackTheme extends Object implements DockTheme
DockTheme
that wraps another theme and ensures that there
is no StackDockStation
in another StackDockStation
.
This theme hides some titles for the StackDockStation
.BACKGROUND_PAINT, BORDER_MODIFIER, COMBINER, DISPLAYER_FACTORY, DOCKABLE_MOVING_IMAGE_FACTORY, DOCKABLE_SELECTION, SPAN_FACTORY, STATION_PAINT
Constructor and Description |
---|
NoStackTheme(DockTheme base)
Creates a new theme
|
Modifier and Type | Method and Description |
---|---|
Combiner |
getCombiner(DockStation station)
Gets the Combiner for
station .This method should not be used directly, instead an UIValue of type StationCombinerValue should
be installed at the local ThemeManager to retrieve the value. |
DisplayerFactory |
getDisplayFactory(DockStation station)
Gets a displayer factory for
station .This method should not be used directly, instead an UIValue of type DefaultDisplayerFactoryValue should
be installed at the local ThemeManager to retrieve the value. |
DockableSelection |
getDockableSelection(DockController controller)
Gets a selector for
Dockable s. |
static <T extends DockTheme> |
getFactory(Class<T> theme)
Creates a
ThemeFactory for this theme encapsulating another
theme. |
DockableMovingImageFactory |
getMovingImageFactory(DockController controller)
Gets a factory for images which are moved around by the user.
This method should not be invoked directly, instead the property key DockTheme.DOCKABLE_MOVING_IMAGE_FACTORY
should be used. |
StationPaint |
getPaint(DockStation station)
Gets the paint which is used to draw things onto
station .This method should not be used directly, instead an UIValue of type DefaultStationPaintValue should
be installed at the local ThemeManager to retrieve the value. |
DockTitleFactory |
getTitleFactory(DockController controller)
Gets the default
DockTitleFactory which is used if no other factory is set.The result of this method is installed in the DockTitleManager using
the key DockTitleManager.THEME_FACTORY_ID and priority Priority.THEME . |
void |
install(DockController controller,
DockThemeExtension[] extensions)
Install this theme at
controller . |
void |
uninstall(DockController controller)
Uninstalls this theme from
controller . |
public NoStackTheme(DockTheme base)
base
- the wrapped theme, it is used as a delegate to get
some factories.public static <T extends DockTheme> ThemeFactory getFactory(Class<T> theme)
ThemeFactory
for this theme encapsulating another
theme.T
- the type of the internal DockTheme
theme
- the theme to encapsulatepublic Combiner getCombiner(DockStation station)
DockTheme
station
.UIValue
of type StationCombinerValue
should
be installed at the local ThemeManager
to retrieve the value.getCombiner
in interface DockTheme
station
- the station whose combiner is searchedstation
public DisplayerFactory getDisplayFactory(DockStation station)
DockTheme
station
.UIValue
of type DefaultDisplayerFactoryValue
should
be installed at the local ThemeManager
to retrieve the value.getDisplayFactory
in interface DockTheme
station
- the station on which the created DockableDisplayer
is shownpublic StationPaint getPaint(DockStation station)
DockTheme
station
.UIValue
of type DefaultStationPaintValue
should
be installed at the local ThemeManager
to retrieve the value.public DockTitleFactory getTitleFactory(DockController controller)
DockTheme
DockTitleFactory
which is used if no other factory is set.DockTitleManager
using
the key DockTitleManager.THEME_FACTORY_ID
and priority Priority.THEME
. A
theme may use the manager to change the factory at any time.getTitleFactory
in interface DockTheme
controller
- the controller using this themepublic DockableMovingImageFactory getMovingImageFactory(DockController controller)
DockTheme
DockTheme.DOCKABLE_MOVING_IMAGE_FACTORY
should be used.getMovingImageFactory
in interface DockTheme
controller
- the controller for which the factory is neededpublic DockableSelection getDockableSelection(DockController controller)
DockTheme
Dockable
s. This method should not be invoked directly, instead
the property key DockTheme.DOCKABLE_SELECTION
should be used.getDockableSelection
in interface DockTheme
controller
- the controller for which the selector will be usedpublic void install(DockController controller, DockThemeExtension[] extensions)
DockTheme
controller
. The theme
may change any properties it likes.public void uninstall(DockController controller)
DockTheme
controller
. The theme
has to remove all listeners it added.