Files
EnglewoodLAB/Assets/Scripts/UI/Studio/LibraryView.cs
2026-03-09 17:00:30 +09:00

33 lines
1.0 KiB
C#

using UnityEngine;
using UnityEngine.UIElements;
using System;
public class LibraryView : VisualElement
{
public event Action<bool> OnDragStateChanged;
private readonly Transform _stage; // 3D 객체가 놓일 공간
public LibraryView(Transform stage)
{
_stage = stage;
// UXML 로드
var visualTree = Resources.Load<VisualTreeAsset>("UI/Studio/LibraryView");
visualTree.CloneTree(this);
// Accordion 리스트, 스크롤 뷰 등을 여기서 Q<T>()로 찾습니다.
// 예: var accordionList = this.Q<ScrollView>("accordion-list");
// 드래그 로직을 담당할 PointerManipulator를 여기에 등록합니다.
// manipulator.OnDragStarted += () => OnDragStateChanged?.Invoke(false);
// manipulator.OnDragFinished += () => OnDragStateChanged?.Invoke(true);
// TODO: Manipulator 등록 및 데이터 로딩 로직 구현
}
public void LoadData(object libraryData)
{
// TODO: 라이브러리 데이터를 받아 동적으로 아이템 VisualElement를 생성하는 로직
}
}