- Implement tests for PropFile, including preset conversion, file dictionary conversion, round-trip serialization, version rejection, default values for missing keys, flattening, sanitization, and save/load functionality. - Create tests for PropEditor, covering window title formatting, mode button text, safe saving, and recent file list management. - Add tests for PropTheme, validating fallback behavior, invalid input handling, and default values for primitives and UI tokens. - Introduce tests for ThumbnailCache, ensuring proper key formatting, PNG handling, and behavior with missing files.
277 lines
4.1 KiB
Plaintext
277 lines
4.1 KiB
Plaintext
{
|
|
"material_preset": "none",
|
|
"metadata": {
|
|
"created_at": "2026-09-19T21:11:33",
|
|
"modified_at": "2026-09-19T21:11:33"
|
|
},
|
|
"prop_name": "",
|
|
"shapes": [
|
|
{
|
|
"closed": true,
|
|
"fill_color": "ffffffff",
|
|
"outline_color": "#40290F",
|
|
"outline_width": 4.0,
|
|
"points": [
|
|
{
|
|
"x": 1294.0,
|
|
"y": 556.848999023438
|
|
},
|
|
{
|
|
"x": 1274.30578613281,
|
|
"y": 630.348999023438
|
|
},
|
|
{
|
|
"x": 1220.5,
|
|
"y": 684.154724121094
|
|
},
|
|
{
|
|
"x": 1147.0,
|
|
"y": 703.848999023438
|
|
},
|
|
{
|
|
"x": 1073.5,
|
|
"y": 684.154724121094
|
|
},
|
|
{
|
|
"x": 1019.69427490234,
|
|
"y": 630.348999023438
|
|
},
|
|
{
|
|
"x": 1000.0,
|
|
"y": 556.848999023438
|
|
},
|
|
{
|
|
"x": 1019.69427490234,
|
|
"y": 483.348999023438
|
|
},
|
|
{
|
|
"x": 1079.5,
|
|
"y": 453.543273925781
|
|
},
|
|
{
|
|
"x": 1152.0,
|
|
"y": 455.848999023438
|
|
},
|
|
{
|
|
"x": 1223.5,
|
|
"y": 454.543273925781
|
|
},
|
|
{
|
|
"x": 1274.30578613281,
|
|
"y": 483.348999023438
|
|
}
|
|
],
|
|
"radius": 139.647333145142,
|
|
"reshaped": false,
|
|
"shape_type": "circle",
|
|
"vertex_flags": [
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0
|
|
]
|
|
},
|
|
{
|
|
"closed": true,
|
|
"fill_color": "3b52bbff",
|
|
"outline_color": "#40290F",
|
|
"outline_width": 2.0,
|
|
"points": [
|
|
{
|
|
"x": 1207.81555175781,
|
|
"y": 569.486694335938
|
|
},
|
|
{
|
|
"x": 1199.5625,
|
|
"y": 600.287231445313
|
|
},
|
|
{
|
|
"x": 1177.01501464844,
|
|
"y": 622.834716796875
|
|
},
|
|
{
|
|
"x": 1146.21447753906,
|
|
"y": 631.087768554688
|
|
},
|
|
{
|
|
"x": 1115.41394042969,
|
|
"y": 622.834716796875
|
|
},
|
|
{
|
|
"x": 1092.86645507813,
|
|
"y": 600.287231445313
|
|
},
|
|
{
|
|
"x": 1084.61340332031,
|
|
"y": 569.486694335938
|
|
},
|
|
{
|
|
"x": 1092.86645507813,
|
|
"y": 538.686157226563
|
|
},
|
|
{
|
|
"x": 1115.41394042969,
|
|
"y": 516.138671875
|
|
},
|
|
{
|
|
"x": 1146.21447753906,
|
|
"y": 507.885620117188
|
|
},
|
|
{
|
|
"x": 1177.01501464844,
|
|
"y": 516.138671875
|
|
},
|
|
{
|
|
"x": 1199.5625,
|
|
"y": 538.686157226563
|
|
}
|
|
],
|
|
"radius": 61.6010309855143,
|
|
"reshaped": false,
|
|
"shape_type": "circle",
|
|
"vertex_flags": [
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0
|
|
]
|
|
},
|
|
{
|
|
"closed": true,
|
|
"fill_color": "000000ff",
|
|
"outline_color": "#40290F",
|
|
"outline_width": 2.0,
|
|
"points": [
|
|
{
|
|
"x": 1147.79870605469,
|
|
"y": 526.655395507813
|
|
},
|
|
{
|
|
"x": 1160.27172851563,
|
|
"y": 532.014404296875
|
|
},
|
|
{
|
|
"x": 1169.40283203125,
|
|
"y": 546.655395507813
|
|
},
|
|
{
|
|
"x": 1172.74487304688,
|
|
"y": 566.655395507813
|
|
},
|
|
{
|
|
"x": 1169.40283203125,
|
|
"y": 586.655395507813
|
|
},
|
|
{
|
|
"x": 1160.27185058594,
|
|
"y": 601.29638671875
|
|
},
|
|
{
|
|
"x": 1147.79870605469,
|
|
"y": 606.655395507813
|
|
},
|
|
{
|
|
"x": 1135.32568359375,
|
|
"y": 601.29638671875
|
|
},
|
|
{
|
|
"x": 1126.19470214844,
|
|
"y": 586.655395507813
|
|
},
|
|
{
|
|
"x": 1122.8525390625,
|
|
"y": 566.655395507813
|
|
},
|
|
{
|
|
"x": 1126.19470214844,
|
|
"y": 546.655395507813
|
|
},
|
|
{
|
|
"x": 1135.32556152344,
|
|
"y": 532.014404296875
|
|
}
|
|
],
|
|
"radius": 32.9105350176493,
|
|
"reshaped": false,
|
|
"shape_type": "circle",
|
|
"vertex_flags": [
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0,
|
|
0
|
|
]
|
|
},
|
|
{
|
|
"closed": true,
|
|
"fill_color": "#8C6133",
|
|
"outline_color": "#40290F",
|
|
"outline_width": 2.0,
|
|
"points": [
|
|
{
|
|
"x": 966.386901855469,
|
|
"y": 478.505645751953
|
|
},
|
|
{
|
|
"x": 1051.41577148438,
|
|
"y": 447.389190673828
|
|
},
|
|
{
|
|
"x": 1146.44836425781,
|
|
"y": 434.252014160156
|
|
},
|
|
{
|
|
"x": 1260.01403808594,
|
|
"y": 452.928924560547
|
|
},
|
|
{
|
|
"x": 1342.70739746094,
|
|
"y": 480.989318847656
|
|
},
|
|
{
|
|
"x": 1286.82446289063,
|
|
"y": 375.060638427734
|
|
},
|
|
{
|
|
"x": 989.98193359375,
|
|
"y": 375.060638427734
|
|
}
|
|
],
|
|
"reshaped": true,
|
|
"shape_type": "polygon",
|
|
"vertex_flags": [
|
|
0,
|
|
1,
|
|
1,
|
|
1,
|
|
0,
|
|
0,
|
|
0
|
|
]
|
|
}
|
|
],
|
|
"version": "1.0"
|
|
} |