Files
Superalgos/DesignSpace/Workspace/FunctionLibraries/ReferenceAttachDetach.js
T

38 lines
1.1 KiB
JavaScript

function newReferenceAttachDetach() {
thisObject = {
referenceDetachNode: referenceDetachNode,
referenceAttachNode: referenceAttachNode
}
return thisObject
function referenceDetachNode(node) {
completeDetachment(node)
}
function referenceAttachNode(node, attachToNode, rootNodes) {
completeAttachment(node, attachToNode)
}
function completeAttachment(node, attachToNode) {
node.payload.referenceParent = attachToNode
}
function completeDetachment(node) {
if (node.payload !== undefined !== undefined) {
if (node.payload.referenceParent !== undefined) {
if (node.payload.referenceParent.payload !== undefined) {
if (node.payload.referenceParent.payload.uiObject !== undefined) {
node.payload.referenceParent.payload.uiObject.isShowing = false
}
}
}
}
node.payload.referenceParent = undefined
if (node.savedPayload !== undefined) {
node.savedPayload.referenceParent = undefined
}
}
}