43 lines
1.4 KiB
C#
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;
|
|
}
|
|
}
|
|
}
|