mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2026-11-07 10:33:24 -08:00
The pre-#7595 add, remove and delete icons were filled shapes with a black outline and no disc. A tint cannot bring that back, and the badge disc is a different icon language, so add a third value to the existing style axis. IconStyle::Sticker draws the sentinel glyph twice: a near-black rim at the band width plus one rim on each side, then the tone pass clipped to the glyph and filled with a vertical gradient. Both treatments keep the disabled fallback to the line glyph. The fill rule moves into theme_icon_fill: the semantic tones are tuned for text, so a filled shape gives its tone a saturation floor, and a dark-scheme tone is pulled down rather than up. IconTint::resolve() applies the same floor to line glyphs, and the badge disc uses the same fill, so a line, a badge and a sticker next to each other carry the same green or red instead of a pale line beside a saturated glyph. The badge's glyph ink follows the scheme: white on light-scheme tones, as in the pre-#7595 art, and the saturated tone darkened to an outline-dark ink on dark-scheme tones, where the shared saturated disc is light enough that white would sit near 2.7:1. The new test pins both cases so the glyph cannot silently flip. resolveSvgStrokeWidth() moves the stroke-width rewrite into libcockatrice_utility so the badge and the sticker share it; the badge's local copy is gone. The sticker is opted into at 17 call sites: increment, decrement and remove_row in the deck editor, settings pages, token dialog, server dialogs and replay/deck storage tabs. The visual database's clear-filter button keeps its trash can (icons/delete) in the line treatment: that glyph is new in #7595, but it is the clearer metaphor, and a sticker rim closes its lid gap at toolbar sizes. The preview generators also gain a semantic-tint sheet for #7775 and a line/badge/sticker family strip, so the three PR descriptions can show the same rendered colors. |
||
|---|---|---|
| .. | ||
| card_ref.h | ||
| clamped_arithmetic.h | ||
| color.h | ||
| counter_limits.h | ||
| cryptoutil.cpp | ||
| cryptoutil.h | ||
| days_years_between.h | ||
| debouncer.h | ||
| dice_limits.h | ||
| expression.cpp | ||
| expression.h | ||
| installer_close_protocol.h | ||
| levenshtein.cpp | ||
| levenshtein.h | ||
| local_server_name.h | ||
| macros.h | ||
| passwordhasher.cpp | ||
| passwordhasher.h | ||
| peglib.h | ||
| playmat_params.h | ||
| qt_utils.h | ||
| report_categories.cpp | ||
| report_categories.h | ||
| server_rate_limiter.cpp | ||
| server_rate_limiter.h | ||
| string_limits.h | ||
| svg_recolor.cpp | ||
| svg_recolor.h | ||
| translation_loader.cpp | ||
| translation_loader.h | ||
| user_data_backup.cpp | ||
| user_data_backup.h | ||
| warning_categories.cpp | ||
| warning_categories.h | ||
| zone_names.h | ||