Overlay generator (pure, tested) — RioJoy.Core/Overlay:
- FontFitter ports the legacy calc-fontsize auto-fit search (validated against a
brute-force oracle); OverlayLayoutEngine ports create-data-layer's fit + h/v
justification and adds per-region 90 deg CCW rotation; OverlayTemplate/Region +
OverlayTemplateStore hold cell geometry/colour/rotation (regions.json).
- GoobieDataImporter parses the legacy .data label sheet into label rows.
- src/RioJoy.Overlay: SkiaSharp rasterizer (SkiaTextMeasurer shared with the engine
so measured layout == drawn output; SkiaOverlayRenderer -> PNG;
ProfileWallpaperGenerator). Verified end-to-end on the real cockpit art
(regions.json + riojoy.png + TEST.data) by OverlayRenderIntegrationTests.
- RioJoy.Tray/WallpaperApplier applies via SystemParametersInfo; RioCoordinator
generates+applies on profile activation (opt-in via AppConfig.OverlayTemplatePath).
Region geometry — tools/XcfRegionExtract parses riojoy.xcf (a GIMP-format binary
reader, no GIMP needed) into the 119-cell regions.json: per-layer offsets/size/
font/colour, with 90 deg CCW rotation on a-00 + b-10..b-1F. Base image riojoy.png.
NOTE: the wallpaper positions are a VGA chroma-split display artifact (6 displays),
not the cockpit's logical layout.
Mapping editor (first cut) — RioJoy.Tray/Editor/ProfileEditorForm renders the
config sheet's logical grid (SheetLayout parses the sheet CSV export). The iRIO
word is edited via ButtonBinding <-> RioMapEntry.Create (no hex bit-twiddling), with
a context-sensitive picker: keyboard keys by name (KeyCatalog VK names), joystick
Button N, hat direction, mouse/RIO-command enum names; modifiers only for keyboard.
Opened from the tray ("Edit profile..."). The sheet-grid layout is a starting point
that needs rework from a better-formatted source.
~220 xUnit tests green. Docs (PLAN.md, README) updated.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1214 lines
22 KiB
JSON
1214 lines
22 KiB
JSON
{
|
|
"BaseImagePath": "riojoy.png",
|
|
"Width": 2720,
|
|
"Height": 600,
|
|
"Regions": [
|
|
{
|
|
"Name": "a-00",
|
|
"X": 810,
|
|
"Y": 332,
|
|
"Width": 197,
|
|
"Height": 54,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#FFFFFF",
|
|
"RotationDegrees": 90
|
|
},
|
|
{
|
|
"Name": "b-00",
|
|
"X": 2558,
|
|
"Y": 428,
|
|
"Width": 153,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-01",
|
|
"X": 2398,
|
|
"Y": 428,
|
|
"Width": 151,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-02",
|
|
"X": 2238,
|
|
"Y": 428,
|
|
"Width": 151,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-03",
|
|
"X": 2078,
|
|
"Y": 428,
|
|
"Width": 151,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-04",
|
|
"X": 2558,
|
|
"Y": 5,
|
|
"Width": 153,
|
|
"Height": 54,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-05",
|
|
"X": 2399,
|
|
"Y": 5,
|
|
"Width": 149,
|
|
"Height": 54,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-06",
|
|
"X": 2238,
|
|
"Y": 5,
|
|
"Width": 151,
|
|
"Height": 54,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-07",
|
|
"X": 2078,
|
|
"Y": 5,
|
|
"Width": 151,
|
|
"Height": 54,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-08",
|
|
"X": 2558,
|
|
"Y": 428,
|
|
"Width": 153,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-09",
|
|
"X": 2398,
|
|
"Y": 428,
|
|
"Width": 151,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-0A",
|
|
"X": 2238,
|
|
"Y": 428,
|
|
"Width": 151,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-0B",
|
|
"X": 2078,
|
|
"Y": 428,
|
|
"Width": 151,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-0C",
|
|
"X": 2558,
|
|
"Y": 5,
|
|
"Width": 153,
|
|
"Height": 54,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-0D",
|
|
"X": 2398,
|
|
"Y": 5,
|
|
"Width": 151,
|
|
"Height": 54,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-0E",
|
|
"X": 2238,
|
|
"Y": 5,
|
|
"Width": 151,
|
|
"Height": 54,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-0F",
|
|
"X": 2078,
|
|
"Y": 5,
|
|
"Width": 151,
|
|
"Height": 54,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-10",
|
|
"X": 823,
|
|
"Y": 428,
|
|
"Width": 53,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FFFFFF",
|
|
"RotationDegrees": 90
|
|
},
|
|
{
|
|
"Name": "b-11",
|
|
"X": 926,
|
|
"Y": 428,
|
|
"Width": 53,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FFFFFF",
|
|
"RotationDegrees": 90
|
|
},
|
|
{
|
|
"Name": "b-12",
|
|
"X": 1035,
|
|
"Y": 428,
|
|
"Width": 53,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FFFFFF",
|
|
"RotationDegrees": 90
|
|
},
|
|
{
|
|
"Name": "b-13",
|
|
"X": 1143,
|
|
"Y": 428,
|
|
"Width": 53,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FFFFFF",
|
|
"RotationDegrees": 90
|
|
},
|
|
{
|
|
"Name": "b-14",
|
|
"X": 1247,
|
|
"Y": 428,
|
|
"Width": 53,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FFFFFF",
|
|
"RotationDegrees": 90
|
|
},
|
|
{
|
|
"Name": "b-15",
|
|
"X": 1354,
|
|
"Y": 428,
|
|
"Width": 53,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FFFFFF",
|
|
"RotationDegrees": 90
|
|
},
|
|
{
|
|
"Name": "b-16",
|
|
"X": 1329,
|
|
"Y": 370,
|
|
"Width": 50,
|
|
"Height": 50,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FFFFFF",
|
|
"RotationDegrees": 90
|
|
},
|
|
{
|
|
"Name": "b-17",
|
|
"X": 1382,
|
|
"Y": 370,
|
|
"Width": 50,
|
|
"Height": 50,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FFFFFF",
|
|
"RotationDegrees": 90
|
|
},
|
|
{
|
|
"Name": "b-18",
|
|
"X": 820,
|
|
"Y": 5,
|
|
"Width": 54,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FFFFFF",
|
|
"RotationDegrees": 90
|
|
},
|
|
{
|
|
"Name": "b-19",
|
|
"X": 927,
|
|
"Y": 6,
|
|
"Width": 53,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FFFFFF",
|
|
"RotationDegrees": 90
|
|
},
|
|
{
|
|
"Name": "b-1A",
|
|
"X": 1035,
|
|
"Y": 5,
|
|
"Width": 53,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FFFFFF",
|
|
"RotationDegrees": 90
|
|
},
|
|
{
|
|
"Name": "b-1B",
|
|
"X": 1140,
|
|
"Y": 5,
|
|
"Width": 53,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FFFFFF",
|
|
"RotationDegrees": 90
|
|
},
|
|
{
|
|
"Name": "b-1C",
|
|
"X": 1246,
|
|
"Y": 5,
|
|
"Width": 53,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FFFFFF",
|
|
"RotationDegrees": 90
|
|
},
|
|
{
|
|
"Name": "b-1D",
|
|
"X": 1354,
|
|
"Y": 6,
|
|
"Width": 53,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 38,
|
|
"ColorHex": "#FFFFFF",
|
|
"RotationDegrees": 90
|
|
},
|
|
{
|
|
"Name": "b-1E",
|
|
"X": 1330,
|
|
"Y": 67,
|
|
"Width": 50,
|
|
"Height": 50,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FFFFFF",
|
|
"RotationDegrees": 90
|
|
},
|
|
{
|
|
"Name": "b-1F",
|
|
"X": 1388,
|
|
"Y": 67,
|
|
"Width": 50,
|
|
"Height": 50,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FFFFFF",
|
|
"RotationDegrees": 90
|
|
},
|
|
{
|
|
"Name": "b-20",
|
|
"X": 1918,
|
|
"Y": 428,
|
|
"Width": 151,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-21",
|
|
"X": 1758,
|
|
"Y": 428,
|
|
"Width": 151,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-22",
|
|
"X": 1598,
|
|
"Y": 428,
|
|
"Width": 151,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-23",
|
|
"X": 1438,
|
|
"Y": 428,
|
|
"Width": 151,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-24",
|
|
"X": 1919,
|
|
"Y": 6,
|
|
"Width": 150,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-25",
|
|
"X": 1759,
|
|
"Y": 6,
|
|
"Width": 149,
|
|
"Height": 52,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-26",
|
|
"X": 1599,
|
|
"Y": 6,
|
|
"Width": 149,
|
|
"Height": 52,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-27",
|
|
"X": 1438,
|
|
"Y": 5,
|
|
"Width": 150,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-28",
|
|
"X": 1918,
|
|
"Y": 428,
|
|
"Width": 151,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-29",
|
|
"X": 1758,
|
|
"Y": 428,
|
|
"Width": 151,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-2A",
|
|
"X": 1598,
|
|
"Y": 428,
|
|
"Width": 151,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-2B",
|
|
"X": 1438,
|
|
"Y": 428,
|
|
"Width": 150,
|
|
"Height": 52,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-2C",
|
|
"X": 1918,
|
|
"Y": 5,
|
|
"Width": 151,
|
|
"Height": 54,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-2D",
|
|
"X": 1758,
|
|
"Y": 5,
|
|
"Width": 151,
|
|
"Height": 54,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-2E",
|
|
"X": 1598,
|
|
"Y": 5,
|
|
"Width": 151,
|
|
"Height": 54,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-2F",
|
|
"X": 1438,
|
|
"Y": 6,
|
|
"Width": 151,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-30",
|
|
"X": 1918,
|
|
"Y": 428,
|
|
"Width": 151,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#0000FF"
|
|
},
|
|
{
|
|
"Name": "b-31",
|
|
"X": 1758,
|
|
"Y": 428,
|
|
"Width": 151,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#0000FF"
|
|
},
|
|
{
|
|
"Name": "b-32",
|
|
"X": 1598,
|
|
"Y": 428,
|
|
"Width": 151,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#0000FF"
|
|
},
|
|
{
|
|
"Name": "b-33",
|
|
"X": 1438,
|
|
"Y": 428,
|
|
"Width": 151,
|
|
"Height": 53,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#0000FF"
|
|
},
|
|
{
|
|
"Name": "b-34",
|
|
"X": 1918,
|
|
"Y": 5,
|
|
"Width": 151,
|
|
"Height": 54,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#0000FF"
|
|
},
|
|
{
|
|
"Name": "b-35",
|
|
"X": 1758,
|
|
"Y": 5,
|
|
"Width": 151,
|
|
"Height": 54,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#0000FF"
|
|
},
|
|
{
|
|
"Name": "b-36",
|
|
"X": 1598,
|
|
"Y": 5,
|
|
"Width": 151,
|
|
"Height": 54,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#0000FF"
|
|
},
|
|
{
|
|
"Name": "b-37",
|
|
"X": 1438,
|
|
"Y": 5,
|
|
"Width": 151,
|
|
"Height": 54,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 45,
|
|
"ColorHex": "#0000FF"
|
|
},
|
|
{
|
|
"Name": "b-38",
|
|
"X": 2349,
|
|
"Y": 105,
|
|
"Width": 50,
|
|
"Height": 31,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 20,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-39",
|
|
"X": 2349,
|
|
"Y": 139,
|
|
"Width": 50,
|
|
"Height": 31,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 20,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-3A",
|
|
"X": 2349,
|
|
"Y": 173,
|
|
"Width": 50,
|
|
"Height": 31,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 20,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-3B",
|
|
"X": 2349,
|
|
"Y": 207,
|
|
"Width": 50,
|
|
"Height": 32,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 20,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-3C",
|
|
"X": 2349,
|
|
"Y": 242,
|
|
"Width": 50,
|
|
"Height": 32,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 20,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-3D",
|
|
"X": 2349,
|
|
"Y": 277,
|
|
"Width": 50,
|
|
"Height": 31,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 20,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-3E",
|
|
"X": 2349,
|
|
"Y": 311,
|
|
"Width": 50,
|
|
"Height": 32,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 20,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-3F",
|
|
"X": 2349,
|
|
"Y": 346,
|
|
"Width": 50,
|
|
"Height": 31,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 20,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-40",
|
|
"X": 2509,
|
|
"Y": 105,
|
|
"Width": 50,
|
|
"Height": 31,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 20,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-41",
|
|
"X": 2509,
|
|
"Y": 277,
|
|
"Width": 50,
|
|
"Height": 31,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 20,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-42",
|
|
"X": 2509,
|
|
"Y": 242,
|
|
"Width": 50,
|
|
"Height": 32,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 20,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-43",
|
|
"X": 2509,
|
|
"Y": 346,
|
|
"Width": 50,
|
|
"Height": 31,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 20,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-44",
|
|
"X": 2509,
|
|
"Y": 311,
|
|
"Width": 50,
|
|
"Height": 32,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 20,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-45",
|
|
"X": 2509,
|
|
"Y": 207,
|
|
"Width": 50,
|
|
"Height": 32,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 20,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-46",
|
|
"X": 2509,
|
|
"Y": 173,
|
|
"Width": 50,
|
|
"Height": 31,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 20,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-47",
|
|
"X": 2509,
|
|
"Y": 139,
|
|
"Width": 50,
|
|
"Height": 31,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 20,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-50",
|
|
"X": 1682,
|
|
"Y": 311,
|
|
"Width": 77,
|
|
"Height": 66,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-51",
|
|
"X": 1602,
|
|
"Y": 105,
|
|
"Width": 77,
|
|
"Height": 65,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-52",
|
|
"X": 1682,
|
|
"Y": 105,
|
|
"Width": 77,
|
|
"Height": 65,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-53",
|
|
"X": 1762,
|
|
"Y": 105,
|
|
"Width": 77,
|
|
"Height": 65,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-54",
|
|
"X": 1602,
|
|
"Y": 173,
|
|
"Width": 77,
|
|
"Height": 66,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-55",
|
|
"X": 1682,
|
|
"Y": 173,
|
|
"Width": 77,
|
|
"Height": 66,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-56",
|
|
"X": 1762,
|
|
"Y": 173,
|
|
"Width": 77,
|
|
"Height": 66,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-57",
|
|
"X": 1602,
|
|
"Y": 242,
|
|
"Width": 77,
|
|
"Height": 66,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-58",
|
|
"X": 1682,
|
|
"Y": 242,
|
|
"Width": 77,
|
|
"Height": 66,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-59",
|
|
"X": 1762,
|
|
"Y": 242,
|
|
"Width": 77,
|
|
"Height": 66,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-5A",
|
|
"X": 1602,
|
|
"Y": 311,
|
|
"Width": 77,
|
|
"Height": 66,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-5B",
|
|
"X": 1762,
|
|
"Y": 311,
|
|
"Width": 77,
|
|
"Height": 66,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-5C",
|
|
"X": 1842,
|
|
"Y": 105,
|
|
"Width": 77,
|
|
"Height": 65,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-5D",
|
|
"X": 1842,
|
|
"Y": 173,
|
|
"Width": 77,
|
|
"Height": 66,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-5E",
|
|
"X": 1842,
|
|
"Y": 242,
|
|
"Width": 77,
|
|
"Height": 66,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-5F",
|
|
"X": 1842,
|
|
"Y": 311,
|
|
"Width": 77,
|
|
"Height": 66,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "b-60",
|
|
"X": 1682,
|
|
"Y": 311,
|
|
"Width": 77,
|
|
"Height": 66,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-61",
|
|
"X": 1602,
|
|
"Y": 105,
|
|
"Width": 77,
|
|
"Height": 65,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-62",
|
|
"X": 1682,
|
|
"Y": 105,
|
|
"Width": 77,
|
|
"Height": 65,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-63",
|
|
"X": 1762,
|
|
"Y": 105,
|
|
"Width": 77,
|
|
"Height": 65,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-64",
|
|
"X": 1602,
|
|
"Y": 173,
|
|
"Width": 77,
|
|
"Height": 66,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-65",
|
|
"X": 1682,
|
|
"Y": 173,
|
|
"Width": 77,
|
|
"Height": 66,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-66",
|
|
"X": 1762,
|
|
"Y": 173,
|
|
"Width": 77,
|
|
"Height": 66,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-67",
|
|
"X": 1602,
|
|
"Y": 242,
|
|
"Width": 77,
|
|
"Height": 66,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-68",
|
|
"X": 1682,
|
|
"Y": 242,
|
|
"Width": 77,
|
|
"Height": 66,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-69",
|
|
"X": 1762,
|
|
"Y": 242,
|
|
"Width": 77,
|
|
"Height": 66,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-6A",
|
|
"X": 1602,
|
|
"Y": 311,
|
|
"Width": 77,
|
|
"Height": 66,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-6B",
|
|
"X": 1762,
|
|
"Y": 311,
|
|
"Width": 77,
|
|
"Height": 66,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-6C",
|
|
"X": 1842,
|
|
"Y": 105,
|
|
"Width": 77,
|
|
"Height": 65,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-6D",
|
|
"X": 1842,
|
|
"Y": 173,
|
|
"Width": 77,
|
|
"Height": 66,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-6E",
|
|
"X": 1842,
|
|
"Y": 242,
|
|
"Width": 77,
|
|
"Height": 66,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "b-6F",
|
|
"X": 1842,
|
|
"Y": 311,
|
|
"Width": 77,
|
|
"Height": 66,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 40,
|
|
"ColorHex": "#FF0000"
|
|
},
|
|
{
|
|
"Name": "KeyPad:INT",
|
|
"X": 1695,
|
|
"Y": 79,
|
|
"Width": 132,
|
|
"Height": 21,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 20,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "KeyPad:EXT",
|
|
"X": 1695,
|
|
"Y": 79,
|
|
"Width": 132,
|
|
"Height": 21,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 20,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "HatRight",
|
|
"X": 2402,
|
|
"Y": 350,
|
|
"Width": 104,
|
|
"Height": 27,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 18,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "HatLeft",
|
|
"X": 2402,
|
|
"Y": 315,
|
|
"Width": 104,
|
|
"Height": 28,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 18,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "HatDown",
|
|
"X": 2402,
|
|
"Y": 282,
|
|
"Width": 104,
|
|
"Height": 26,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 18,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "HatUp",
|
|
"X": 2402,
|
|
"Y": 247,
|
|
"Width": 104,
|
|
"Height": 27,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 18,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "Lower",
|
|
"X": 2402,
|
|
"Y": 212,
|
|
"Width": 104,
|
|
"Height": 27,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 18,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "Middle",
|
|
"X": 2402,
|
|
"Y": 178,
|
|
"Width": 104,
|
|
"Height": 26,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 18,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "Upper",
|
|
"X": 2402,
|
|
"Y": 144,
|
|
"Width": 104,
|
|
"Height": 26,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 18,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "Throttle",
|
|
"X": 2242,
|
|
"Y": 351,
|
|
"Width": 104,
|
|
"Height": 26,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 18,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "Panic",
|
|
"X": 2242,
|
|
"Y": 282,
|
|
"Width": 104,
|
|
"Height": 26,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 18,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "Trigger",
|
|
"X": 2402,
|
|
"Y": 110,
|
|
"Width": 104,
|
|
"Height": 26,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 18,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "Throttle:",
|
|
"X": 2243,
|
|
"Y": 81,
|
|
"Width": 103,
|
|
"Height": 20,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 18,
|
|
"ColorHex": "#00FF00"
|
|
},
|
|
{
|
|
"Name": "JoyStick:",
|
|
"X": 2402,
|
|
"Y": 80,
|
|
"Width": 104,
|
|
"Height": 21,
|
|
"FontFamily": "Sans",
|
|
"FontSizePx": 18,
|
|
"ColorHex": "#00FF00"
|
|
}
|
|
]
|
|
} |