WIP: animation.

This commit is contained in:
rabbitism
2024-02-04 16:06:34 +08:00
parent f3cd4fb74b
commit ff8d4b1dcd
15 changed files with 282 additions and 16 deletions

View File

@@ -1,12 +1,21 @@
namespace Ursa.Controls;
using Avalonia.Controls;
using Ursa.Common;
namespace Ursa.Controls;
public static class Drawer
{
public static Task<TResult?> ShowDialogAsync<TView, TViewModel, TResult>(TViewModel viewModel)
public static Task<TResult?> Show<TView, TViewModel, TResult>(TViewModel vm, Position position = Position.Right)
where TView: Control, new()
{
var host = OverlayDialogManager.GetHost(null);
if (host is null) return Task.FromResult(default(TResult));
var dialog = new DefaultDrawerControl();
var dialog = new CustomDrawerControl()
{
Content = new TView(),
DataContext = vm,
Position = position,
};
host.AddDrawer(dialog);
return dialog.ShowAsync<TResult>();
}