diff options
author | chai <chaifix@163.com> | 2022-06-28 09:40:37 +0800 |
---|---|---|
committer | chai <chaifix@163.com> | 2022-06-28 09:40:37 +0800 |
commit | 49b25e755b70ec412feaaf0b898d6f7e09d2bea6 (patch) | |
tree | 3c5f4260f30d1c2d7196db93153700d7ddec3157 /Other/NodeEditorExamples/Assets/xNode-examples/Examples/RuntimeMathGraph/Scripts/RuntimeNodes/UGUIMathBaseNode.cs | |
parent | c92269331692feca2c276649f6c4ee8911f1f859 (diff) |
+node example
Diffstat (limited to 'Other/NodeEditorExamples/Assets/xNode-examples/Examples/RuntimeMathGraph/Scripts/RuntimeNodes/UGUIMathBaseNode.cs')
-rw-r--r-- | Other/NodeEditorExamples/Assets/xNode-examples/Examples/RuntimeMathGraph/Scripts/RuntimeNodes/UGUIMathBaseNode.cs | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/Other/NodeEditorExamples/Assets/xNode-examples/Examples/RuntimeMathGraph/Scripts/RuntimeNodes/UGUIMathBaseNode.cs b/Other/NodeEditorExamples/Assets/xNode-examples/Examples/RuntimeMathGraph/Scripts/RuntimeNodes/UGUIMathBaseNode.cs new file mode 100644 index 00000000..8b9c6496 --- /dev/null +++ b/Other/NodeEditorExamples/Assets/xNode-examples/Examples/RuntimeMathGraph/Scripts/RuntimeNodes/UGUIMathBaseNode.cs @@ -0,0 +1,49 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; +using UnityEngine.EventSystems; +using UnityEngine.UI; +using XNode.Examples.MathNodes; + +namespace XNode.Examples.RuntimeMathNodes { + public class UGUIMathBaseNode : MonoBehaviour, IDragHandler { + [HideInInspector] public Node node; + [HideInInspector] public RuntimeMathGraph graph; + public Text header; + + private UGUIPort[] ports; + + public virtual void Start() { + ports = GetComponentsInChildren<UGUIPort>(); + foreach (UGUIPort port in ports) port.node = node; + header.text = node.name; + SetPosition(node.position); + } + + public virtual void UpdateGUI() { } + + private void LateUpdate() { + foreach (UGUIPort port in ports) port.UpdateConnectionTransforms(); + } + + public UGUIPort GetPort(string name) { + for (int i = 0; i < ports.Length; i++) { + if (ports[i].name == name) return ports[i]; + } + return null; + } + + public void SetPosition(Vector2 pos) { + pos.y = -pos.y; + transform.localPosition = pos; + } + + public void SetName(string name) { + header.text = name; + } + + public void OnDrag(PointerEventData eventData) { + + } + } +}
\ No newline at end of file |