Project:
|
Antilia (alpha)
|
Priority:
|
2 High
|
Type:
|
Refactor
|
Status:
|
Complete
|
Reported By:
|
jeff
|
Assigned To:
|
jeff
|
Created On:
|
September 25, 2020
|
Resolved On:
|
-
|
|
Users Reporting This Issue: 1
I am Affected!
Add a Comment
|
Refactor the UI theme system by implementing a temporary "Theme2" class. Windows+widget combinations with Theme2 set will have access to a new UI rendering path that replaces the WindowDecorator system with theme-controlled rendering steps/layers.
The new theme system should support:
- "Point" based font sizes
- Theme Values, value references, and value overrides on both windows and widgets. (Primarily for custom colorized window, may have other applications)
- RenderSteps allow themes to specify and control layers before and after the Widget::draw() and Widget::drawChildren() functions.
- Styles allow a theme to define multiple styles for a widget
- States allow a theme to alter how a widget renders across multiple states (Window Active or Inactive, Button up or down, etc.) This eliminates the need for Borders to define multiple states.
The idea is that all UI elements should continue to render with their existing theme, and new Theme2 files can be developed and widgets can be improved without stopping all other development or requiring a branch.
Highlights
Comments Only
All Activity
|
Status changed from
In Progress
to
Complete
This item was implemented as Theme2.
|
|
New Task Created!
Refactor the UI theme system by implementing a temporary "Theme2" class. Windows+widget combinations with Theme2 set will have access to a new UI rendering path that replaces the WindowDecorator system with theme-controlled rendering steps/layers.
The new theme system should support:
- "Point" based font sizes
- Theme Values, value references, and value overrides on both windows and widgets. (Primarily for custom colorized window, may have other applications)
- RenderSteps allow themes to specify and control layers before and after the Widget::draw() and Widget::drawChildren() functions.
- Styles allow a theme to define multiple styles for a widget
- States allow a theme to alter how a widget renders across multiple states (Window Active or Inactive, Button up or down, etc.) This eliminates the need for Borders to define multiple states.
The idea is that all UI elements should continue to render with their existing theme, and new Theme2 files can be developed and widgets can be improved without stopping all other development or requiring a branch.
|
|