mirror of
https://github.com/storytold/vectorcraft.git
synced 2026-11-03 06:30:00 -06:00
M8.2: tool options last across tool switches and launches
Each tool keeps its options (a table in vectorcraft_tools::settings) when another
tool is chosen, across document switches, and in the saved preferences
(Prefs::tool_settings). The 7 Liquify tools share one set of Global Brush
Dimensions; the Symbolism tools share their brush. tool.setOption takes
{values} and a `tool` (another tool's options are stored for later), returns
the options, and works headless (MCP host command).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
2c02502f43
commit
08108f693f
@@ -444,3 +444,8 @@ Colour adjustment effects (Effect → Color Adjustments) open the `effect` dialo
|
||||
Halftone… (`engine.execute {command: "ui.menuDialog", params: {command: "object.vectorHalftone"}}`) opens the
|
||||
`vectorHalftone` dialog (fields `shape`, `frequency`, `angle`, `mode`, `color`, `invert`, `clip`, `keepOriginal`,
|
||||
`preview`): it previews live and `ui.dialog.confirm` keeps the halftone as one undo step.
|
||||
|
||||
Tool options last: `tool.setOption {key, value}` or `{values: {…}}` (and `tool` to set another tool's) sets them, and
|
||||
the options a tool keeps (Liquify brush and tool options, Mirror & Cut, Puppet Warp, Symbolism, drawing tools) stay
|
||||
when you switch tools or documents and are saved with the preferences. The Liquify tools share their Global Brush
|
||||
Dimensions (`width`, `height`, `angle`, `intensity`).
|
||||
|
||||
+14
@@ -1729,3 +1729,17 @@ font that became available redraws in it, without editing the document.
|
||||
{"name":"run_command","arguments":{"command":"text.fontList","params":{"family":"Source Serif 4"}}}
|
||||
{"name":"run_command","arguments":{"command":"text.rescanFonts","params":{}}}
|
||||
```
|
||||
|
||||
## Tool options
|
||||
|
||||
`tool.setOption` reads and sets a tool's options, headless too: `{key, value}` or `{values: {…}}` sets them on the
|
||||
active tool, `tool` names another one, and `{}` just reads them; the result is the tool's options. The options a
|
||||
tool keeps last across tool switches (and documents) and are saved with the preferences (`toolSettings` in
|
||||
`prefs.get`'s full object), as the reference app keeps them: the Liquify tools' brush and tool options, Mirror & Cut's
|
||||
axis and side, Puppet Warp's mesh, the Symbolism brush, the line, grid, pencil, brush and eraser tools' options,
|
||||
polygon sides and star points. The Liquify tools share one set of Global Brush Dimensions (width, height, angle,
|
||||
intensity), and the Symbolism tools one brush. Interaction state (pins, a reference point) starts afresh.
|
||||
|
||||
```json
|
||||
{"name":"run_command","arguments":{"command":"tool.setOption","params":{"tool":"twirl","values":{"width":60,"rate":90}}}}
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user