mirror of
https://github.com/storytold/effectcraft.git
synced 2026-10-24 10:09:32 -06:00
Timeline: every property has a pick whip in the Parent & Link column (#363)
What: each property row that can take an expression (it has a stopwatch) now has a property pick whip in the Parent & Link column, as in After Effects CC 2018 and later (automation id `timeline.prop.<uid>.propertyPickWhip`). Dragged onto another property's name or one of its values, it runs `prop.pickWhip`: the reference is added as the property's expression, or replaces the one it has, and the expression is enabled. A drop on one value picks that dimension (`position[1]`). The parent, expression and property pick whips share one widget and one drop path (rubber band, autoscroll, dimension pick); only the expression pick whip inserts at the cursor of an expression being edited. Pick whips (expression and property) now also drop on properties in Effect Controls: its property rows register as targets while a pick whip is dragged, with their per-dimension value fields. Why: the last part of #363. Adobe's docs say the Property Link pick whip adds the expression without enabling expressions first, and a pick whip outside an edit replaces the whole expression text. No modifier keys for the property pick whip are documented, so none are implemented. Tests: `the_property_pick_whip_links_a_property_to_another` (ui_inline_edit) drops it on a property's name, on one of Position's values, on a property with a disabled expression (replaced and enabled), on an Effect Controls slider and one value of a point, and on itself (no change). It fails before the change; with Effect Controls' targets removed it fails at the slider. Looked at the result with the headless snapshot. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
4b7bd135ec
commit
67b9b20a07
@@ -495,6 +495,11 @@ Extension points and the bundled extensions: [plugins.md](plugins.md).
|
||||
* `prop.pickWhip {layer, prop, target: {layer, prop, dimension?}}` links a property as its
|
||||
expression pick whip does; `dimension` picks one of the target's values (`position[0]`), as a
|
||||
drop on that value field does.
|
||||
* Every property row has a property pick whip in the Parent & Link column
|
||||
(`timeline.prop.<uid>.propertyPickWhip`; the expression row's is `timeline.prop.<uid>.pickWhip`).
|
||||
Dragged onto another property's name or value, in the Timeline or Effect Controls
|
||||
(`effectControls.prop.<uid>.value[.<d>]`), it runs `prop.pickWhip`: the reference replaces the
|
||||
property's expression, or is added as one, and the expression is enabled.
|
||||
* A property's menu (right-click its name; entries `timeline.prop.<uid>.menu.<entry>`): Reset
|
||||
(`prop.reset`: no keyframes or expression, and the property's default value, an effect
|
||||
parameter's or a Transform property's), Edit Value… (`prop.set {layer, prop}` without `value`
|
||||
|
||||
Reference in New Issue
Block a user