This commit is contained in:
TheXamlGuy
2024-06-16 17:25:13 +01:00
parent 02969b3850
commit 8d574362a0
22 changed files with 56 additions and 52 deletions
+2 -2
View File
@@ -21,7 +21,7 @@ public class ContentControlHandler :
{ {
if (content is IActivated activated) if (content is IActivated activated)
{ {
await activated.OnActivated(); await activated.Activated();
} }
} }
@@ -35,7 +35,7 @@ public class ContentControlHandler :
{ {
if (content is IDeactivated deactivated) if (content is IDeactivated deactivated)
{ {
await deactivated.OnDeactivated(); await deactivated.Deactivated();
} }
if (content is IDisposable disposable) if (content is IDisposable disposable)
+3 -3
View File
@@ -81,7 +81,7 @@ public class ContentDialogHandler(IDispatcher dispatcher) :
{ {
if (content is IDeactivating deactivating) if (content is IDeactivating deactivating)
{ {
await deactivating.OnDeactivating(); await deactivating.Deactivating();
} }
} }
} }
@@ -96,7 +96,7 @@ public class ContentDialogHandler(IDispatcher dispatcher) :
{ {
if (content is IActivated activated) if (content is IActivated activated)
{ {
await activated.OnActivated(); await activated.Activated();
} }
} }
} }
@@ -109,7 +109,7 @@ public class ContentDialogHandler(IDispatcher dispatcher) :
{ {
if (content is IDeactivated deactivated) if (content is IDeactivated deactivated)
{ {
await deactivated.OnDeactivated(); await deactivated.Deactivated();
} }
} }
} }
+2 -2
View File
@@ -29,7 +29,7 @@ public class ContentTemplate :
{ {
if (content is IActivated activated) if (content is IActivated activated)
{ {
await activated.OnActivated(); await activated.Activated();
} }
} }
} }
@@ -41,7 +41,7 @@ public class ContentTemplate :
{ {
if (content is IDeactivated deactivated) if (content is IDeactivated deactivated)
{ {
await deactivated.OnDeactivated(); await deactivated.Deactivated();
} }
} }
} }
+4 -4
View File
@@ -37,7 +37,7 @@ public class FrameHandler :
{ {
if (content is IDeactivated deactivated) if (content is IDeactivated deactivated)
{ {
await deactivated.OnDeactivated(); await deactivated.Deactivated();
} }
if (content is not IKeepAlive) if (content is not IKeepAlive)
@@ -63,7 +63,7 @@ public class FrameHandler :
{ {
if (content is IDeactivating deactivating) if (content is IDeactivating deactivating)
{ {
await deactivating.OnDeactivating(); await deactivating.Deactivating();
} }
} }
} }
@@ -74,7 +74,7 @@ public class FrameHandler :
{ {
if (content is IActivated activated) if (content is IActivated activated)
{ {
await activated.OnActivated(); await activated.Activated();
} }
} }
@@ -89,7 +89,7 @@ public class FrameHandler :
{ {
if (content is IDeactivated deactivated) if (content is IDeactivated deactivated)
{ {
await deactivated.OnDeactivated(); await deactivated.Deactivated();
} }
if (content is IDisposable disposable) if (content is IDisposable disposable)
+1 -1
View File
@@ -10,7 +10,7 @@ public class AppService(IEnumerable<IInitialization> initializers,
{ {
foreach (IInitialization initializer in initializers) foreach (IInitialization initializer in initializers)
{ {
await initializer.OnInitialize(); await initializer.Initialize();
} }
publisher.Publish<StartedEventArgs>(); publisher.Publish<StartedEventArgs>();
@@ -51,10 +51,10 @@ public partial class ComponentConfigurationViewModel<TConfiguration, TValue, TAc
[ObservableProperty] [ObservableProperty]
private object description = description; private object description = description;
public override Task OnActivated() public override Task Activated()
{ {
Value = valueDelegate.Invoke(configuration); Value = valueDelegate.Invoke(configuration);
return base.OnActivated(); return base.Activated();
} }
public Task Handle(ChangedEventArgs<TConfiguration> args) public Task Handle(ChangedEventArgs<TConfiguration> args)
@@ -93,10 +93,10 @@ public partial class ComponentConfigurationViewModel<TConfiguration, TValue, TDe
[ObservableProperty] [ObservableProperty]
private TDescription description = description; private TDescription description = description;
public override Task OnActivated() public override Task Activated()
{ {
Value = valueDelegate.Invoke(configuration); Value = valueDelegate.Invoke(configuration);
return base.OnActivated(); return base.Activated();
} }
public Task Handle(ChangedEventArgs<TConfiguration> args) public Task Handle(ChangedEventArgs<TConfiguration> args)
+1 -1
View File
@@ -23,7 +23,7 @@ public class ComponentHost(IServiceProvider services,
{ {
foreach (IInitialization initializer in initializers) foreach (IInitialization initializer in initializers)
{ {
await initializer.OnInitialize(); await initializer.Initialize();
} }
foreach (IHostedService service in hostedServices) foreach (IHostedService service in hostedServices)
+1 -1
View File
@@ -9,7 +9,7 @@ public class ComponentInitializer(IEnumerable<IComponent> components,
IServiceProvider provider) : IServiceProvider provider) :
IInitialization IInitialization
{ {
public async Task OnInitialize() public async Task Initialize()
{ {
foreach (IComponent component in components) foreach (IComponent component in components)
{ {
@@ -9,7 +9,7 @@ public class ConfigurationInitializer<TConfiguration>(IConfigurationReader<TConf
where TConfiguration : where TConfiguration :
class class
{ {
public Task OnInitialize() public Task Initialize()
{ {
if (!reader.TryRead(out TConfiguration? configuration)) if (!reader.TryRead(out TConfiguration? configuration))
{ {
+2 -2
View File
@@ -20,14 +20,14 @@ public class ContentFactory(IMediator mediator,
{ {
if (args is IInitialization initialization) if (args is IInitialization initialization)
{ {
initialization.OnInitialize(); initialization.Initialize();
} }
}, parameters) }, parameters)
: provider.GetRequiredKeyedService(descriptor.ContentType, args => : provider.GetRequiredKeyedService(descriptor.ContentType, args =>
{ {
if (args is IInitialization initialization) if (args is IInitialization initialization)
{ {
initialization.OnInitialize(); initialization.Initialize();
} }
}, descriptor.Key); }, descriptor.Key);
+1 -1
View File
@@ -2,5 +2,5 @@
public interface IActivated public interface IActivated
{ {
Task OnActivated(); Task Activated();
} }
@@ -4,5 +4,5 @@ public interface IConfigurationInitializer<TConfiguration>
where TConfiguration : where TConfiguration :
class class
{ {
Task OnInitialize(); Task Initialize();
} }
+1 -1
View File
@@ -2,5 +2,5 @@
public interface IDeactivated public interface IDeactivated
{ {
Task OnDeactivated(); Task Deactivated();
} }
+1 -1
View File
@@ -2,5 +2,5 @@
public interface IDeactivating public interface IDeactivating
{ {
Task OnDeactivating(); Task Deactivating();
} }
+1 -1
View File
@@ -2,5 +2,5 @@
public interface IInitialization public interface IInitialization
{ {
Task OnInitialize(); Task Initialize();
} }
+1 -1
View File
@@ -2,5 +2,5 @@
public interface ISelectable public interface ISelectable
{ {
bool Selected { get; set; } bool IsSelected { get; set; }
} }
+1 -1
View File
@@ -6,7 +6,7 @@ namespace Toolkit.Foundation;
public interface IValidation : public interface IValidation :
INotifyPropertyChanged INotifyPropertyChanged
{ {
ValidationErrorCollection Errors { get; } IReadOnlyDictionary<string, string> Errors { get; }
bool HasErrors { get; } bool HasErrors { get; }
+4 -4
View File
@@ -56,7 +56,7 @@ public partial class Observable(IServiceProvider provider,
Disposer.Dispose(this); Disposer.Dispose(this);
} }
public virtual Task OnInitialize() public virtual Task Initialize()
{ {
if (IsInitialized) if (IsInitialized)
{ {
@@ -72,20 +72,20 @@ public partial class Observable(IServiceProvider provider,
[ObservableProperty] [ObservableProperty]
private bool isActivated; private bool isActivated;
public virtual Task OnActivated() public virtual Task Activated()
{ {
IsActivated = true; IsActivated = true;
return Task.CompletedTask; return Task.CompletedTask;
} }
public virtual Task OnDeactivated() public virtual Task Deactivated()
{ {
IsActivated = false; IsActivated = false;
return Task.CompletedTask; return Task.CompletedTask;
} }
public virtual Task OnDeactivating() => public virtual Task Deactivating() =>
Task.CompletedTask; Task.CompletedTask;
public void Revert() public void Revert()
+13 -12
View File
@@ -37,6 +37,7 @@ public partial class ObservableCollection<TItem> :
private readonly System.Collections.ObjectModel.ObservableCollection<TItem> collection = []; private readonly System.Collections.ObjectModel.ObservableCollection<TItem> collection = [];
private readonly IDispatcher dispatcher; private readonly IDispatcher dispatcher;
private readonly Queue<object> pendingEvents = []; private readonly Queue<object> pendingEvents = [];
private readonly Dictionary<string, object> trackedProperties = []; private readonly Dictionary<string, object> trackedProperties = [];
@@ -151,7 +152,7 @@ public partial class ObservableCollection<TItem> :
{ {
if (args is IInitialization initialization) if (args is IInitialization initialization)
{ {
initialization.OnInitialize(); initialization.Initialize();
} }
}, parameters); }, parameters);
@@ -403,7 +404,7 @@ public partial class ObservableCollection<TItem> :
{ {
if (args is IInitialization initialization) if (args is IInitialization initialization)
{ {
initialization.OnInitialize(); initialization.Initialize();
} }
}, parameters); }, parameters);
@@ -442,7 +443,7 @@ public partial class ObservableCollection<TItem> :
bool moveSelection = false; bool moveSelection = false;
if (item is ISelectable oldSelection) if (item is ISelectable oldSelection)
{ {
if (oldSelection.Selected) if (oldSelection.IsSelected)
{ {
moveSelection = true; moveSelection = true;
SelectedItem = default; SelectedItem = default;
@@ -456,7 +457,7 @@ public partial class ObservableCollection<TItem> :
{ {
if (item is ISelectable newSelection) if (item is ISelectable newSelection)
{ {
newSelection.Selected = true; newSelection.IsSelected = true;
dispatcher.Invoke(() => SelectedItem = item); dispatcher.Invoke(() => SelectedItem = item);
} }
} }
@@ -478,7 +479,7 @@ public partial class ObservableCollection<TItem> :
return true; return true;
} }
public virtual Task OnActivated() public virtual Task Activated()
{ {
IsActivated = true; IsActivated = true;
while (pendingEvents.Count > 0) while (pendingEvents.Count > 0)
@@ -490,16 +491,16 @@ public partial class ObservableCollection<TItem> :
return Task.CompletedTask; return Task.CompletedTask;
} }
public virtual Task OnDeactivated() public virtual Task Deactivated()
{ {
IsActivated = false; IsActivated = false;
return Task.CompletedTask; return Task.CompletedTask;
} }
public virtual Task OnDeactivating() => public virtual Task Deactivating() =>
Task.CompletedTask; Task.CompletedTask;
public virtual Task OnInitialize() public virtual Task Initialize()
{ {
if (IsInitialized) if (IsInitialized)
{ {
@@ -634,12 +635,12 @@ public partial class ObservableCollection<TItem> :
{ {
if (oldValue is ISelectable oldSelection) if (oldValue is ISelectable oldSelection)
{ {
oldSelection.Selected = false; oldSelection.IsSelected = false;
} }
if (newValue is ISelectable newSelection) if (newValue is ISelectable newSelection)
{ {
newSelection.Selected = true; newSelection.IsSelected = true;
} }
} }
@@ -647,11 +648,11 @@ public partial class ObservableCollection<TItem> :
{ {
if (item is ISelectable newSelection) if (item is ISelectable newSelection)
{ {
if (newSelection.Selected) if (newSelection.IsSelected)
{ {
if (SelectedItem is ISelectable oldSelection) if (SelectedItem is ISelectable oldSelection)
{ {
oldSelection.Selected = false; oldSelection.IsSelected = false;
} }
dispatcher.Invoke(() => SelectedItem = item); dispatcher.Invoke(() => SelectedItem = item);
+8 -5
View File
@@ -8,7 +8,10 @@ public class Validation(IValidatorCollection validators) :
{ {
public event PropertyChangedEventHandler? PropertyChanged; public event PropertyChangedEventHandler? PropertyChanged;
public ValidationErrorCollection Errors { get; } = []; private readonly ValidationErrorCollection errors = [];
public IReadOnlyDictionary<string, string> Errors =>
errors.AsReadOnly();
public bool HasErrors => public bool HasErrors =>
Errors.Count > 0; Errors.Count > 0;
@@ -38,7 +41,7 @@ public class Validation(IValidatorCollection validators) :
{ {
if (Errors.ContainsKey(name)) if (Errors.ContainsKey(name))
{ {
Errors.Remove(name); errors.Remove(name);
} }
if (Validators.TryGet(name, out Validator? validator)) if (Validators.TryGet(name, out Validator? validator))
@@ -47,7 +50,7 @@ public class Validation(IValidatorCollection validators) :
{ {
if (!validator.TryValidate(out string? message)) if (!validator.TryValidate(out string? message))
{ {
Errors[name] = message ?? ""; errors[name] = message ?? "";
} }
} }
} }
@@ -60,14 +63,14 @@ public class Validation(IValidatorCollection validators) :
public bool Validate() public bool Validate()
{ {
Errors.Clear(); errors.Clear();
foreach (Validator? validator in Validators) foreach (Validator? validator in Validators)
{ {
if (validator.PropertyName is string name) if (validator.PropertyName is string name)
{ {
if (!validator.TryValidate(out string? message)) if (!validator.TryValidate(out string? message))
{ {
Errors[name] = message ?? ""; errors[name] = message ?? "";
} }
} }
} }
@@ -42,7 +42,7 @@ public class ValidationErrorCollection :
public string this[string key] public string this[string key]
{ {
get => items.ContainsKey(key) ? items[key] : ""; get => items.TryGetValue(key, out string? value) ? value : "";
set set
{ {
bool replace = items.TryGetValue(key, out var old); bool replace = items.TryGetValue(key, out var old);
@@ -21,7 +21,7 @@ public class InvokeNavigationViewItemAction :
{ {
if (collection is { Count: > 0 } && collection[0] is ISelectable selectable) if (collection is { Count: > 0 } && collection[0] is ISelectable selectable)
{ {
selectable.Selected = true; selectable.IsSelected = true;
} }
} }
}, DispatcherPriority.ContextIdle); }, DispatcherPriority.ContextIdle);
@@ -35,7 +35,7 @@ public class InvokeNavigationViewItemAction :
{ {
if (collection is { Count: > 0 } && collection[0] is ISelectable selectable) if (collection is { Count: > 0 } && collection[0] is ISelectable selectable)
{ {
selectable.Selected = true; selectable.IsSelected = true;
} }
} }
}, DispatcherPriority.ContextIdle); }, DispatcherPriority.ContextIdle);