| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- namespace SRDebugger.UI.Controls.Data
- {
- using System;
- using SRF;
- using UnityEngine;
- using UnityEngine.UI;
- public class ActionControl : OptionsControlBase
- {
- private SRF.Helpers.MethodReference _method;
- [RequiredField] public UnityEngine.UI.Button Button;
- [RequiredField] public Text Title;
- public SRF.Helpers.MethodReference Method
- {
- get { return _method; }
- }
- protected override void Start()
- {
- base.Start();
- Button.onClick.AddListener(ButtonOnClick);
- }
- private void ButtonOnClick()
- {
- if (_method == null)
- {
- Debug.LogWarning("[SRDebugger.Options] No method set for action control", this);
- return;
- }
- try
- {
- _method.Invoke(null);
- }
- catch (Exception e)
- {
- Debug.LogError("[SRDebugger] Exception thrown while executing action.");
- Debug.LogException(e);
- }
- }
- public void SetMethod(string methodName, SRF.Helpers.MethodReference method)
- {
- _method = method;
- Title.text = methodName;
- }
- }
- }
|