Switch out dotnet ctk messenger for source gen Meditor

This commit is contained in:
Daniel Clark
2022-12-07 19:30:31 +00:00
parent 1cd2141ad5
commit 6df08fc42c
22 changed files with 280 additions and 192 deletions
@@ -1,6 +1,6 @@
namespace Toolkit.Foundation
{
public interface INavigationRouter
public interface INavigationRouter : IInitializer
{
void Navigate(Navigate args);
@@ -1,19 +1,18 @@
using CommunityToolkit.Mvvm.Messaging;
namespace Toolkit.Foundation
{
public class NavigateHandler : IRecipient<Navigate>
{
private readonly IMessenger messenger;
//public class NavigateHandler : IRecipient<Navigate>
//{
// private readonly IMessenger messenger;
public NavigateHandler(IMessenger messenger)
{
this.messenger = messenger;
}
// public NavigateHandler(IMessenger messenger)
// {
// this.messenger = messenger;
// }
public void Receive(Navigate request)
{
messenger.Send(request);
}
}
// public void Receive(Navigate request)
// {
// messenger.Send(request);
// }
//}
}
+7 -7
View File
@@ -1,30 +1,30 @@
namespace Toolkit.Foundation
{
public class Navigated<TContent, TDataContext> where TContent : class where TDataContext : class
public class Navigated<TTemplate, TContent> where TTemplate : class where TContent : class
{
public Navigated()
{
}
public Navigated(TContent content, TDataContext dataContext, IDictionary<string, object>? parameters = null)
public Navigated(TTemplate template, TContent content, IDictionary<string, object>? parameters = null)
{
Template = template;
Content = content;
DataContext = dataContext;
Parameters = parameters;
}
public TContent? Content { get; }
public TTemplate? Template { get; }
public TDataContext? DataContext { get; }
public TContent? Content { get; }
public IDictionary<string, object>? Parameters { get; }
}
public class Navigated
{
public static Navigated<TTemplate, TDataTemplate> Create<TTemplate, TDataTemplate>(TTemplate content, TDataTemplate dataContext, IDictionary<string, object>? parameters = null) where TTemplate : class where TDataTemplate : class
public static Navigated<TTemplate, TContent> Create<TTemplate, TContent>(TTemplate template, TContent? content, IDictionary<string, object>? parameters = null) where TTemplate : class where TContent : class
{
return new Navigated<TTemplate, TDataTemplate>(content, dataContext, parameters);
return new Navigated<TTemplate, TContent>(template, content, parameters);
}
}
}