ProjectDDD/Assets/_DDD/_Scripts/GameUi/RestaurantManagementUi/TabUi/ITabButton.cs
2025-08-17 08:57:23 +09:00

40 lines
1.1 KiB
C#

using System;
using UnityEngine;
namespace DDD
{
/// <summary>
/// 탭 버튼이 구현해야 할 인터페이스
/// CommonTabGroupUi와 통신하기 위해 필요한 메서드들을 정의합니다.
/// </summary>
public interface ITabButton
{
/// <summary>
/// 탭의 값 (enum의 int 값)
/// </summary>
int TabValue { get; }
/// <summary>
/// 탭이 상호작용 가능한지 여부
/// </summary>
bool IsInteractable { get; }
/// <summary>
/// 탭 데이터를 설정합니다.
/// </summary>
/// <param name="tabValue">탭 값</param>
void SetTabData(int tabValue);
/// <summary>
/// 탭의 선택 상태를 설정합니다.
/// </summary>
/// <param name="isSelected">선택 여부</param>
void SetSelected(bool isSelected);
/// <summary>
/// 탭이 클릭되었을 때 발생하는 이벤트
/// </summary>
event Action<int> OnTabClicked;
}
}