From 13830ffc9c9d85e7e921e4455dc3a02c7f20edbd Mon Sep 17 00:00:00 2001 From: Nick O'Leary Date: Thu, 26 Mar 2020 21:00:22 +0000 Subject: [PATCH] [groups] Tidy up Info sidebar summary of group selection --- .../editor-client/locales/en-US/editor.json | 1 + .../editor-client/src/js/ui/group.js | 11 +----- .../editor-client/src/js/ui/tab-info.js | 38 ++++++++++++++++++- 3 files changed, 39 insertions(+), 11 deletions(-) diff --git a/packages/node_modules/@node-red/editor-client/locales/en-US/editor.json b/packages/node_modules/@node-red/editor-client/locales/en-US/editor.json index e69d0b48d..296b4c6f8 100755 --- a/packages/node_modules/@node-red/editor-client/locales/en-US/editor.json +++ b/packages/node_modules/@node-red/editor-client/locales/en-US/editor.json @@ -551,6 +551,7 @@ "label": "info", "node": "Node", "type": "Type", + "group": "Group", "module": "Module", "id": "ID", "status": "Status", diff --git a/packages/node_modules/@node-red/editor-client/src/js/ui/group.js b/packages/node_modules/@node-red/editor-client/src/js/ui/group.js index 0f2723897..256bf62c8 100644 --- a/packages/node_modules/@node-red/editor-client/src/js/ui/group.js +++ b/packages/node_modules/@node-red/editor-client/src/js/ui/group.js @@ -22,16 +22,7 @@ RED.group = (function() { ''+ ''+ - // '
'+ - // ''+ - // ''+ - // ''+ - // ''+ - // ''+ - // ''+ - // ''+ - // '
'+ - '
'+ + // '
'+ '
'+ ''+ diff --git a/packages/node_modules/@node-red/editor-client/src/js/ui/tab-info.js b/packages/node_modules/@node-red/editor-client/src/js/ui/tab-info.js index c6e6d0023..3eada5e3f 100644 --- a/packages/node_modules/@node-red/editor-client/src/js/ui/tab-info.js +++ b/packages/node_modules/@node-red/editor-client/src/js/ui/tab-info.js @@ -163,7 +163,8 @@ RED.sidebar.info = (function() { var types = { nodes:0, flows:0, - subflows:0 + subflows:0, + groups: 0 } node.forEach(function(n) { if (n.type === 'tab') { @@ -171,6 +172,8 @@ RED.sidebar.info = (function() { types.nodes += RED.nodes.filterNodes({z:n.id}).length; } else if (n.type === 'subflow') { types.subflows++; + } else if (n.type === 'group') { + types.groups++; } else { types.nodes++; } @@ -190,6 +193,9 @@ RED.sidebar.info = (function() { if (types.nodes > 0) { $('
').text(RED._("clipboard.node",{count:types.nodes})).appendTo(counts); } + if (types.groups > 0) { + $('
').text(RED._("clipboard.group",{count:types.groups})).appendTo(counts); + } } else { // A single 'thing' selected. @@ -220,6 +226,36 @@ RED.sidebar.info = (function() { propRow = $(''+RED._("sidebar.info.status")+'').appendTo(tableBody); $(propRow.children()[1]).text((!!!node.disabled)?RED._("sidebar.info.enabled"):RED._("sidebar.info.disabled")) } + } else if (node.type === "group") { + // An actual node is selected in the editor - build up its properties table + propRow = $(''+RED._("sidebar.info.group")+"").appendTo(tableBody); + RED.utils.createObjectElement(node.id).appendTo(propRow.children()[1]); + if (node.name) { + propRow = $(''+RED._("common.label.name")+'').appendTo(tableBody); + $('').text(node.name).appendTo(propRow.children()[1]); + } + propRow = $(' ').appendTo(tableBody); + var typeCounts = { + nodes:0, + groups: 0 + } + var allNodes = RED.group.getNodes(node,true); + allNodes.forEach(function(n) { + if (n.type === "group") { + typeCounts.groups++; + } else { + typeCounts.nodes++ + } + }); + var counts = $('
').appendTo($(propRow.children()[1])); + if (typeCounts.nodes > 0) { + $('
').text(RED._("clipboard.node",{count:typeCounts.nodes})).appendTo(counts); + } + if (typeCounts.groups > 0) { + $('
').text(RED._("clipboard.group",{count:typeCounts.groups})).appendTo(counts); + } + + } else { // An actual node is selected in the editor - build up its properties table propRow = $(''+RED._("sidebar.info.node")+"").appendTo(tableBody);