mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-11-05 09:33:25 -08:00
[Icons] Keep semantic red and green on themed glyphs
The one-glyph cutover recolored every icon from a single palette role, so a disabled deck, a not-ready player and a remove button all lost the red or green that carried their meaning. Add Positive and Negative application colors beside the accents, ship scheme-appropriate defaults for every theme, and resolve them through ThemeManager. Icons now take an IconTint: a palette role for structural glyphs, or a semantic role for states and add/remove actions. A disabled semantic icon falls back to the disabled foreground; on a selected row a semantic tint keeps its color only while it stays legible on the highlight, and a palette tint keeps the existing WindowText -> HighlightedText swap.
This commit is contained in:
parent
df74917cb0
commit
db4e07e55d
35 changed files with 339 additions and 53 deletions
|
|
@ -167,6 +167,10 @@ PaletteConfig fromAccent(const QColor &accent, int intensity, const QString &sch
|
|||
// the lightened, desaturated companion used for button-gradient highlights.
|
||||
cfg.appColors[AppColor::AccentStrong] = hl;
|
||||
cfg.appColors[AppColor::AccentSoft] = hsl(accent.lightness() + 60, qRound(accent.hslSaturation() * 70 / 100.0));
|
||||
// Semantic roles stay independent of the accent: a generated palette must
|
||||
// still paint add/ready green and remove/not-ready red.
|
||||
cfg.appColors[AppColor::Positive] = defaultAppColor(AppColor::Positive, dark);
|
||||
cfg.appColors[AppColor::Negative] = defaultAppColor(AppColor::Negative, dark);
|
||||
|
||||
// BrightText
|
||||
QColor bright;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue