diff --git a/Architecture.md b/Architecture.md index 278efb8..ba8c9a2 100644 --- a/Architecture.md +++ b/Architecture.md @@ -96,7 +96,9 @@ src/editor/inspector/ Inspector panel, host (what a section builds into), field (where a value lives — shared with the List tab), one section per selection kind (asset/object/node/frame), variableRows (one row shape for every variable), portSection, aspectAction, objectQueries/vectorRows/parentRow -src/editor/panels/ AssetPanel, assetMenu (the two groups of the + menu), HierarchyPanel, Toolbar +src/editor/panels/ AssetPanel, assetMenu (the two groups of the + menu), HierarchyPanel, Toolbar, + TilemapPanel (tools, tiles and layers of the one selected tilemap, beside the scene view, #142; + painting itself is SceneViewport) src/editor/graph/ GraphEditor (header + picker), GraphCanvas, graphView (zoom limits, grid, wheel zoom – shared with NodeBoard), EdgeLayer (curves and fold marks), graphMenus, NodeView, NodePalette + paletteEntries (which also ranks a search), folding (hidden links, collapsed nodes), Breadcrumb + trail (the path into nested behaviors), beads (the run's pulses), AnnotationView + annotationDrag (groups and comments: what a drag carries, each thing moved once) @@ -108,8 +110,7 @@ src/editor/animation/ AnimationEditor (header + picker, preview over timeline), RowDialog + FramesDialog (FormDialogs) src/editor/tile/ TileEditor (header + picker + kind), TileCanvas (every tile of the block and a sample map, animated), PictureStrip (the pictures as animation steps; dropIndex is the reorder maths), - TilePalette (the tiles as a grid of pictures in the tilemap section, #139) -src/editor/inspector/ … tilemapSection (tools, tiles and layers of a placed tilemap; painting itself is SceneViewport) + TilePalette (the tiles as a grid of pictures in the tilemap panel, #139) src/editor/statemachine/ StateMachineEditor (header + picker, on the graph canvas) src/editor/particles/ ParticlesEditor (graph canvas left of a preview panel, splitter between them), ParticlePreview (the panel: the asset's own particles, wearing its own rows) diff --git a/Development.md b/Development.md index 6c1e678..03bf33f 100644 --- a/Development.md +++ b/Development.md @@ -12,7 +12,7 @@ npm run check # typecheck + lint + format:check + tests, the gate CI runs # code is lost (tail's is reported), so a red run reads as green npm run build # writes dist/ and regenerates index.html ./build.sh # the same under `set -o pipefail`, for callers that pipe the output -node tools/seed-e2e.mjs && node tools/e2e.mjs # 1027 editor checks, screenshots in /tmp/gm-e2e-*.png +node tools/seed-e2e.mjs && node tools/e2e.mjs # 1032 editor checks, screenshots in /tmp/gm-e2e-*.png GM_STEPS=20 node tools/e2e.mjs # or 1-12, or 6,20 — a subset while working on one step ./e2e.sh start [GM_STEPS] # the same run detached, see below ./e2e.sh status # live progress, or the last run's result diff --git a/Tilemaps.md b/Tilemaps.md index fdbf381..aad51f6 100644 --- a/Tilemaps.md +++ b/Tilemaps.md @@ -27,7 +27,21 @@ edge. ## Painting -Select a placed tilemap; the inspector then shows a **PAINTING** section under its rows. +Select a placed tilemap in the scene view, and the **Tilemap** panel opens to the right of the +view, between it and the inspector (#142). It holds everything below: **PAINTING**, **TILES** and +**LAYERS**. The inspector keeps what belongs to the object — name, asset, position, transform and +the Columns, Rows and Tile size rows. + +- The panel is there only while **exactly one** placed tilemap is selected, and only on the Scene + tab. With nothing, another object or a second object selected, or on any other tab, it is gone + and the scene view has its full width. Selecting the tilemap asset in the asset panel does not + open it: one always paints a placed map. +- It starts as wide as the inspector; the splitter on its left edge makes it wider or narrower. + Like the other splitters, the width is not saved. +- Opening, closing or widening the panel leaves the map where it is on screen: the scene view + keeps its world in place rather than its centre, so the view simply shows more or less on the right. +- **Deselecting the map puts the brush down**: the tool falls back to Select, so no invisible + brush is left waiting for the next map. The chosen tile and layer are kept. - **Select** leaves the scene view as it is: the map is picked up and dragged like any other object. This is what a tilemap starts in — a map one cannot move would be worse than a click.