Object properties, multi-select, undo, and palette
Every visual edit in Eidograph is ultimately a script edit. Property changes, drags, bulk edits, and Agent calls all enter the same per-figure undo history.
Open object properties
With Pointer active, clicking or tapping an object selects it and, by default, opens its properties. Two routes always remain available:
- right-click an object on Windows;
- choose its row in the Objects panel.
Disable Settings › General › Click opens properties if a normal click should select only. Right-click and Objects still open properties.
Editable properties
| Group | Contents |
|---|---|
| Position/value | free coordinates, bound parameter, local coordinates, or param; derived objects have no writable DOF |
| Appearance | color, opacity, width; 2D also has fill and solid/dashed/dotted line style |
| Label | plain text or a complete $$…$$ LaTeX formula |
| Text box | 2D text, width, height, font size, and color |
| Visibility | hide/show while keeping the object in Objects |
Committing updates or appends style, label, hide, or another ordinary command. Each commit is one undo step.
Deleting reports dependent objects and removes the dependency cascade so the script is not left with references to missing names.
Multi-select
- With a keyboard, hold
Ctrl,Shift, or⌘and click canvas objects or rows. - With touch/pen, long-press for about half a second to enter sticky multi mode, then tap normally to toggle more.
With two or more selected, the bottom bar offers Edit… for shared stroke, opacity, and visibility. Delete removes selected objects and dependents. One bulk commit occupies one undo step.
Press Escape, click empty canvas, or choose × to clear. Delete/Backspace deletes the current selection.
Copy and paste objects
Copy a selection — one object or many — into the same figure, another figure, another open project, or another app window:
- Select the objects (multi-select above).
- Press
Ctrl/⌘ C, or choose Copy in the bottom selection bar. - Switch to the target figure and press
Ctrl/⌘ V, or choose Paste in the bar.
Copy takes the selected objects together with everything they are built from (their ancestor points, lines, and macros) plus their styles and labels, so the pasted copy stays live and behaves like the original. Animations and stages are not copied.
On paste, any name that already exists in the target figure is renamed (A → A2); the status bar lists the renames. The paste is one undo step, and the pasted objects become the new selection. A paste is refused when the copy comes from the other dialect (2D into 3D or the reverse) or would add script errors.
Ctrl/⌘ C puts the copy on the system clipboard as plain Eidolang text, so you can also paste it into the script editor or another app. The bar's Copy/Paste keep an in-app copy instead, so touch devices need no clipboard permission: with nothing selected, the bar offers Paste N objects until you discard it with ×.
Undo and redo
History belongs to the active figure, not the entire project:
Ctrl/⌘ Z: undo;Ctrl/⌘ Shift ZorCtrl Y: redo;- the left rail and command palette expose the same actions.
Script typing, canvas creation, committed drags, property edits, parameter sliders, Agent calls, and bulk changes are in history. Switching figures switches to that figure's history.
Deleting a figure itself is outside script history and cannot be recovered with Ctrl Z; save important work first.
Command palette
Press Ctrl/⌘ K or click the header ⌘K. Search for:
- drawing tools and their shortcuts;
- undo, redo, export, and Save Eidolang;
- Save/Save As, Settings, new projects/figures, and Open
.eido; - every command signature in the active 2D/3D dialect;
- a direct Agent request when a model is configured.
Choosing a language command inserts its template into the Eidolang editor. Use the Eidolang reference for further syntax details.
