Editor: quick-add when connect to empty.

This commit is contained in:
Bruno Feurer 2022-08-16 18:37:57 +02:00
parent 5365786386
commit b6f25a0c07
4 changed files with 32 additions and 17 deletions

View File

@ -124,6 +124,7 @@
"projects-open": "Öffnen", "projects-open": "Öffnen",
"projects-settings": "Einstellungen", "projects-settings": "Einstellungen",
"showNodeLabelDefault": "Zeige Namen von neu hinzugefügten Nodes", "showNodeLabelDefault": "Zeige Namen von neu hinzugefügten Nodes",
"nodeQuickAddLabel": "Zeige Schnellauswahl beim Verbinden ins Leere",
"codeEditor": "Code-Editor", "codeEditor": "Code-Editor",
"groups": "Gruppen", "groups": "Gruppen",
"groupSelection": "Auswahl gruppieren", "groupSelection": "Auswahl gruppieren",

View File

@ -86,6 +86,7 @@
"rtl": "Right-to-left", "rtl": "Right-to-left",
"auto": "Contextual", "auto": "Contextual",
"language": "Language", "language": "Language",
"nodeQuickAdd": "Quick-add node when joining to empty space",
"browserDefault": "Browser default" "browserDefault": "Browser default"
}, },
"sidebar": { "sidebar": {

View File

@ -140,7 +140,8 @@ RED.userSettings = (function() {
title: "menu.label.nodes", title: "menu.label.nodes",
options: [ options: [
{setting:"view-node-status",oldSetting:"menu-menu-item-status",label:"menu.label.displayStatus",default: true, toggle:true,onchange:"core:toggle-status"}, {setting:"view-node-status",oldSetting:"menu-menu-item-status",label:"menu.label.displayStatus",default: true, toggle:true,onchange:"core:toggle-status"},
{setting:"view-node-show-label",label:"menu.label.showNodeLabelDefault",default: true, toggle:true} {setting:"view-node-show-label",label:"menu.label.showNodeLabelDefault",default: true, toggle:true},
{setting:"node-quick-add",label:"menu.label.view.nodeQuickAdd",default: true, toggle:true}
] ]
}, },
{ {

View File

@ -1801,6 +1801,17 @@ RED.view = (function() {
return; return;
} }
if (mousedown_node && mouse_mode == RED.state.JOINING) { if (mousedown_node && mouse_mode == RED.state.JOINING) {
if (RED.settings.get("editor.view.node-quick-add")) {
// Trigger quick add dialog
d3.event.stopPropagation();
clearSelection();
const point = d3.mouse(this);
var clickedGroup = getGroupAt(point[0], point[1]);
if (drag_lines.length > 0) {
clickedGroup = clickedGroup || RED.nodes.group(drag_lines[0].node.g)
}
showQuickAddDialog({ position: point, group: clickedGroup });
} else {
var removedLinks = []; var removedLinks = [];
for (i=0;i<drag_lines.length;i++) { for (i=0;i<drag_lines.length;i++) {
if (drag_lines[i].link) { if (drag_lines[i].link) {
@ -1818,6 +1829,7 @@ RED.view = (function() {
} }
hideDragLines(); hideDragLines();
} }
}
if (lasso) { if (lasso) {
var x = parseInt(lasso.attr("x")); var x = parseInt(lasso.attr("x"));
var y = parseInt(lasso.attr("y")); var y = parseInt(lasso.attr("y"));