Thèmes et palettes
Cette page est nouvelle depuis la v1.3.0 : elle décrit la version en développement. Ce qui s'en vient
PlayGuard dessine chaque écran selon deux choix des Préférences :
Sur cette page
- Thème : clair, sombre (par défaut) ou celui de la console.
- Palette : les couleurs. Par défaut est celle de PlayGuard (bleu nuit, ou blanc froid avec le thème clair, et turquoise), puis viennent les palettes fournies avec PlayGuard, puis les fichiers de thème que vous ajoutez. La palette est aussi la dernière ligne de la liste des thèmes (−, ou le bouton du thème dans l'en-tête).
Les deux s'appliquent tout de suite, sur chaque écran, sans relancer PlayGuard. Une palette faite pour un seul thème (les contrastes élevés, Océan, Sable) règle Thème sur celui-ci ; choisir ensuite l'autre thème change aussi la palette, pour son autre moitié quand elle en a une (Contraste élevé clair et Contraste élevé sombre), sinon pour Par défaut (la liste des thèmes le dit avant). Les autres palettes suivent Thème.
Les palettes fournies avec PlayGuard
| Palette | Thème | Description |
|---|---|---|
| Contraste élevé sombre | sombre | Blanc sur noir, un contour de sélection jaune, plus épais |
| Contraste élevé clair | clair | Noir sur blanc, un contour de sélection bleu foncé, plus épais |
| Océan | sombre | Bleu profond, un accent bleu ciel |
| Améthyste | clair et sombre | Violet |
| Sable | clair | Papier chaud, un accent terre cuite |
| Hiver, Saint-Valentin, Nouvel An lunaire, Printemps, Été, Automne, Halloween, Noël, Nouvel An | clair et sombre | Une par saison et par fête : givre et argent, rose, laque rouge et or, fleurs de cerisier, mer et coucher de soleil, érable, citrouille sur une nuit violette, sapin et or, minuit et champagne |
| Au fil des saisons | clair et sombre | Celle du jour, selon le calendrier : Halloween à partir du 17 octobre, Noël en décembre, et ainsi de suite |
Elles viennent d'Aurore, la bibliothèque sur laquelle PlayGuard est construit, et leurs noms existent dans toutes les langues de la console.
Au fil des saisons change d'elle-même : le jour où commence une saison ou une fête, les écrans prennent sa palette à minuit, ou dès que la console sort de veille. Les saisons sont celles de l'hémisphère nord ; le guide des thèmes d'Aurore (en anglais) donne les jours exacts.
Ajouter les vôtres
- Écrivez un fichier de thème (plus bas), avec un nom qui finit par
.theme. - Copiez-le sur la carte SD, dans
config/playguard/themes/(créez le dossier s'il n'existe pas). Dans le simulateur sur ordinateur, le dossier estplayguard_data/themes/, à côté des données que PlayGuard y garde. - Préférences › Palette l'affiche sous son
name, après les palettes fournies avec PlayGuard. Choisissez-le : chaque écran le prend tout de suite.
Un fichier avec une erreur qui empêche de le lire (un fichier inclus
manquant, un fichier qui n'est pas un thème) n'apparaît pas dans la liste ;
une ligne illisible est ignorée, le reste du fichier utilisé. Les deux sont
notés dans le journal de session (config/playguard/logs/sessions/), avec le
fichier et la ligne. Si le fichier choisi disparaît de la carte, les couleurs
de PlayGuard reviennent.
Écrire un fichier de thème
Un fichier de thème est du texte : des lignes clé = valeur, des
[sections] et des commentaires #. Trois lignes suffisent :
name = Mint
inherit = dark
accent = #3ddc97
name, et en optionauthor,versionetdescription: ce que la liste affiche.inherit: ce dont le fichier part,dark(s'il ne dit rien),light, une des palettes ci-dessus (builtin:ocean,builtin:amethyst,builtin:sand,builtin:high-contrast-dark,builtin:high-contrast-light) ou un autre fichier du dossier. Tout ce qu'il ne précise pas en vient.- La palette :
background(le fond),surface(les cartes),text,accent,warning(avertissement) etdanger. Chacune fixe toutes les couleurs qui en découlent :textles encres plus discrètes des notes et légendes,accentle contour de sélection, l'onglet actif, les interrupteurs et l'anneau du minuteur, etc. Les encres sont assombries ou éclaircies jusqu'à se lire sur le fond et sur les cartes. [light]et[dark]: une palette ou des clés pour un seul thème. Un fichier avec les deux sections habille les deux thèmes, et le réglage Thème de PlayGuard choisit celui qui s'affiche.counterpart, pour un fichier qui n'habille qu'un thème : le fichier (ou la palette fournie,builtin:…) qui a l'autre, vers lequel PlayGuard passe quand l'autre thème est choisi (counterpart = mint-day.theme).[colors]: n'importe quelle couleur par sa clé (listes ci-dessous), par-dessus ce que la palette a donné.- Couleurs :
#rgb,#rrggbb,#rrggbbaa,rgb(r, g, b)ourgba(r, g, b, a)(a de 0 à 1). @include autre.inc: les lignes d'un autre fichier du dossier, à cet endroit (nommez-le.inc, pour qu'il n'apparaisse pas comme une palette).
Chaque couleur de PlayGuard est une clé de thème : celles d'Aurore
(brls/…), celles de Cadran, l'apparence que PlayGuard partage avec PlayShelf
(cadran/…), et celles de PlayGuard (playguard/…). Le guide des thèmes
d'Aurore (en anglais) liste les deux premières avec ce que chacune colore, et
ce que fixe chaque clé de la palette.
Les clés de PlayGuard
| Clé | Ce qu'elle colore |
|---|---|
playguard/loading/glow |
Le cadran de l'écran de chargement : le halo derrière lui |
playguard/loading/arc |
Le cadran : l'arc de la journée |
playguard/loading/track |
Le cadran : le rail de l'arc |
playguard/loading/line |
Le cadran : ses cercles et ses minutes, à pleine intensité (ils sont dessinés atténués) |
playguard/ring/tip |
Le point de lumière au bout de l'anneau du minuteur |
playguard/badge/ink |
Le « ! » sur le disque corail d'un jeu qui reste (Console › Vérifier les jeux installés, suppressions) |
Le fond et le texte de l'écran de chargement sont ceux du thème
(brls/background, cadran/text2), comme sur chaque écran.
Un texte lisible
Après avoir lu un fichier, PlayGuard vérifie que ce qui doit rester lisible
l'est toujours : le texte et les encres sur le fond et sur les cartes (4,5:1),
le contour de sélection (3:1), et sa propre clé playguard/badge/ink sur
cadran/coral (3:1). Une paire sous son minimum est notée dans le journal de
session, par exemple cadran/text3 on cadran/surf reads badly: 3.9:1, under 4.5:1 ;
le thème est utilisé quand même. Les palettes fournies avec PlayGuard passent
toutes les vérifications.
Deux exemples
Les deux fichiers sont dans docs/themes/, prêts à copier.
mint.theme : l'apparence sombre de PlayGuard avec un
autre accent.
name = Mint
author = PlayGuard
version = 1
description = The dark look, a mint accent.
inherit = dark
accent = #3ddc97
paper.theme : les deux thèmes, et une des clés de
PlayGuard.
name = Paper and ink
author = PlayGuard
version = 1
description = Warm paper by day, warm ink by night, a terracotta accent.
[light]
background = #f4efe6
surface = #fffaf2
text = #2b2622
accent = #a4502a
warning = #8a5a00
danger = #b3261e
[dark]
background = #17130f
surface = #221c17
text = #f0e7da
accent = #e39a6b
warning = #f2b84b
danger = #ff8a80
[colors]
playguard/ring/tip = #fff1dc
Ce qui garde ses couleurs
- La porte du code PIN d'un forwarder protégé par le code PIN
(
config/playguard/gate.nro) est un petit programme à part, sans la bibliothèque de PlayGuard : elle garde les couleurs de PlayGuard, en thème clair ou sombre. - Le logo de PlayGuard (la marque de l'en-tête, l'icône de l'écran de chargement) et son nom dessiné, et le drapeau français dans À propos.
- Les QR codes restent sombres sur blanc, comme les téléphones les lisent le mieux.
- Les jaquettes et icônes des jeux.
Le choix est gardé dans config.json (theme, theme_file : voir
config.md, en anglais).