Les genres de jeux : 52, 32 et tarot has been fixed.
See more details at : https://github.com/pdulvp/pdcartes-barquette/issues/6
- un .cartes annonce son genre — jeu de 52, jeu de 32, ou tarot avec ses
quatre couleurs de quatorze cartes, ses vingt et un atouts et son excuse —
et la grille ne montre que les cases de ce genre
- les trois genres partagent une seule numérotation de cases, celle du plus
grand : le cavalier porte le rang 14 et non 12, les rangs étant écrits dans
le fichier, mais s'affiche entre le valet et la dame ; les atouts sont une
cinquième couleur et l'excuse prend la case du joker
- un fichier ne déclare qu'un genre, mais garde les cartes des autres :
ramener un tarot à un jeu de 52 cache ses cavaliers et ses atouts sans les
effacer, et lui rendre son genre les lui rend
- la version du format suit donc le contenu et non le genre déclaré : elle est
2 dès qu'une carte sort de l'espace du jeu de 52 — un cavalier, un atout —
que les binaires déjà installés refusent alors proprement, eux qui
ramèneraient le cavalier sur le roi et l'atout sur un trèfle ; un jeu de 52,
un jeu de 32 et un tarot encore vide restent du format 1 et s'ouvrent
partout
- la cartothèque dessine le cavalier par une tête de cheval et les atouts par
leur numéro en chiffres romains ; pdcartes-rami n'offre dans ses réglages
que les jeux de 52, seuls dont il sache se servir
- la fenêtre ne grandit plus quand « Tout remplir » fait apparaître la section
« La carte dessinée » : celle-ci passe sous les deux colonnes au lieu d'être
dans celle de gauche, et la grille comme l'onglet du jeu dessiné défilent
au lieu de reporter leur hauteur sur la fenêtre ; le contenu d'une zone
défilante est rendu transparent, faute de quoi sa fenêtre d'affichage peint
son fond dans la palette du bureau et noircit l'onglet
- cardRankLabel() gagne la lettre du cavalier dans les quatre conventions —
C en français, Kn en anglais, C en allemand, C en espagnol — et la
dame espagnole passe de C à D : C est le caballo, c'est-à-dire le
cavalier, et un tarot espagnol montrerait sinon deux C
- les noms affichés, l'infobulle, l'aide et le commentaire de RankLetters
annoncent les cinq lettres de chaque convention : ils n'en donnaient que
quatre, et le cavalier semblait n'exister qu'en français
Les lettres des figures, par convention
<sub>2026-10-27-1024-les-lettres-des-figures-par-convention.md — 2026-10-27 10:24</sub>
Le coin d'une carte porte A, V, D, R : la convention française.
Demandé : pouvoir lui préférer J, Q, K, et les autres conventions s'il
en existe.
Décisions
- Quatre conventions, celles qui s'impriment sur des cartes à enseignes
françaises :
| convention | as | valet | dame | roi | d'après |
|------------|----|-------|------|-----|--------------------------------|
| française | A | V | D | R | as, valet, dame, roi |
| anglaise | A | J | Q | K | ace, jack, queen, king |
| allemande | A | B | D | K | Ass, Bube, Dame, König |
| espagnole | 1 | S | C | R | sota, caballo, rey ; as chiffré|
L'allemande partage trois lettres sur quatre avec la française et
l'anglaise, ce qui n'en fait pas un doublon : c'est B pour le valet et K
pour le roi, combinaison qu'aucune autre ne donne.
- Une table, et non quatre switch. Les seize lettres tiennent en quatre
lignes ; une convention de plus sera une ligne de plus.
- Ce ne sont pas des chaînes à traduire. A n'est pas la traduction
française de ace : c'est la lettre qu'imprime une carte française, et elle
reste A quelle que soit la langue du programme. Les appels à
translate() qui entouraient A, V, D et R sont donc retirés.
- Le réglage vit dans CardStyle, avec le panneau et la taille de
l'emblème : c'est une façon de dessiner une carte, et le mettre là le rend
disponible à pdcartes-rami aussi bien qu'à l'atelier. Il est donc attaché
à une carte et non au jeu entier ; « Appliquer à tout » rend le jeu uniforme
d'un clic, et le régler dans l'onglet avant « Tout remplir » le fait
d'emblée.
- Le défaut reste la convention française, de sorte que rien ne change
sans qu'on le demande.
- Le bloc des recettes passe en version 4, lu en cascade.
Étapes
- [x] lib/CardArt.h — enum class RankLetters, le champ letters dans
CardStyle, et cardRankLabel() qui prend la convention.
- [x] lib/CardArt.cpp — la table des seize lettres ; le coin de la carte
emploie la convention du style.
- [x] lib/CardSet.cpp — bloc des recettes en version 4.
- [x] src/CardStyleEditor.cpp — la liste déroulante dans « Les figures ».
- [x] src/HelpDialog.cpp — une phrase et la table.
- [x] Bâtir en série, et rendre les quatre conventions côte à côte.
- [x] src/CardStyleEditor.cpp, src/FaceGrid.cpp — la place que la liste
déroulante réclame sous la grille, voir ci-dessous.
- [x] docs/plans/sumup.md, archivage du plan.
Vérifié
Bâti en série : cartotheque, pdcartes-barquette et pdcartes-rami
compilent et se lient sans avertissement.
L'as, le valet, la dame et le roi rendus à 320 pixels dans les quatre
conventions, une par rangée : A V D R, A J Q K, A B D K, 1 S C R, le
coin comme son retourné. La liste vérifiée à l'écran dans « Les figures ».
Une ligne de plus, et la grille qui déborde
La liste déroulante ajoute une ligne à la section compacte, et la rangée du
joker et des dos passait sous le bord de la grille. Deux corrections :
- le choix du thème descend sous l'aperçu. Il relève des couleurs et sa place
serait dans leur partie, mais la hauteur de la section est celle de sa plus
haute colonne, et la colonne de l'aperçu avait de la place à revendre.
- FaceGrid::relayout() mesurait la place disponible sur sa propre hauteur.
Or la grille vit dans une zone défilante qui la redimensionne d'après la
hauteur minimale que cette même fonction lui fixe : elle se comparait donc
à elle-même et ne se resserrait jamais. Elle consulte désormais la fenêtre
d'affichage, et retranche les deux interlignes que la hauteur minimale
compte de plus que la place voulue -- sans quoi l'ascenseur apparaissait
pour cinq pixels.
C'est un défaut antérieur à ce plan, que la ligne de plus a seulement rendu
visible : à fenêtre un peu basse, la grille débordait déjà.
Les genres de jeux : 52, 32 et tarot
<sub>2026-10-27-1055-les-genres-de-jeux-52-32-et-tarot.md — 2026-10-27 10:55</sub>
Un .cartes décrit aujourd'hui un seul genre de jeu : cinquante-deux cartes
et un joker. Demandé : qu'il puisse décrire aussi un jeu de trente-deux, et un
tarot — ses quatre couleurs de quatorze cartes, cavalier compris, ses
vingt et un atouts et son excuse. Le genre est inscrit dans le fichier ; le
rami, lui, continue de n'employer que les jeux qu'il sait lire.
Les trois genres
| genre | cases | contenu |
|-----------|-------|----------------------------------------------------------|
| Full | 53 | as à roi dans quatre couleurs, et le joker |
| Short | 33 | du sept à l'as dans quatre couleurs, et le joker |
| Tarot | 78 | as à roi plus le cavalier, 21 atouts, et l'excuse |
Décisions
- Un seul espace de cases pour les trois genres, celui du plus grand.
CardSet décode une case sans avoir à connaître le genre, et le genre ne
dit que les cases employées. Les trois genres partagent donc leurs
numéros : la dame de cœur est la même case dans un jeu de 52 et dans un
tarot.
- Le jeu de 32 n'est qu'un sous-ensemble du jeu de 52. Mêmes rangs, mêmes
numéros, vingt cases de moins. Son fichier reste donc du format 1 et
s'ouvre dans n'importe quel programme déjà installé, qui n'y voit qu'un jeu
de 52 incomplet — ce qu'il est.
- Le cavalier porte le rang 14, et non 12. Les rangs sont écrits dans le
fichier ; en insérer un au milieu aurait décalé la dame et le roi de tous
les jeux déjà fabriqués. Il s'affiche en revanche à sa place, entre le
valet et la dame : une table donne l'ordre d'affichage, et le numéro de
case en découle.
- Les atouts sont une cinquième couleur, numérotée 4, et leur rang est
leur numéro, de 1 à 21. L'excuse prend la case du joker : c'est la même
carte à la même place, et le dessin du joker lui va.
- Un tarot est écrit en format 2, les deux autres genres en format 1. Un
lecteur écrit avant aujourd'hui ramène la couleur 4 dans les bornes 0-3 et
rangerait les atouts par-dessus les trèfles ; il faut donc qu'il refuse le
fichier, et le format 2 le lui fait refuser avec un message juste. Rien
n'oblige en revanche à fermer les jeux de 52 et de 32 à ces lecteurs.
- Le genre vit dans un bloc étiqueté en queue du corps, comme les
recettes, et la lecture des blocs devient une boucle. Un genre absent vaut
Full, ce qu'est tout fichier écrit jusqu'ici.
- Le rami n'offre que les jeux qu'il sait employer. CardDecks expose le
genre, et pdcartes-rami écarte de sa liste ce qui n'est pas un jeu de 52
— un tarot n'a pas les bonnes cartes, et un jeu de 32 n'en a pas assez.
- Le cavalier est dessiné par une tête de cheval. C'est la figure du
cavalier que l'on reconnaît le plus vite à quarante pixels, et elle ne
ressemble ni à la couronne, ni au diadème, ni à la fleur de lis.
- Les atouts dessinés portent leur numéro en chiffres romains sur le
panneau des figures, le chiffre arabe restant dans le coin. Les vingt et une
figures traditionnelles — le Bateleur, la Papesse — ne sont pas dessinées :
c'est un travail d'illustration. Le jeu dessiné donne un tarot complet et
utilisable, dont les atouts se remplacent ensuite par de vraies images.
le cavalier ; lui laisser la dame donnerait deux C sur un tarot. Le jeu
espagnol n'a pas de dame, D est donc un emprunt, mais un emprunt sans
ambiguïté.
Étapes
- [x] lib/CardSet.h, lib/CardSet.cpp — DeckKind, l'espace de cases à
78, la table de l'ordre d'affichage, slotCount(), usesSlot(),
slots(), les noms des cases d'atout, et filledFaces() /
complete() qui comptent selon le genre.
- [x] lib/CardSet.cpp — la boucle des blocs en queue du corps, le bloc
genre, et le format 2 réservé au tarot.
- [x] lib/CardArt.* — le cavalier, les atouts numérotés, l'excuse, la
lettre du cavalier dans les quatre conventions, et la dame espagnole.
- [x] lib/DrawnDeck.* — drawnCardSet() prend un genre.
- [x] lib/CardDeck.* — DeckEntry porte le genre et le nombre de cases.
- [x] src/FaceGrid.cpp — une grille par genre : quatre rangées de 14, 8 ou
13, les atouts en dessous, puis l'excuse, les dos et la case « + ».
- [x] src/AtelierWindow.* — le choix du genre, « Nouveau » qui le demande,
et les comptes qui le suivent.
- [x] src/HelpDialog.cpp — les trois genres.
- [x] card-sol — SettingsDialog compte selon le genre, et la liste des
jeux écarte ce qui n'est pas un jeu de 52.
- [x] Bâtir en série les deux programmes, et vérifier les trois genres à
l'écran.
- [x] docs/plans/sumup.md, archivage du plan.
Vérifié
Bâti en série : cartotheque, pdcartes-barquette et pdcartes-rami
compilent et se lient sans avertissement.
Les trois genres fabriqués par le jeu dessiné, écrits, relus, et comptés par
un programme jetable lié à la cartothèque :
52 genre 0, 53/53 faces, complet 1, recettes 54, dos 1
32 genre 1, 33/33 faces, complet 1, recettes 34, dos 1
tarot genre 2, 78/78 faces, complet 1, recettes 79, dos 1
Les en-têtes : format 1 pour le 52 et le 32, format 2 pour le tarot.
Compatibilité vérifiée avec le binaire du paquet 1.1.1, antérieur aux
genres :
- le jeu de 32 s'y ouvre et s'y affiche « 33 / 53 faces », c'est-à-dire un
jeu de 52 incomplet — ce qu'il est pour qui ne connaît pas les genres ;
- le tarot y est refusé avec le message juste : « essai-tarot.cartes vient
d'une version plus récente de l'atelier (format 2). »
Les trois grilles vérifiées à l'écran : huit colonnes pour le jeu de 32,
treize pour le jeu de 52, quatorze pour le tarot — le cavalier à sa place
entre le valet et la dame — suivies de deux rangées d'atouts, puis de
l'excuse, des dos et de la case « + ». Tout tient sans ascenseur.
Resté de côté
- Un profil de pdcartes-rami ayant jadis choisi un jeu qui n'est pas un jeu
de 52 garde ce choix dans ses réglages : la liste ne le propose plus, mais
ne le remplace pas non plus. Les cases se recouvrant, les cartes affichées
restent justes ; c'est une bizarrerie, pas une panne.
- Les vingt et une figures traditionnelles des atouts ne sont pas dessinées,
comme convenu : le numéro en chiffres romains tient lieu de dessin, et se
remplace par une image.
La section des propriétés ne pousse plus la fenêtre
<sub>2026-10-27-1114-la-section-des-proprietes-ne-pousse-plus-la-fenetre.md — 2026-10-27 11:14</sub>
Signalé à l'usage : remplir un tarot par « Tout remplir » fait grandir la
fenêtre d'un coup.
Ce qui se passe
Mesuré, et ce n'est pas le tarot. Le même tarot ouvert sans recettes laisse la
fenêtre à 1422 pixels de large ; avec ses recettes, elle passe à 1759. Ce qui
change entre les deux, c'est la section « La carte dessinée » : elle
n'apparaît que lorsque la case choisie porte une recette, et « Tout remplir »
en pose une sur chaque case. Un jeu de 52 rempli faisait déjà grandir la
fenêtre de la même façon ; le tarot ne fait que rendre le saut plus visible.
La section est posée dans la colonne de gauche, laquelle occupe trois
cinquièmes de la fenêtre. Sa largeur minimale — l'aperçu, trois parties de
champs et deux boutons, environ mille pixels — est donc multipliée par cinq
tiers avant d'arriver à la fenêtre, qui grandit pour l'honorer.
Décisions
- La section passe sous les deux colonnes, au lieu d'être dans celle de
gauche. Sa largeur minimale se compare alors à celle de la fenêtre entière
et non à trois cinquièmes de celle-ci : mille pixels tiennent dans mille
trois cents, et la fenêtre ne bouge plus.
- Elle reste sous la grille, à l'œil : la colonne de droite s'arrête
au-dessus d'elle, et la section borde le bas de la fenêtre comme un bandeau
d'inspection. C'est d'ailleurs sa nature — elle décrit ce qui est choisi
ailleurs.
- Rien n'est retiré de la section. Resserrer les champs aurait gagné cent
ou deux cents pixels, pas quatre cents, et aurait coûté les étiquettes qui
disent à quoi sert chaque pastille.
Étapes
- [x] src/AtelierWindow.cpp — la section construite dans la disposition
principale, sous les deux colonnes, avec ses marges.
- [x] src/AtelierWindow.cpp — une taille minimale explicite et modeste sur
les zones défilantes, et l'onglet du jeu dessiné rendu défilant :
voir ci-dessous.
- [x] Bâtir en série, et mesurer de nouveau la fenêtre dans les deux cas.
- [x] docs/plans/sumup.md, archivage du plan.
Vérifié
Bâti en série : pdcartes-barquette compile et se lie sans avertissement.
Le même tarot ouvert sans recettes puis avec, la fenêtre mesurée au
xwininfo dans les deux cas : 1300 × 880 l'une comme l'autre, c'est-à-dire
la taille demandée au démarrage. Elle ne bouge plus.
La largeur réglée, la hauteur restait
Déplacer la section a réglé la largeur — 1759 pixels redevenus 1422 sur la
fenêtre encadrée — mais la hauteur montait alors de 1039 à 1095, et la fenêtre
sortait par le haut de l'écran. Deux causes, toutes deux antérieures à ce
plan :
- FaceGrid fixe une hauteur minimale d'après ses rangées, et une zone
défilante dont le contenu est redimensionnable reporte ce minimum sur la
fenêtre. Une grille de tarot en réclame sept, et la fenêtre grandissait pour
les loger. Une taille minimale explicite et modeste sur la zone défilante
reprend la main : la grille défile, ce qui est précisément à quoi sert une
zone défilante.
- L'onglet « Le jeu dessiné » porte un aperçu et une vingtaine de champs. Sa
hauteur naturelle dépassait celle d'un écran, et décidait donc de la hauteur
minimale de la fenêtre. Il défile à son tour.
Au passage, la mesure elle-même demandait une correction : xwininfo sur la
fenêtre nommée rend le cadre de mutter, ombres comprises, et non la fenêtre du
programme. Les premiers chiffres relevés — 1422 × 1039 partout — étaient ceux
du cadre, et masquaient que la fenêtre demandée faisait 1300 × 880.
Le format suit le contenu, et non l'étiquette
<sub>2026-10-27-1119-le-format-suit-le-contenu-et-non-l-etiquette.md — 2026-10-27 11:19</sub>
Un fichier ne déclare qu'un genre, mais il garde les cartes des autres :
ramener un tarot à un jeu de 52 cache ses cavaliers et ses atouts sans les
effacer, et save() les écrit tout de même. Or la version du format était
choisie sur le genre déclaré. Un tel fichier partait donc en format 1 avec des
cartes que le format 1 ne sait pas désigner.
Ce qu'un lecteur ancien en aurait fait
Il ramène les rangs et les couleurs dans les bornes qu'il connaît :
- un cavalier, rang 14, devient le rang 13 — il écrase le roi de sa
couleur ;
- un atout, couleur 4, devient la couleur 3 — il écrase un trèfle.
Le jeu s'ouvrait donc sans erreur, et montrait de fausses cartes. C'est
exactement ce que le format 2 était censé empêcher.
Décisions
- La version suit ce que le fichier contient. Elle est 2 dès qu'une face
sort de l'espace du jeu de 52 — un cavalier, un atout — quel que soit le
genre déclaré, et 1 sinon. Un tarot sans la moindre carte posée s'écrit donc
en 1, et c'est juste : il n'y a rien dedans qu'un lecteur ancien puisse mal
lire.
- L'étiquette ne commande pas le format, et c'est le point. Elle dit
comment présenter le jeu ; le format dit ce qu'un lecteur doit savoir pour
ne pas se tromper. Les lier revenait à faire confiance à l'étiquette pour
décrire le contenu, ce qu'elle ne fait pas — par construction, puisqu'on a
voulu qu'un changement de genre n'efface rien.
Étapes
- [x] lib/CardSet.cpp — la version déduite des faces écrites.
- [x] lib/CardSet.h — le commentaire du format repris.
- [x] Bâtir en série, et vérifier qu'un tarot ramené à un jeu de 52 est
toujours refusé par le binaire 1.1.1.
- [x] docs/plans/sumup.md, archivage du plan.
Vérifié
Bâti en série : cartotheque et pdcartes-barquette compilent et se lient
sans avertissement.
Cinq jeux écrits puis relus, la version lue dans l'en-tête :
52 ordinaire format 1, relu, genre 0, 53 faces montrées
32 ordinaire format 1, relu, genre 1, 33 faces montrées
tarot rempli format 2, relu, genre 2, 78 faces montrées
tarot ramené à 52 format 2, relu, genre 0, 53 faces montrées
tarot vide format 1, relu, genre 2, 0 face montrée
Le quatrième est le cas corrigé : l'étiquette dit « jeu de 52 », le contenu
garde ses cavaliers et ses atouts, et la version reste 2. Le cinquième montre
l'inverse : un tarot sans cartes n'a rien qu'un lecteur ancien puisse mal
lire, et part en format 1.
Le quatrième ouvert avec le binaire du paquet 1.1.1 : refusé, « v-tarot
ramene a 52.cartes vient d'une version plus récente de l'atelier (format
2). » Avant la correction, il s'y serait ouvert sans erreur, le roi de chaque
couleur remplacé par son cavalier et quatorze trèfles par des atouts.
L'onglet du jeu dessiné reprend les couleurs du thème
<sub>2026-10-27-1421-l-onglet-du-jeu-dessine-reprend-les-couleurs-du-theme.md — 2026-10-27 14:21</sub>
Signalé à l'usage : l'onglet « Le jeu dessiné » est passé au noir, et les
titres comme les cases à cocher ne s'y lisent plus.
Ce qui s'est passé
C'est la zone défilante posée sur cet onglet pour l'empêcher de faire grandir
la fenêtre. QScrollArea::setWidget() reparente le contenu dans sa fenêtre
d'affichage, laquelle peint son propre fond — et le peint dans la palette du
bureau, qui est sombre ici, et non dans celle que la fenêtre s'est donnée.
Les deux autres zones défilantes du programme ne le montraient pas : la grille
des cases et la liste des images peignent chacune leur fond sur toute leur
surface, et rien de la fenêtre d'affichage n'apparaît derrière. Le panneau de
l'onglet, lui, est un QWidget ordinaire qui ne peint rien : le noir
transparaissait.
Les étiquettes passées par markHintLabel() restaient lisibles, leur couleur
étant posée dans leur palette ; les titres de section et les cases à cocher,
qui tirent la leur de la feuille de style, disparaissaient sur le noir.
Décisions
- La fenêtre d'affichage et le panneau ne peignent plus rien, et laissent
voir le fond de la fenêtre. C'est ce que faisait l'onglet avant d'être mis
à défiler, et c'est la bonne couleur : celle que la fenêtre principale
donne à son fond.
- La règle vaut pour les trois zones défilantes, et non pour celle-ci
seule. Les deux autres peignent leur fond elles-mêmes et ne verront pas la
différence ; une règle générale évite qu'une quatrième zone, un jour,
ramène le même noir.
Étapes
- [x] src/AtelierWindow.cpp — la fenêtre d'affichage de l'onglet et son
panneau cessent de peindre leur fond.
- [x] src/AtelierWindow.cpp — la feuille de style rend transparent le
contenu de toute zone défilante.
- [x] Bâtir en série, et vérifier l'onglet à l'écran, en clair et en sombre.
- [x] docs/plans/sumup.md, archivage du plan.
Vérifié
Bâti en série : pdcartes-barquette compile et se lie sans avertissement.
Le défaut d'abord reproduit à l'écran, l'onglet ouvert d'office le temps d'une
compilation : fond noir, titres de section à peine visibles, cases à cocher
illisibles. Les étiquettes des pastilles, elles, restaient lisibles — ce qui
désignait la feuille de style plutôt que la palette, et de là la fenêtre
d'affichage.
Après correction, l'onglet reprend le fond de la fenêtre, et tout s'y lit :
vérifié en clair et en sombre, le réglage du mode ayant été posé dans le
fichier de configuration puis rendu à sa valeur d'origine.
Les conventions annoncent la lettre du cavalier
<sub>2026-10-27-1527-les-conventions-annoncent-la-lettre-du-cavalier.md — 2026-10-27 15:27</sub>
Demandé en lisant RankLetters : pourquoi n'y a-t-il pas de C pour le
cavalier ? Il y en a un — la table des lettres le donne dans les quatre
conventions — mais rien de ce qui décrit ces conventions ne le dit.
Ce qui est juste, et ce qui ne l'est pas
kLetterSets porte bien le cavalier depuis le tarot : C en français, Kn
en anglais, C en allemand, C en espagnol. C'est tout le reste qui est
resté au jeu de 52 :
- le commentaire de l'énumération annonce quatre rangs par convention, `A V D
R`, et date d'avant le cavalier ;
- celui de l'espagnol est pire que muet, il est faux : il glose 1 S C R par
« sota, caballo, rey », donc C comme caballo — alors que la table donne
désormais C au cavalier et D à la dame, précisément parce que le caballo
est le cavalier ;
- le nom affiché dans la liste ne montre le cavalier qu'en français :
« Français (V C D R) » d'un côté, « Anglais (J Q K) », « Allemand (B D K) »
et « Espagnol (S C R) » de l'autre ;
- l'infobulle et l'aide énumèrent elles aussi quatre lettres.
Décisions
- Les quatre noms affichés montrent les cinq lettres, le cavalier compris.
Le français le montrait seul, ce qui donnait à croire qu'il était seul à en
avoir un.
- Le commentaire de l'espagnol est corrigé et non simplement complété : il
décrivait une correspondance qui n'a plus cours.
- Kn reste la lettre anglaise du cavalier. C'est celle qu'impriment les
jeux de tarot anglais, et la seule des cinq à tenir sur deux signes ; le
dessin resserre déjà la police d'un index trop large, ce cas est donc prévu.
Étapes
- [x] lib/CardArt.h — le commentaire de l'énumération, cavalier compris,
et la glose espagnole reprise.
- [x] lib/CardArt.cpp — les quatre noms affichés.
- [x] src/CardStyleEditor.cpp — l'infobulle.
- [x] src/HelpDialog.cpp — la table des conventions.
- [x] Bâtir en série, et rendre le cavalier dans les quatre conventions pour
vérifier que Kn tient dans le coin.
- [x] docs/plans/sumup.md, archivage du plan.
Vérifié
Bâti en série : pdcartes-barquette compile et se lie sans avertissement.
Le cavalier de cœur rendu dans les quatre conventions, et la lettre imprimée
sur la sortie standard en regard du nom affiché :
Français (V C D R) cavalier « C »
Anglais (J Kn Q K) cavalier « Kn »
Allemand (B C D K) cavalier « C »
Espagnol (S C D R) cavalier « C »
Kn tient dans le coin : le dessin resserre la police d'un index trop large,
et les deux signes s'y lisent, un peu plus petits que les lettres simples des
trois autres.
<sub>Filed by prel from the completed plans at commit time.</sub>