Files
NebulaLauncher/Nebula.Launcher/ViewModels/Popup/PopupViewModelBase.cs
2025-12-11 21:47:54 +03:00

22 lines
555 B
C#

using System;
using Nebula.Shared.Services;
namespace Nebula.Launcher.ViewModels.Popup;
public abstract class PopupViewModelBase : ViewModelBase, IDisposable
{
public abstract PopupMessageService PopupMessageService { get; }
public abstract string Title { get; }
public abstract bool IsClosable { get; }
public Action<PopupViewModelBase>? OnDisposing;
public void Dispose()
{
OnDispose();
OnDisposing?.Invoke(this);
PopupMessageService.ClosePopup(this);
}
protected virtual void OnDispose(){}
}