began new infrastructure

Yep, this is another one of my "famous" sweeping rewrites. Expect things to break.

Goals for this are:
- Greatly simplify node connections (particularly with arrays) so the code requires less maintenance/is more stable
- Redesign node structure to address issues where UI would stall for lengthy periods of time
- Less reliance on shared ptrs/greater reliance on QObject system for inheritance/memory management
- General code cleanup and improvements
This commit is contained in:
itsmattkc
2021-01-05 11:20:38 +11:00
parent 19eabf2830
commit 181235f6ce
152 changed files with 3932 additions and 8166 deletions
+3 -3
View File
@@ -29,13 +29,13 @@ namespace olive {
void XMLConnectNodes(const XMLNodeData &xml_node_data, QUndoCommand *command)
{
foreach (const XMLNodeData::SerializedConnection& con, xml_node_data.desired_connections) {
NodeOutput* out = xml_node_data.output_ptrs.value(con.output);
Node* out = xml_node_data.node_ptrs.value(con.output);
if (out) {
if (command) {
new NodeEdgeAddCommand(out, con.input, command);
new NodeEdgeAddCommand(out, con.input, con.element, command);
} else {
NodeParam::ConnectEdge(out, con.input);
Node::ConnectEdge(out, con.input, con.element);
}
}
}