Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 314611

Summary: Refactor Skinning Code to Themes
Product: z_Archived Reporter: Sebastian Schneider <laluz>
Component: NebulaAssignee: Emil Crumhorn <emil.crumhorn>
Status: CLOSED INVALID QA Contact:
Severity: enhancement    
Priority: P3 CC: tom.schindl
Version: unspecified   
Target Milestone: ---   
Hardware: All   
OS: All   
Whiteboard:
Attachments:
Description Flags
Patch with partial implementation
none
O2k10 theme pre-preview :) none

Description Sebastian Schneider CLA 2010-05-27 03:31:50 EDT
Build Identifier: 1.0.0.HEAD

A lot of the skinning is hardwired in the code, so I'd like to suggest to refactor that code to pluggable themes.

For backwards compatibility, this could be reached by extending API using an <IThemeManager> like

public interface IThemeManager {

	public ISettings getSettings();

	public IColorManager getColorManager();

	public ILanguageSettings getLanguageSettings();

	public IThemeManager setLanguage(ILanguageSettings language);

}

Thus it's fully backward-compatible and fluent interfaces could be utilized when customizing.

ISettings, IColorManager can be extended be inherited interfaces guaranteeing compatibility, as well.


That way theme extension and reuse is much easier, and skin-specific code must not be taken care of.
Within the same step, modern themes like Office 2010 or a new e4-look could be added.

Reproducible: Always
Comment 1 Sebastian Schneider CLA 2010-05-27 03:33:27 EDT
Created attachment 170142 [details]
Patch with partial implementation
Comment 2 Sebastian Schneider CLA 2010-05-27 03:35:15 EDT
Created attachment 170143 [details]
O2k10 theme pre-preview :)
Comment 3 Wim Jongman CLA 2019-12-12 15:58:24 EST
This bug does not have a target milestone assigned and is automatically closed as part of the 2.3.0 release cleanup.

It could be that this bug is accidentally closed for which we apologize.

If this bug is still relevant, please re-open and set a target milestone.