Commit Graph
9 Commits
Author SHA1 Message Date
itsmattkc a4f24e22d3 correct transition connections when a clip is split
When a clip is split and has an out transition, the transition should be
connected to the second clip rather than the original clip.
2019-12-14 23:19:50 +11:00
itsmattkc 2f04a53054 implemented deleting clips in the timeline
Also fixed bugs in the Node::GetExclusiveDependencies function and in the
NodeInputArray::RemoveAt function to make this functionality work.
2019-12-14 17:10:06 +11:00
itsmattkc 323718bc11 moved timeline undoable commands to using the new NodeAddCommand
Previous iteration used some "magic code" that added clips automatically to the
timeline. This was functional but ultimately outside of the undo commands'
control meaning nodes could be infinitely added and abandoned. This makes the
add process part of the undo command which means it's all undoable as the user
would expect.
2019-12-14 00:04:57 +11:00
itsmattkc 79ee3bc3df implemented new block system
Fixes recurring design issue that the Blocks were a frequent exception to the
DAG concept. The Blocks connecting to each others inputs/outputs while not
necessarily being "dependent" on each other to produce an image continually
causes issues while trying to create a rendering code path. This redesign
should provide a more "directed" approach to the directed acyclic graph.
2019-12-02 00:37:03 +11:00
itsmattkc 44d649903c copy values whenever the cache is invalidated
Since we're now working with a separate proxy copy of the original node graph,
if the user changes a parameter in one of those nodes (triggering an
InvalidateCache signal), the values in our copied graph need to be updated
with these new values too.
2019-11-23 17:06:49 +09:00
itsmattkc 492c8f474a added clone functions for nodes
Since nodes are are extremely derivative types, we use a clone/copy function
to produce new types of the derived class easily.
2019-11-22 16:53:30 +09:00
itsmattkc 6693fc75a3 fixed obviously wrong function
This function was written incorrectly and would almost always trigger an
infinite loop. It's now written correctly and achieves what's intended.
2019-11-19 22:25:04 +09:00
itsmattkc 276478c6d0 created function that splits and preserves links 2019-10-17 10:51:50 +11:00
itsmattkc 6f4e5a04e4 reimplemented pointer default functionality 2019-10-12 06:37:53 +11:00