1
0
mirror of https://github.com/Siccity/xNode.git synced 2026-02-06 07:14:56 +08:00

Merge pull request #78 from tmorgner/EditNodeName

Clear edit-mode when reselecting node while renaming node
This commit is contained in:
Thor Brigsted 2018-11-16 13:17:17 +01:00 committed by GitHub
commit 3c991429e9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -13,19 +13,28 @@ namespace XNodeEditor {
/// <summary> Fires every whenever a node was modified through the editor </summary>
public static Action<XNode.Node> onUpdateNode;
public static Dictionary<XNode.NodePort, Vector2> portPositions;
public static int renaming;
public int renaming;
public virtual void OnHeaderGUI() {
string title = target.name;
if (renaming != 0 && Selection.Contains(target)) {
int controlID = EditorGUIUtility.GetControlID(FocusType.Keyboard) + 1;
if (renaming == 1) {
EditorGUIUtility.keyboardControl = controlID;
EditorGUIUtility.editingTextField = true;
renaming = 2;
if (renaming != 0) {
if (Selection.Contains(target)) {
int controlID = EditorGUIUtility.GetControlID(FocusType.Keyboard) + 1;
if (renaming == 1) {
EditorGUIUtility.keyboardControl = controlID;
EditorGUIUtility.editingTextField = true;
renaming = 2;
}
target.name = EditorGUILayout.TextField(target.name, NodeEditorResources.styles.nodeHeader, GUILayout.Height(30));
if (!EditorGUIUtility.editingTextField) {
Debug.Log("Finish renaming");
Rename(target.name);
renaming = 0;
}
}
target.name = EditorGUILayout.TextField(target.name, NodeEditorResources.styles.nodeHeader, GUILayout.Height(30));
if (!EditorGUIUtility.editingTextField) {
else {
// Selection changed, so stop renaming.
GUILayout.Label(title, NodeEditorResources.styles.nodeHeader, GUILayout.Height(30));
Rename(target.name);
renaming = 0;
}