Files
EnglewoodLAB/Assets/Sample/HierarchySample.cs
2026-03-10 11:35:30 +09:00

51 lines
1.6 KiB
C#

using UnityEngine;
using UVC.UI.List.Tree;
using UVC.UI.Window;
public class HierarchySample : MonoBehaviour
{
[SerializeField]
private HierarchyWindow hierarchyWindow;
void Start()
{
for (int i = 0; i < 10; i++)
{
TreeListItemData itemData = new TreeListItemData("Item " + i);
int len = 5;// i < 5 ? 0 : 2;// Random.Range(1, 5);
Debug.Log("len: " + len);
for (int j = 0; j < len; j++)
{
itemData.AddChild(new TreeListItemData("Item " + i + "." + j));
int childLen = 3;// Random.Range(0, 3);
for (int k = 0; k < childLen; k++)
{
itemData.Children[j].AddChild(new TreeListItemData("Item " + i + "." + j + "." + k));
for (int l = 0; l < 2; l++)
{
itemData.Children[j].Children[k].AddChild(new TreeListItemData("Item " + i + "." + j + "." + k + "." + l));
}
}
}
hierarchyWindow.AddItem(itemData);
}
hierarchyWindow.OnItemSelected += (data) =>
{
Debug.Log("Selected Item: " + data.Name);
};
hierarchyWindow.OnItemDeselected += (data) =>
{
Debug.Log("Deselected Item: " + data.Name);
};
hierarchyWindow.OnItemVisibilityChanged += (data, isVisible) =>
{
Debug.Log($"Item Visibility Changed: {data.Name}, IsVisible: {isVisible}");
};
}
}