diff --git a/FloatingSpace/StrategyPartConstructor.js b/FloatingSpace/StrategyPartConstructor.js index feb3407f9..af49507ab 100644 --- a/FloatingSpace/StrategyPartConstructor.js +++ b/FloatingSpace/StrategyPartConstructor.js @@ -502,7 +502,7 @@ function newStrategyPartConstructor () { { action: 'Delete Initial Definition', actionFunction: payload.onMenuItemClick, - label: 'Delete This Stage', + label: 'Delete This Definition', visible: false, iconPathOn: 'trash', iconPathOff: 'trash', diff --git a/StrategySpace/Workspace/FunctionLibraries/NodeDeleter.js b/StrategySpace/Workspace/FunctionLibraries/NodeDeleter.js index d4c6f8bf0..5b3f4d30b 100644 --- a/StrategySpace/Workspace/FunctionLibraries/NodeDeleter.js +++ b/StrategySpace/Workspace/FunctionLibraries/NodeDeleter.js @@ -4,6 +4,7 @@ function newNodeDeleter () { deleteTriggerStage: deleteTriggerStage, deleteOpenStage: deleteOpenStage, deleteManageStage: deleteManageStage, + deleteCloseStage: deleteCloseStage, deleteInitialDefinition: deleteInitialDefinition, deleteEvent: deleteEvent, deleteManagedItem: deleteManagedItem, @@ -28,10 +29,18 @@ function newNodeDeleter () { } } } - deleteTriggerStage(node.triggerStage) - deleteOpenStage(node.openStage) - deleteManageStage(node.manageStage) - deleteCloseStage(node.closeStage) + if (node.triggerStage !== undefined) { + deleteTriggerStage(node.triggerStage) + } + if (node.openStage !== undefined) { + deleteOpenStage(node.openStage) + } + if (node.manageStage !== undefined) { + deleteManageStage(node.manageStage) + } + if (node.closeStage !== undefined) { + deleteCloseStage(node.closeStage) + } destroyPart(node) cleanNode(node) } @@ -41,10 +50,15 @@ function newNodeDeleter () { if (payload.parentNode !== undefined) { payload.parentNode.triggerStage = undefined } - deleteEvent(node.entryPoint) - deleteEvent(node.exitPoint) - deleteEvent(node.sellPoint) - + if (node.entryPoint !== undefined) { + deleteEvent(node.entryPoint) + } + if (node.exitPoint !== undefined) { + deleteEvent(node.exitPoint) + } + if (node.sellPoint !== undefined) { + deleteEvent(node.sellPoint) + } destroyPart(node) cleanNode(node) } @@ -54,8 +68,9 @@ function newNodeDeleter () { if (payload.parentNode !== undefined) { payload.parentNode.openStage = undefined } - deleteInitialDefinition(node.initialDefinition) - + if (node.initialDefinition !== undefined) { + deleteInitialDefinition(node.initialDefinition) + } destroyPart(node) cleanNode(node) } @@ -65,9 +80,12 @@ function newNodeDeleter () { if (payload.parentNode !== undefined) { payload.parentNode.manageStage = undefined } - deleteManagedItem(node.stopLoss) - deleteManagedItem(node.buyOrder) - + if (node.stopLoss !== undefined) { + deleteManagedItem(node.stopLoss) + } + if (node.buyOrder !== undefined) { + deleteManagedItem(node.buyOrder) + } destroyPart(node) cleanNode(node) } diff --git a/StrategySpace/Workspace/Workspace.js b/StrategySpace/Workspace/Workspace.js index 3c5fc586b..4722db0c6 100644 --- a/StrategySpace/Workspace/Workspace.js +++ b/StrategySpace/Workspace/Workspace.js @@ -261,7 +261,11 @@ function newWorkspace () { break } case 'Delete Close Stage': { - functionLibraryNodeDeleter.deleteClose(payload.node) + functionLibraryNodeDeleter.deleteCloseStage(payload.node) + break + } + case 'Delete Initial Definition': { + functionLibraryNodeDeleter.deleteInitialDefinition(payload.node) break } case 'Delete Phase': {