mirror of
https://github.com/storytold/effectcraft.git
synced 2026-10-30 21:16:52 -06:00
Timeline: parent and matte selected layers together (#1260)
On a selected layer's row, the Parent menu and pick whip and the Track Matte menu now set every selected layer's parent or matte, as moving a selected layer's bar moves them all; on an unselected row they set that layer's alone. Each is one undo step. A selected layer chosen as the parent or the matte is left out of the layers it links, and parenting that would make a loop is refused as a whole. A new matte layer keeps each layer's mode (layer.setTrackMatte with kind: preserve); a mode and No Track Matte apply to all of them. The Track Matte column gets a pick whip, like the parent's (timeline.layer.<id>.trackMattePickWhip, with a translated tooltip): dropped on an audio-video layer's row, it makes that layer the matte. The layers a parent or matte pick whip links are taken when its drag starts. Tests (ui_batch_links): the Parent menu and pick whip, and the Track Matte menu, mode, No Track Matte and pick whip, with real clicks and drags: selected layers change together and unselected ones don't, modes are kept, one undo puts links, compensated transforms and the matte's visibility back, and a refused cycle changes nothing. Both fail on main.
This commit is contained in:
@@ -610,6 +610,13 @@ Extension points and the bundled extensions: [plugins.md](plugins.md).
|
||||
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.
|
||||
* Parent and Track Matte for several layers: on a selected layer's row, the Timeline's Parent
|
||||
menu and pick whip (`timeline.layer.<id>.parent`, `timeline.layer.<id>.pickWhip`) and its Track
|
||||
Matte menu and pick whip (`timeline.layer.<id>.trackMatte`,
|
||||
`timeline.layer.<id>.trackMattePickWhip`) set every selected layer's (on an unselected row,
|
||||
that layer's), in one undo step. Directly: `layer.setParent {layers, parent}` and
|
||||
`layer.setTrackMatte {layers, matte, kind}`, where `kind: "preserve"` keeps each layer's
|
||||
own matte mode.
|
||||
* A property's menu (right-click its name; entries `timeline.prop.<uid>.menu.<entry>`): Reset
|
||||
(`prop.reset`: no expression, and the property's default value, an effect parameter's or a
|
||||
Transform property's; an animated property keeps its keyframes and gets the default as a
|
||||
|
||||
Reference in New Issue
Block a user