diff --git a/FloatingSpace/StrategyPartConstructor.js b/FloatingSpace/StrategyPartConstructor.js index add1cac91..4657d0f86 100644 --- a/FloatingSpace/StrategyPartConstructor.js +++ b/FloatingSpace/StrategyPartConstructor.js @@ -226,7 +226,7 @@ function newStrategyPartConstructor () { rawRadius: 8, targetRadius: 0, currentRadius: 0, - angle: -70 + angle: -75 } ) menuItemsInitialValues.push( @@ -243,7 +243,7 @@ function newStrategyPartConstructor () { rawRadius: 8, targetRadius: 0, currentRadius: 0, - angle: -40 + angle: -50 } ) menuItemsInitialValues.push( @@ -256,7 +256,7 @@ function newStrategyPartConstructor () { rawRadius: 8, targetRadius: 0, currentRadius: 0, - angle: -10 + angle: -25 } ) menuItemsInitialValues.push( @@ -269,9 +269,22 @@ function newStrategyPartConstructor () { rawRadius: 8, targetRadius: 0, currentRadius: 0, - angle: 10 + angle: 0 } ) + menuItemsInitialValues.push( + { + action: 'Add Backend', + actionFunction: payload.onMenuItemClick, + label: 'Add Backend', + visible: false, + relatedStrategyPart: 'Backend', + rawRadius: 8, + targetRadius: 0, + currentRadius: 0, + angle: 25 + } + ) menuItemsInitialValues.push( { action: 'Delete Definition', @@ -285,7 +298,7 @@ function newStrategyPartConstructor () { rawRadius: 8, targetRadius: 0, currentRadius: 0, - angle: 40 + angle: 50 } ) menuItemsInitialValues.push( @@ -299,7 +312,7 @@ function newStrategyPartConstructor () { rawRadius: 8, targetRadius: 0, currentRadius: 0, - angle: 70 + angle: 75 } ) break diff --git a/StrategySpace/Workspace/FunctionLibraries/NodeChildren.js b/StrategySpace/Workspace/FunctionLibraries/NodeChildren.js index 02caab136..0776441a7 100644 --- a/StrategySpace/Workspace/FunctionLibraries/NodeChildren.js +++ b/StrategySpace/Workspace/FunctionLibraries/NodeChildren.js @@ -145,6 +145,12 @@ function newNodeChildren () { response.childIndex = response.childrenCount } } + if (parentNode.backend !== undefined) { + response.childrenCount++ + if (parentNode.backend.id === childNode.id) { + response.childIndex = response.childrenCount + } + } return response } diff --git a/StrategySpace/Workspace/FunctionLibraries/PartsFromNodes.js b/StrategySpace/Workspace/FunctionLibraries/PartsFromNodes.js index 4b492d9f4..b151ae6f0 100644 --- a/StrategySpace/Workspace/FunctionLibraries/PartsFromNodes.js +++ b/StrategySpace/Workspace/FunctionLibraries/PartsFromNodes.js @@ -333,6 +333,9 @@ function newPartsFromNodes () { if (node.personalData !== undefined) { createPartFromNode(node.personalData, node, node) } + if (node.backend !== undefined) { + createPartFromNode(node.backend, node, node) + } return } case 'Backend': { diff --git a/StrategySpace/Workspace/FunctionLibraries/ProtocolNode.js b/StrategySpace/Workspace/FunctionLibraries/ProtocolNode.js index ec53ef55a..b4eff0efe 100644 --- a/StrategySpace/Workspace/FunctionLibraries/ProtocolNode.js +++ b/StrategySpace/Workspace/FunctionLibraries/ProtocolNode.js @@ -440,7 +440,8 @@ function newProtocolNode () { subType: node.subType, name: node.name, tradingSystem: getProtocolNode(node.tradingSystem, removePersonalData), - personalData: getProtocolNode(node.personalData, removePersonalData) + personalData: getProtocolNode(node.personalData, removePersonalData), + backend: getProtocolNode(node.backend, removePersonalData) } return object } diff --git a/StrategySpace/Workspace/FunctionLibraries/StringifyNode.js b/StrategySpace/Workspace/FunctionLibraries/StringifyNode.js index 026835e3b..ba8ff4d88 100644 --- a/StrategySpace/Workspace/FunctionLibraries/StringifyNode.js +++ b/StrategySpace/Workspace/FunctionLibraries/StringifyNode.js @@ -523,6 +523,7 @@ function newStringifyNode () { name: node.name, tradingSystem: prepareForStringify(node.tradingSystem, removePersonalData), personalData: prepareForStringify(node.personalData, removePersonalData), + backend: prepareForStringify(node.backend, removePersonalData), savedPayload: getSavedPayload(node) } return object