|
JustAnotherDnDGame 0.1.0
Jeu de rôle tactique au d20, vue de dessus, en C++/Qt
|
Palette de couleurs nommées du projet, lue/écrite dans Assets/palettes.json. More...
#include <PixelPalette.h>
Public Member Functions | |
| std::string | toJsonString () const |
| bool | saveToFile (const std::filesystem::path &path) const |
| Écrit la palette dans un fichier, en créant les dossiers parents au besoin. | |
| const std::vector< PixelPaletteEntry > & | entries () const noexcept |
| void | add (std::string name, std::uint32_t color) |
| Ajoute une entrée en fin de palette. | |
| bool | removeAt (std::size_t index) |
Retire l'entrée index. | |
| bool | renameAt (std::size_t index, std::string newName) |
Renomme l'entrée index. | |
| bool | moveEntry (std::size_t from, std::size_t to) |
Déplace l'entrée from à la position to (réordonnancement). | |
Static Public Member Functions | |
| static PixelPalette | loadFromString (std::string_view json) |
| static PixelPalette | loadFromFile (const std::filesystem::path &path) |
Static Public Attributes | |
| static constexpr int | FORMAT_VERSION = 1 |
| Version du format écrite dans le fichier. | |
Private Attributes | |
| std::vector< PixelPaletteEntry > | _entries |
Palette de couleurs nommées du projet, lue/écrite dans Assets/palettes.json.
Logique pure (aucune dépendance Qt/GPU au-delà de std::filesystem/JSON), testable en isolation (EX-NFR-010). Aucune lecture ni écriture ne lève d'exception (EX-NFR-040) : un fichier absent produit une palette vide, traitée comme un état de départ légitime — pas une erreur à signaler — et un fichier malformé ignore l'entrée fautive plutôt que d'abandonner toute la palette.
| void hmi::PixelPalette::add | ( | std::string | name, |
| std::uint32_t | color ) |
Ajoute une entrée en fin de palette.
|
inlinenodiscardnoexcept |
|
staticnodiscard |
path ; vide si le fichier est absent ou illisible (état de départ légitime, pas une erreur). Ne lève jamais.
|
staticnodiscard |
json ; vide (et journalisée) si malformée. Ne lève jamais. | bool hmi::PixelPalette::moveEntry | ( | std::size_t | from, |
| std::size_t | to ) |
Déplace l'entrée from à la position to (réordonnancement).
| bool hmi::PixelPalette::removeAt | ( | std::size_t | index | ) |
Retire l'entrée index.
| bool hmi::PixelPalette::renameAt | ( | std::size_t | index, |
| std::string | newName ) |
Renomme l'entrée index.
|
nodiscard |
Écrit la palette dans un fichier, en créant les dossiers parents au besoin.
|
nodiscard |
|
private |
|
staticconstexpr |
Version du format écrite dans le fichier.