Package org.eclipse.ui.themes
Interface IThemeManager
public interface IThemeManager
A theme manager is an object that contains references to usable
ITheme
objects and maintains a reference to the currently active
theme. This theme will be used by the workbench to decorate tab folders and
other controls where possible. The workbench implementation of this interface
will push the values of the current theme into the underlying jface
registries (ColorRegistry
and
FontRegistry
whenever the current theme
changes. Clients who do not need access to specific themes may instead attach
listeners to these registries directly.
This interface is not intended to be implemented or extended by clients.
- Since:
- 3.0
- See Also:
- Restriction:
- This interface is not intended to be implemented by clients.
-
Field Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Adds a property listener to the manager.Get the currently active theme.Get a theme.void
Removes a property listener from the workbench.void
Set the currently active theme.
-
Field Details
-
CHANGE_CURRENT_THEME
Indicates that the current theme has changed to a new theme.- See Also:
-
DEFAULT_THEME
The default theme id.- See Also:
-
-
Method Details
-
addPropertyChangeListener
Adds a property listener to the manager. Any events fired by the underlying registries of the current theme will cause an event to be fired. This event is the same event that was fired by the registry. As such, the "source" attribute of the event will not be this manager, but rather the color or font registry. Additionally, an event is fired when the current theme changes to a new theme. The "property" attribute of such an event will have the valueCHANGE_CURRENT_THEME
.- Parameters:
listener
- the listener to add
-
getCurrentTheme
ITheme getCurrentTheme()Get the currently active theme.- Returns:
- the current theme. This will never be
null
.
-
getTheme
Get a theme.- Parameters:
id
- the theme to find.- Returns:
- the
ITheme
ornull
if it cannot be found.
-
removePropertyChangeListener
Removes a property listener from the workbench.- Parameters:
listener
- the listener to remove
-
setCurrentTheme
Set the currently active theme.- Parameters:
id
- the id of the new active theme
-