mirror of
https://github.com/Siccity/xNode.git
synced 2025-12-20 09:16:01 +08:00
Fix/error on duplicate (#82)
* Pressing CTRL+D (duplicate) threw editorgui exception "Getting control 0s position in a group with only 3 controls when doing ValidateCommand". comparing to https://github.com/Unity-Technologies/UnityCsReference/blob/master/Editor/Mono/SceneHierarchyWindow.cs : row 211, the proper use of the event was not made. also fixed spelling of Dublicate to Duplicate. * Braces on wrong lines. * Something got wrong with the comments.
This commit is contained in:
parent
e2549808cc
commit
6c1af6f4cd
@ -278,9 +278,17 @@ namespace XNodeEditor {
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case EventType.ValidateCommand:
|
case EventType.ValidateCommand:
|
||||||
if (e.commandName == "SoftDelete") RemoveSelectedNodes();
|
case EventType.ExecuteCommand:
|
||||||
else if (SystemInfo.operatingSystemFamily == OperatingSystemFamily.MacOSX && e.commandName == "Delete") RemoveSelectedNodes();
|
if (e.commandName == "SoftDelete") {
|
||||||
else if (e.commandName == "Duplicate") DublicateSelectedNodes();
|
if (e.type == EventType.ExecuteCommand) RemoveSelectedNodes();
|
||||||
|
e.Use();
|
||||||
|
} else if (SystemInfo.operatingSystemFamily == OperatingSystemFamily.MacOSX && e.commandName == "Delete") {
|
||||||
|
if (e.type == EventType.ExecuteCommand) RemoveSelectedNodes();
|
||||||
|
e.Use();
|
||||||
|
} else if (e.commandName == "Duplicate") {
|
||||||
|
if (e.type == EventType.ExecuteCommand) DuplicateSelectedNodes();
|
||||||
|
e.Use();
|
||||||
|
}
|
||||||
Repaint();
|
Repaint();
|
||||||
break;
|
break;
|
||||||
case EventType.Ignore:
|
case EventType.Ignore:
|
||||||
@ -357,8 +365,8 @@ namespace XNodeEditor {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary> Dublicate selected nodes and select the dublicates </summary>
|
/// <summary> Duplicate selected nodes and select the duplicates </summary>
|
||||||
public void DublicateSelectedNodes() {
|
public void DuplicateSelectedNodes() {
|
||||||
UnityEngine.Object[] newNodes = new UnityEngine.Object[Selection.objects.Length];
|
UnityEngine.Object[] newNodes = new UnityEngine.Object[Selection.objects.Length];
|
||||||
Dictionary<XNode.Node, XNode.Node> substitutes = new Dictionary<XNode.Node, XNode.Node>();
|
Dictionary<XNode.Node, XNode.Node> substitutes = new Dictionary<XNode.Node, XNode.Node>();
|
||||||
for (int i = 0; i < Selection.objects.Length; i++) {
|
for (int i = 0; i < Selection.objects.Length; i++) {
|
||||||
|
|||||||
@ -126,7 +126,7 @@ namespace XNodeEditor {
|
|||||||
contextMenu.AddItem(new GUIContent("Rename"), false, RenameSelectedNode);
|
contextMenu.AddItem(new GUIContent("Rename"), false, RenameSelectedNode);
|
||||||
}
|
}
|
||||||
|
|
||||||
contextMenu.AddItem(new GUIContent("Duplicate"), false, DublicateSelectedNodes);
|
contextMenu.AddItem(new GUIContent("Duplicate"), false, DuplicateSelectedNodes);
|
||||||
contextMenu.AddItem(new GUIContent("Remove"), false, RemoveSelectedNodes);
|
contextMenu.AddItem(new GUIContent("Remove"), false, RemoveSelectedNodes);
|
||||||
|
|
||||||
// If only one node is selected
|
// If only one node is selected
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user