using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using UnityEngine; namespace VketCloudGUITools.Runtime { [Serializable] public class GUIActionListItem : ScriptableObject, ICloneable { [SerializeField] public GUIAction.FuncType GUIActionType = GUIAction.FuncType.Func; [SerializeField][HideInInspector] public GUIAction GUIAction = null; public object Clone() { var clone = CreateInstance(); clone.GUIActionType = GUIActionType; clone.GUIAction = GUIAction.Clone() as GUIAction; return clone; } public void OnEnable() { if (GUIAction == null) GUIAction = CreateInstance(); } } }