mirror of
https://github.com/node-red/node-red.git
synced 2023-10-10 13:36:53 +02:00
parent
0832be5970
commit
7d67e6a276
@ -9,6 +9,7 @@ RED.sidebar.info.outliner = (function() {
|
|||||||
var globalConfigNodes;
|
var globalConfigNodes;
|
||||||
|
|
||||||
var objects = {};
|
var objects = {};
|
||||||
|
var missingParents = {};
|
||||||
|
|
||||||
function getFlowData() {
|
function getFlowData() {
|
||||||
var flowData = [
|
var flowData = [
|
||||||
@ -288,11 +289,17 @@ RED.sidebar.info.outliner = (function() {
|
|||||||
objects[ws.id] = {
|
objects[ws.id] = {
|
||||||
id: ws.id,
|
id: ws.id,
|
||||||
element: getFlowLabel(ws),
|
element: getFlowLabel(ws),
|
||||||
children:[getEmptyItem(ws.id)],
|
children:[],
|
||||||
deferBuild: true,
|
deferBuild: true,
|
||||||
icon: "red-ui-icons red-ui-icons-flow",
|
icon: "red-ui-icons red-ui-icons-flow",
|
||||||
gutter: getGutter(ws)
|
gutter: getGutter(ws)
|
||||||
}
|
}
|
||||||
|
if (missingParents[ws.id]) {
|
||||||
|
objects[ws.id].children = missingParents[ws.id];
|
||||||
|
delete missingParents[ws.id]
|
||||||
|
} else {
|
||||||
|
objects[ws.id].children.push(getEmptyItem(ws.id));
|
||||||
|
}
|
||||||
flowList.treeList.addChild(objects[ws.id])
|
flowList.treeList.addChild(objects[ws.id])
|
||||||
objects[ws.id].element.toggleClass("red-ui-info-outline-item-disabled", !!ws.disabled)
|
objects[ws.id].element.toggleClass("red-ui-info-outline-item-disabled", !!ws.disabled)
|
||||||
objects[ws.id].treeList.container.toggleClass("red-ui-info-outline-item-disabled", !!ws.disabled)
|
objects[ws.id].treeList.container.toggleClass("red-ui-info-outline-item-disabled", !!ws.disabled)
|
||||||
@ -327,10 +334,16 @@ RED.sidebar.info.outliner = (function() {
|
|||||||
objects[sf.id] = {
|
objects[sf.id] = {
|
||||||
id: sf.id,
|
id: sf.id,
|
||||||
element: getNodeLabel(sf),
|
element: getNodeLabel(sf),
|
||||||
children:[getEmptyItem(sf.id)],
|
children:[],
|
||||||
deferBuild: true,
|
deferBuild: true,
|
||||||
gutter: getGutter(sf)
|
gutter: getGutter(sf)
|
||||||
}
|
}
|
||||||
|
if (missingParents[sf.id]) {
|
||||||
|
objects[sf.id].children = missingParents[sf.id];
|
||||||
|
delete missingParents[sf.id]
|
||||||
|
} else {
|
||||||
|
objects[sf.id].children.push(getEmptyItem(sf.id));
|
||||||
|
}
|
||||||
subflowList.treeList.addChild(objects[sf.id])
|
subflowList.treeList.addChild(objects[sf.id])
|
||||||
}
|
}
|
||||||
function onSubflowChange(sf) {
|
function onSubflowChange(sf) {
|
||||||
@ -397,6 +410,10 @@ RED.sidebar.info.outliner = (function() {
|
|||||||
if (n.type === "group") {
|
if (n.type === "group") {
|
||||||
objects[n.id].children = [];
|
objects[n.id].children = [];
|
||||||
objects[n.id].deferBuild = true;
|
objects[n.id].deferBuild = true;
|
||||||
|
if (missingParents[n.id]) {
|
||||||
|
objects[n.id].children = missingParents[n.id];
|
||||||
|
delete missingParents[n.id]
|
||||||
|
}
|
||||||
}
|
}
|
||||||
var parent = n.g||n.z;
|
var parent = n.g||n.z;
|
||||||
if (parent) {
|
if (parent) {
|
||||||
@ -405,10 +422,14 @@ RED.sidebar.info.outliner = (function() {
|
|||||||
empties[parent].treeList.remove();
|
empties[parent].treeList.remove();
|
||||||
delete empties[parent];
|
delete empties[parent];
|
||||||
}
|
}
|
||||||
objects[parent].treeList.addChild(objects[n.id])
|
if (objects[parent].treeList) {
|
||||||
|
objects[parent].treeList.addChild(objects[n.id]);
|
||||||
} else {
|
} else {
|
||||||
// The parent hasn't been added yet
|
objects[parent].children.push(objects[n.id])
|
||||||
console.log("missing",parent)
|
}
|
||||||
|
} else {
|
||||||
|
missingParents[parent] = missingParents[parent]||[];
|
||||||
|
missingParents[parent].push(objects[n.id])
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// No parent - add to Global flow list
|
// No parent - add to Global flow list
|
||||||
|
Loading…
Reference in New Issue
Block a user