16 .id =
"gfx.not_loaded",
18 .message =
"Graphics slots are not loaded for this selection yet.",
23 {.id =
"gfx.project", .label =
"Project", .value = context.
project_name});
24 snapshot.
metadata.push_back({.id =
"gfx.rom_sha256",
25 .label =
"ROM SHA-256",
28 {.id =
"gfx.revision",
29 .label =
"Graphics revision",
31 snapshot.
metadata.push_back({.id =
"gfx.fingerprint",
32 .label =
"Graphics fingerprint",
34 snapshot.
metadata.push_back({.id =
"gfx.terrain_catalog",
35 .label =
"Terrain catalog",
37 for (
const auto& slot : context.
slots) {
39 .id = absl::StrFormat(
"gfx.slot.%02d", slot.slot),
41 .value = absl::StrFormat(
"0x%02X %s", slot.sheet_id, slot.source),
44 for (
const auto& palette : context.
palettes) {
46 .id = absl::StrFormat(
"gfx.palette.%s", palette.name),
47 .label = palette.name,
48 .value = absl::StrFormat(
"0x%X %s%s", palette.selector, palette.source,
49 palette.inherited ?
" inherited" :
""),
52 for (
const auto& alternate : context.
alternates) {
54 .id = absl::StrFormat(
"gfx.alternate.%s", alternate.name),
55 .label = alternate.name,
56 .value = alternate.state,
std::vector< EditorContextDiagnostic > diagnostics
std::vector< EditorContextValue > metadata
std::string graphics_fingerprint
std::string terrain_catalog
std::vector< ResolvedPaletteSource > palettes
std::vector< ResolvedAlternateContext > alternates
std::vector< ResolvedGraphicsSlot > slots