Files
XRLib/Assets/Scripts/SHI/modal/ModelDetailListItemData.cs
2025-11-14 19:54:04 +09:00

43 lines
1.4 KiB
C#

#nullable enable
using System;
using UVC.UI.List.Tree;
namespace SHI.modal
{
public class ModelDetailListItemData : TreeListItemData
{
/// <summary>
/// 아이템의 가시성 아이콘 클릭 시 실행할 사용자 정의 동작.
/// </summary>
public Action<TreeListItemData, bool>? OnClickVisibleAction;
/// <summary>
/// 리스트/모델 가시성 상태
/// </summary>
public bool IsVisible { get; set; } = true;
/// <summary>
/// 외부(간트/백엔드)와의 안정 매핑용 키. 예: GLTF 노드의 풀 경로("/Root/Level1/Beam023").
/// </summary>
public string ExternalKey { get; set; } = string.Empty;
public override TreeListItemData Clone()
{
ModelDetailListItemData clone = new ModelDetailListItemData();
clone._id = this.Id;
clone.Name = this.Name;
clone.Option = this.Option;
clone.IsExpanded = this.IsExpanded;
clone.IsSelected = this.IsSelected;
clone.OnClickAction = this.OnClickAction;
clone.OnSelectionChanged = this.OnSelectionChanged;
clone.OnDataChanged = this.OnDataChanged;
clone.IsVisible = this.IsVisible;
clone.ExternalKey = this.ExternalKey;
clone.OnClickVisibleAction = this.OnClickVisibleAction;
return clone;
}
}
}