25 lines
552 B
C#
25 lines
552 B
C#
using R3;
|
|
using UnityEngine;
|
|
|
|
namespace FlowScope.UI
|
|
{
|
|
public abstract class UIPanelBase<TViewModel> : MonoBehaviour
|
|
{
|
|
protected TViewModel ViewModel { get; private set; }
|
|
protected CompositeDisposable Disposables { get; } = new();
|
|
|
|
public void Bind(TViewModel viewModel)
|
|
{
|
|
ViewModel = viewModel;
|
|
OnBind(viewModel);
|
|
}
|
|
|
|
public virtual void Unbind()
|
|
{
|
|
Disposables.Clear();
|
|
}
|
|
|
|
protected abstract void OnBind(TViewModel viewModel);
|
|
}
|
|
}
|