Files
test/Assets/PerfectWorld/Scripts/Task/UI/TaskTreeViewItem.cs
T

64 lines
1.5 KiB
C#

using TMPro;
using UnityEngine;
using UnityEngine.Events;
using UnityEngine.EventSystems;
using UnityEngine.UI;
namespace BrewMonster.PerfectWorld.Scripts.Task.UI
{
public class TaskTreeViewItem : MonoBehaviour, IPointerClickHandler
{
[SerializeField] private TMP_Text m_text;
[SerializeField] private Button m_Button;
[Header("DEBUG")]
[SerializeField] private uint m_uItemData;
public UnityEvent<uint> OnClick = new UnityEvent<uint>();
public void SetItemData(uint uItemData)
{
m_uItemData = uItemData;
}
public uint GetItemData()
{
return m_uItemData;
}
public void SetItemTextColor(Color color)
{
if (m_text != null)
{
m_text.color = color;
}
}
public void SetItemText(string text)
{
if (m_text != null)
{
m_text.text = text;
}
}
public void OnPointerClick(PointerEventData eventData)
{
OnClick.Invoke(m_uItemData);
// EventBus.Publish(new TaskItemClickEvent() { Data = m_uItemData });
TaskWindow.Instance.OnEventLButtonDown_Tv_Quest(m_uItemData);
}
}
public struct TaskItemClickEvent
{
public uint Data;
public TaskItemClickEvent(uint data)
{
Data = data;
}
}
}