diff --git a/Scripts/Editor/NodeEditor.cs b/Scripts/Editor/NodeEditor.cs
index 91d92d0..7652658 100644
--- a/Scripts/Editor/NodeEditor.cs
+++ b/Scripts/Editor/NodeEditor.cs
@@ -12,7 +12,7 @@ namespace XNodeEditor {
/// Fires every whenever a node was modified through the editor
public static Action onUpdateNode;
- public static Dictionary portPositions;
+ public readonly static Dictionary portPositions = new Dictionary();
public virtual void OnHeaderGUI() {
GUILayout.Label(target.name, NodeEditorResources.styles.nodeHeader, GUILayout.Height(30));
@@ -25,7 +25,6 @@ namespace XNodeEditor {
// serializedObject.ApplyModifiedProperties(); goes at the end.
serializedObject.Update();
string[] excludes = { "m_Script", "graph", "position", "ports" };
- portPositions = new Dictionary();
// Iterate through serialized properties and draw them like the Inspector (But with ports)
SerializedProperty iterator = serializedObject.GetIterator();
diff --git a/Scripts/Editor/NodeEditorGUI.cs b/Scripts/Editor/NodeEditorGUI.cs
index c773571..c9c460f 100644
--- a/Scripts/Editor/NodeEditorGUI.cs
+++ b/Scripts/Editor/NodeEditorGUI.cs
@@ -301,7 +301,7 @@ namespace XNodeEditor {
NodeEditor nodeEditor = NodeEditor.GetEditor(node, this);
- NodeEditor.portPositions = new Dictionary();
+ NodeEditor.portPositions.Clear();
//Get node position
Vector2 nodePos = GridToWindowPositionNoClipped(node.position);
@@ -351,8 +351,7 @@ namespace XNodeEditor {
Vector2 portHandlePos = kvp.Value;
portHandlePos += node.position;
Rect rect = new Rect(portHandlePos.x - 8, portHandlePos.y - 8, 16, 16);
- if (portConnectionPoints.ContainsKey(kvp.Key)) portConnectionPoints[kvp.Key] = rect;
- else portConnectionPoints.Add(kvp.Key, rect);
+ portConnectionPoints[kvp.Key] = rect;
}
}
diff --git a/Scripts/Editor/NodeEditorGUILayout.cs b/Scripts/Editor/NodeEditorGUILayout.cs
index 1826107..344b3fb 100644
--- a/Scripts/Editor/NodeEditorGUILayout.cs
+++ b/Scripts/Editor/NodeEditorGUILayout.cs
@@ -147,8 +147,7 @@ namespace XNodeEditor {
// Register the handle position
Vector2 portPos = rect.center;
- if (NodeEditor.portPositions.ContainsKey(port)) NodeEditor.portPositions[port] = portPos;
- else NodeEditor.portPositions.Add(port, portPos);
+ NodeEditor.portPositions[port] = portPos;
}
}
@@ -204,8 +203,7 @@ namespace XNodeEditor {
// Register the handle position
Vector2 portPos = rect.center;
- if (NodeEditor.portPositions.ContainsKey(port)) NodeEditor.portPositions[port] = portPos;
- else NodeEditor.portPositions.Add(port, portPos);
+ NodeEditor.portPositions[port] = portPos;
}
/// Add a port field to previous layout element.
@@ -233,8 +231,7 @@ namespace XNodeEditor {
// Register the handle position
Vector2 portPos = rect.center;
- if (NodeEditor.portPositions.ContainsKey(port)) NodeEditor.portPositions[port] = portPos;
- else NodeEditor.portPositions.Add(port, portPos);
+ NodeEditor.portPositions[port] = portPos;
}
/// Draws an input and an output port on the same line