feat(oaktimeline): multicam enable/disable/switch commands, split copies the dependency graph
- oaktimeline::multicam: clip_find_multicam (buffer/tex_in depth-1 lookup), multicam_enable/disable (rewire sequence<->clip through a MultiCamNode), multicam_switch (split-preserving-links at the playhead, each half owns an independent multicam copy, linked clips switched together) as single undo commands with C++ labels. - BlockSplitCommand now duplicates the clip's whole dependency graph (copy_node_and_dependency_graph_minus_items) instead of just the block core, matching the C++ BlockSplitCommand::prepare semantics; undo detaches the copied subgraph, redo re-attaches identity- preserving. - oaknode: fix serializer dropping edges from the first-created node (ptr=0 was not registered in id_map), restoring sequence_in edge round-trips; multicam node and clip wiring serializer round-trip tests.
This commit is contained in:
@@ -120,6 +120,10 @@ pub mod flags {
|
||||
pub const AUDIO_EFFECT: u64 = 0x4;
|
||||
/// `k_dont_show_in_create_menu`.
|
||||
pub const DONT_SHOW_IN_CREATE_MENU: u64 = 0x8;
|
||||
/// `k_is_item` (C++ `node.h:119`): bin items (folders, footage,
|
||||
/// sequences) — dependency-graph copies share these instead of
|
||||
/// cloning them (`// CPP-PARITY: node.cpp:1159,1199`).
|
||||
pub const IS_ITEM: u64 = 0x10;
|
||||
}
|
||||
|
||||
impl NodeCore {
|
||||
|
||||
Reference in New Issue
Block a user