mirror of
https://github.com/node-red/node-red.git
synced 2023-10-10 13:36:53 +02:00
Merge pull request #2839 from node-red/subflow-search
Add easier ways to find subflow instances
This commit is contained in:
commit
7fa25c1ff4
@ -170,7 +170,9 @@ RED.palette = (function() {
|
||||
metaData = typeInfo.set.module+" : ";
|
||||
}
|
||||
metaData += type;
|
||||
$('<button type="button" onclick="RED.sidebar.help.show(\''+type+'\'); return false;" class="red-ui-button red-ui-button-small" style="float: right"><i class="fa fa-book"></i></button>').appendTo(popOverContent)
|
||||
var safeType = type.replace(/'/g,"\\'");
|
||||
$('<button type="button" onclick="RED.sidebar.info.outliner.search(\'type:'+safeType+'\'); RED.sidebar.info.show(); return false;" class="red-ui-button red-ui-button-small" style="float: right; margin-left: 5px;"><i class="fa fa-search"></i></button>').appendTo(popOverContent)
|
||||
$('<button type="button" onclick="RED.sidebar.help.show(\''+safeType+'\'); return false;" class="red-ui-button red-ui-button-small" style="float: right"><i class="fa fa-book"></i></button>').appendTo(popOverContent)
|
||||
$('<p>',{style:"font-size: 0.8em"}).text(metaData).appendTo(popOverContent);
|
||||
}
|
||||
} catch(err) {
|
||||
|
@ -119,34 +119,17 @@ RED.sidebar.info.outliner = (function() {
|
||||
return div;
|
||||
}
|
||||
|
||||
function getSubflowLabel(n) {
|
||||
|
||||
var div = $('<div>',{class:"red-ui-info-outline-item"});
|
||||
RED.utils.createNodeIcon(n).appendTo(div);
|
||||
var contentDiv = $('<div>',{class:"red-ui-search-result-description"}).appendTo(div);
|
||||
var labelText = getNodeLabelText(n);
|
||||
var label = $('<div>',{class:"red-ui-search-result-node-label red-ui-info-outline-item-label"}).appendTo(contentDiv);
|
||||
if (labelText) {
|
||||
label.text(labelText)
|
||||
} else {
|
||||
label.html(" ")
|
||||
}
|
||||
|
||||
addControls(n, div);
|
||||
|
||||
return div;
|
||||
|
||||
|
||||
// var div = $('<div>',{class:"red-ui-info-outline-item red-ui-info-outline-item-flow"});
|
||||
// var contentDiv = $('<div>',{class:"red-ui-search-result-description red-ui-info-outline-item-label"}).appendTo(div);
|
||||
// contentDiv.text(n.name || n.id);
|
||||
// addControls(n, div);
|
||||
// return div;
|
||||
}
|
||||
|
||||
function addControls(n,div) {
|
||||
var controls = $('<div>',{class:"red-ui-info-outline-item-controls red-ui-info-outline-item-hover-controls"}).appendTo(div);
|
||||
|
||||
if (n.type === "subflow") {
|
||||
var subflowInstanceBadge = $('<button type="button" class="red-ui-info-outline-item-control-users red-ui-button red-ui-button-small"><i class="fa fa-toggle-right"></i></button>').text(n.instances.length).appendTo(controls).on("click",function(evt) {
|
||||
evt.preventDefault();
|
||||
evt.stopPropagation();
|
||||
RED.search.show("type:subflow:"+n.id);
|
||||
})
|
||||
// RED.popover.tooltip(userCountBadge,function() { return RED._('editor.nodesUse',{count:n.users.length})});
|
||||
}
|
||||
if (n._def.category === "config" && n.type !== "group") {
|
||||
var userCountBadge = $('<button type="button" class="red-ui-info-outline-item-control-users red-ui-button red-ui-button-small"><i class="fa fa-toggle-right"></i></button>').text(n.users.length).appendTo(controls).on("click",function(evt) {
|
||||
evt.preventDefault();
|
||||
@ -486,6 +469,13 @@ RED.sidebar.info.outliner = (function() {
|
||||
existingObject.treeList.remove();
|
||||
delete objects[n.id]
|
||||
|
||||
if (/^subflow:/.test(n.type)) {
|
||||
var sfType = n.type.substring(8);
|
||||
if (objects[sfType]) {
|
||||
objects[sfType].element.find(".red-ui-info-outline-item-control-users").text(RED.nodes.subflow(sfType).instances.length);
|
||||
}
|
||||
}
|
||||
|
||||
// If this is a group being removed, it may have an empty item
|
||||
if (empties[n.id]) {
|
||||
delete empties[n.id];
|
||||
@ -587,6 +577,12 @@ RED.sidebar.info.outliner = (function() {
|
||||
configNodeTypes[parent].types[n.type].treeList.addChild(objects[n.id]);
|
||||
}
|
||||
objects[n.id].element.toggleClass("red-ui-info-outline-item-disabled", !!n.d)
|
||||
if (/^subflow:/.test(n.type)) {
|
||||
var sfType = n.type.substring(8);
|
||||
if (objects[sfType]) {
|
||||
objects[sfType].element.find(".red-ui-info-outline-item-control-users").text(RED.nodes.subflow(sfType).instances.length);
|
||||
}
|
||||
}
|
||||
updateSearch();
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user