51 lines
1.6 KiB
C#
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}");
|
|
};
|
|
}
|
|
|
|
}
|