Describe copy, rename and values in the list rows

- Pixel Art: copy button on layers and frames, rename by double
  click, opacity in the layer row. The fields below the list are
  gone.
- Tilemaps: copy, rename and Z in the layer row.
- Vector Art: copy and rename in the shape row.
- Development: check total 1272.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
adminandClaude Opus 5 committed 2026-09-22 06:02:51 +02:00
1 parent 0698fea522
commit 09adf7c094
4 files changed
+29 -15

No files matched your search

+1 -1
@@ -13,7 +13,7 @@ npm run check # typecheck + lint + format:check + tests, the gate CI runs
npm run build # writes dist/ and regenerates index.html
./build.sh # the same under `set -o pipefail`, for callers that pipe the output
php tools/make-user.php <name> <password> # an account; every tool signs in (see Accounts)
node tools/seed-e2e.mjs && node tools/e2e.mjs # 1266 editor checks, screenshots in /tmp/gm-e2e-*.png
node tools/seed-e2e.mjs && node tools/e2e.mjs # 1272 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
+15 -7
@@ -68,11 +68,18 @@ The **LAYERS** list shows the top layer first. Each row pictures its layer alone
painted. A click on a row picks the layer the tools paint on.
- **Dragging** a row moves the layer to another place in the drawing order.
- The **eye** next to a row's ✕ leaves the layer out of the picture, and puts it back. A
hidden layer cannot be painted on.
- The **+** in the list's header puts a new empty layer above the picked one. The **✕** at the right
end of a row takes that layer out. The last layer has no ✕, it stays.
- **Name** and **Opacity** (0 to 1) edit the picked layer.
- The **eye** in a row leaves the layer out of the picture, and puts it back. A hidden layer cannot
be painted on.
- The **number** left of the eye is the layer's opacity in percent. Click it to type a value, or drag
it sideways to scrub (Shift ten times faster, Alt ten times slower). The canvas follows while you
drag, and the whole drag is one undo step.
- A **double-click** on a layer's name edits it right in the row. Enter or a click elsewhere keeps
it, Esc goes back. A blank name is not taken.
- The **+** in the list's header puts a new empty layer above the picked one.
- The **copy mark** (two squares) and the **✕** show at the right end of the row under the pointer
and of the picked row. The copy mark puts a copy of the layer right above it, with the same pixels
on every frame, and paints on the copy. The ✕ takes that layer out. The last layer has no ✕, it
stays.
- **Merge down** lays the layer onto the one below it, on every frame, and takes it out. Every pixel
it paints covers the one below. Its opacity is **not** kept: an indexed picture has no colour
between two palette entries, so the merged layer keeps the opacity of the lower one.
@@ -83,8 +90,9 @@ Every frame has the same layers. The **FRAMES** list shows them in order, first
a picture of the whole frame; a click picks the frame the canvas shows and paints on.
- **Dragging** a row moves the frame to another place in the order.
- The **+** in the list's header puts an empty frame after the picked one, **Duplicate** below the
list a copy of it. The **✕** on a row takes that frame out. The last frame has no ✕, it stays.
- The **+** in the list's header puts an empty frame after the picked one. The **copy mark** on a row
puts a copy of that frame right after it, the **✕** takes that frame out. Both show on the row
under the pointer and on the picked one. The last frame has no ✕, it stays.
- **Onion skin** (in the **VIEW** block) shows the frames before and after the picked one faintly
under it.
- **PREVIEW** plays the frames in a loop. **Frames per second** belongs to the preview only; how long
+10 -6
@@ -104,14 +104,18 @@ last (over the others). The list works like every layer list of the editor (the
- a click on a row chooses the layer to paint on;
- **dragging** a row moves the layer to another place in the drawing order, one undo step;
- the **eye** next to the ✕ switches the layer off and on: a layer switched off keeps its cells
and is left out of the drawing, in the editor and in the game alike.
- the **eye** switches the layer off and on: a layer switched off keeps its cells and is left out
of the drawing, in the editor and in the game alike;
- a **double-click** on a layer's name edits it right in the row (#138). Enter or a click elsewhere
keeps it, Esc goes back, and a blank name is not taken;
- the **number** left of the eye is the layer's **Z**, see below. Click it to type, or drag it
sideways to scrub;
- the **copy mark** (two squares) puts a copy of the layer right above it, cells, Z and all, and
paints on the copy. It shows, like the ✕, on the row under the pointer and on the chosen one.
Below the list (#138):
The layer's settings (#138):
- **Name** renames the layer you paint on. A blank name is not taken; the field goes back to the
old one.
- **Z** (#174) is that layer's place among the other objects of the scene, **added to the map's own
- **Z** (#174), the number in the row, is that layer's place among the other objects of the scene, **added to the map's own
Z**, just as a child's Z is added to its parent's. Every layer starts at 0, where it is drawn right
after the map in list order, exactly as before. Give a layer "Treetops" a Z of 10 on a map at 0,
and a figure at 5 walks between the ground and the treetops. Because it is relative, moving the
+3 -1
@@ -106,7 +106,9 @@ Selecting a shape — in the tab or in the list — gives it its own rows:
Ctrl or Shift on a row adds its shape to the selection, as Ctrl+click does in the tab.
- **Forward / To front / Backward / To back** move the selected shape through that order, and a row
can be **dragged** to another place in the list, also one that was not selected before: it is
selected when the mouse button goes up. The **✕** at the right end of a row removes that shape.
selected when the mouse button goes up. A **double-click** on a name edits it right in the row.
On the row under the pointer and on the selected ones, the **copy mark** (two squares) puts a copy
of the shape right above it, on the same spot, and selects the copy; the **✕** removes that shape.
The same list is used for the layers of a [tilemap](Tilemaps) and the layers and frames of
[pixel art](Pixel-Art); there its header also has a **+** that adds one. Shapes have none, they
are drawn with the Pen.