canvas
, content
, and draw
rectangles independently; expose size/scale through CanvasState
inspection panelBegin/End
(auto grid/overlay, persistent context menu)DrawBackground
, DrawGrid
, DrawSelectRect
, etc.)CanvasState
exposes geometry, zoom, scrollView→Advanced
, View→Scaling
, Palette
, BPP
) stay open until closedSetTileAt
, SelectRect
), view control (ScrollToTile
, SetZoom
), entity manipulation hooksz3ed
) and gRPC service, matching UI modesCanvas
, set renderer (optional) and IDInitializePaletteEditor
and SetUsageMode
SetAvailableModes({kTilePainting, kTileSelecting})
canvas.Begin(size)
→ draw bitmaps/entities → canvas.End()
AddMenuItem
/AddMenuItem(item, usage)
GetConfig()
/GetSelection()
for state; respond to context menu commands via callback lambda in Render
DrawContextMenu
logic with new render callback signaturecanvas/
module; update includes