Implements the click-to-select site map UI on a custom Inno wizard page,
replacing the blocked Edge .bat-download flow.
- New record fields MapLeft, MapTop on PrinterDataArray; QueryPrinters
pulls them from the api_printers.asp JSON via the existing
JsonGetString helper.
- BuildMapPage creates a custom wizard page (CreateCustomPage), places a
stretched background TBitmapImage with the bundled site map BMP, then
overlays one TBitmapImage per printer with a non-empty mapleft+maptop.
Each hotspot is a 14x14 square with its own OnClick.
- MapHotspotClick toggles PrinterSelectionPage.Values[I] for the linked
printer and swaps the hotspot bitmap (gray<->lime) to reflect the new
state. Two shared TBitmaps are pre-rendered once via TCanvas.
- PrinterSelectionPage is re-anchored to PrinterMapPage.ID so the
selections from the map flow into the existing checkbox page where the
user can review and adjust.
- ShouldSkipPage skips the map page when no printers have map coords,
preserving legacy behaviour if api_printers.asp is not yet extended or
if the database has no coordinates set.
- Bundled sitemap2025-dark.bmp (880x680, ~1.7 MB) was scaled down from
shopdb's sitemap2025-dark.png via PIL (Inno's TBitmap.LoadFromFile is
BMP-only).
Untested. Needs Inno Setup 6.x compile on Windows + the api_printers.asp
extension to return mapleft, maptop. README documents the privileges
model (admin required, supportuser at UAC) and the Inno class-subset
gotchas verified during design.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Edge policy now blocks .bat downloads and unsigned .exe runs, breaking
the printerinstallermap.asp -> installprinter.asp -> .bat -> EXE flow.
This fork replaces the web map with an in-installer wizard page so the
operator never touches the browser. Same drivers, same install logic,
same /PRINTER= silent path.
Initial commit is a stub: full copy of PrinterInstaller/ with .iss
header rewritten for a distinct AppId, AppName, and OutputBaseFilename
so the two installers can coexist on the same PC. Map page itself is
not yet implemented; tracked work is listed in PrinterInstallerMap/README.md.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>