diff --git a/Architecture.md b/Architecture.md index cbdf70d..a1f94d4 100644 --- a/Architecture.md +++ b/Architecture.md @@ -192,7 +192,8 @@ src/editor/panels/ AssetPanel, assetGroups (groups by type and their order, asset type in icons/, shared by the panel, the + menu, the tabs and Scene objects, plus the List, Game, Plugins and User management tabs' own four, which stand for no asset), assetMenu (the two groups of the + menu), HierarchyPanel, - Toolbar + toolbarIcons (five icon buttons, no captions: menu, undo, redo, play, pause, #183), + Toolbar + toolbarIcons (icon buttons, no captions: menu, undo, redo, play, pause, #183, and the eye), + SceneVisibilityPopup (behind the eye: symbol, name and collider outline per type), headerIcons (the pictures of the tab headers' switches: the magnet, #194), markIcons (the kind marks, the row actions reset, apply and the two fit arrows, and a transition's in/out arrow — they were characters the bundled font does not have, #214), diff --git a/Development.md b/Development.md index d005443..9ad4c60 100644 --- a/Development.md +++ b/Development.md @@ -15,7 +15,7 @@ npm run build # writes dist/ and regenerates index.html php tools/make-user.php [admin|user] # an account; every tool signs in (see Accounts) php tests/php/accounts.test.php # the API's account rules, no server needed (CI's gate job) php tests/php/snapshots.test.php # the snapshot store (#231), the same way -node tools/seed-e2e.mjs && node tools/e2e.mjs # 1418 editor checks, screenshots in /tmp/gm-e2e-*.png +node tools/seed-e2e.mjs && node tools/e2e.mjs # 1422 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/Scene-editing.md b/Scene-editing.md index 976de42..0dbf752 100644 --- a/Scene-editing.md +++ b/Scene-editing.md @@ -59,6 +59,19 @@ on until the row is free (`stackLabels`, `src/viewport/labelRows.ts`). Names are bottom, so the upper of two keeps its row, and a name only moves up or down: it stays on its icon's side. Names off screen take their row as well, so none jumps while the view pans. +**The eye in the top bar picks what the Scene tab shows.** Beside redo, the eye opens a list of +every type that can be placed, Behavior to Tilemap, and per type up to three switches: **Symbol** +(its icon), **Name** (its name plate) and **Shape**: on a collider its outline, on a tilemap the +outline of its solid cells, while the map's tiles stay drawn. Sprite, +Text and Tilemap have no icon, so their Symbol switch is greyed out; their Name switch puts a plate +centred on the object, and it starts off. Every other switch starts on, which is what the Scene +tab always showed. A hidden icon takes no room on a ring and draws no owner link, and its name then +stands centred on the object. A hidden icon or outline cannot be clicked either: the object is +still selected in the hierarchy. The list stays open while you switch. The switches are saved with +the project (`sceneVisibility`, `src/core/model/sceneVisibility.ts`), so whoever opens it sees +the same, but like the game scale they are no undo step: they change how you look, not the +project. The Game tab and the running game are not affected. + **Z-order is part of the position.** `position.z` is the draw order of a scene object: higher `z` is drawn on top; objects with equal `z` keep their hierarchy (tree) order. It is edited in the inspector next to X/Y, undoable like any move, and applies in edit and play mode alike. The layers