Added ICollectionSynchronization

This commit is contained in:
TheXamlGuy
2024-06-04 12:14:00 +01:00
parent 0842988dc3
commit 554c12382a
44 changed files with 149 additions and 116 deletions
+16 -5
View File
@@ -79,13 +79,13 @@ public partial class App : Application
return new ItemConfigurationCollection(items.ToDictionary(x => x.Name, x => (Func<ItemConfiguration>)(() => x.Value)));
});
services.TryAddSingleton<IValueStore<SecurityKey>, ValueStore<SecurityKey>>();
services.TryAddSingleton<IValueStore<LockerConnection>, ValueStore<LockerConnection>>();
services.TryAddSingleton<IDecoratorService<SecurityKey>, DecoratorService<SecurityKey>>();
services.TryAddSingleton<IDecoratorService<LockerConnection>, DecoratorService<LockerConnection>>();
services.AddDbContextFactory<LockerContext>((provider, args) =>
{
if (provider.GetRequiredService<IValueStore<LockerConnection>>()
is IValueStore<LockerConnection> connection)
if (provider.GetRequiredService<IDecoratorService<LockerConnection>>()
is IDecoratorService<LockerConnection> connection)
{
args.UseSqlite($"{connection.Value}");
}
@@ -111,6 +111,11 @@ public partial class App : Application
services.AddTemplate<LockerViewModel, LockerView>("Locker");
services.AddTemplate<ItemCollectionViewModel, ItemCollectionView>("ContentItemCollection");
services.AddSingleton<IDecoratorService<ICollectionSynchronization<ItemNavigationViewModel>>,
DecoratorService<ICollectionSynchronization<ItemNavigationViewModel>>>();
services.AddSingleton(provider => provider.GetRequiredService<IDecoratorService<ICollectionSynchronization<ItemNavigationViewModel>>>().Value!);
services.AddHandler<AggerateItemViewModelHandler>();
services.AddTemplate<LockerHeaderViewModel, LockerHeaderView>("LockerHeader");
@@ -123,7 +128,7 @@ public partial class App : Application
services.AddHandler<AggregateItemCategoryViewModelHandler>();
services.AddScoped<IValueStore<Item<(Guid, string)>>, ValueStore<Item<(Guid, string)>>>();
services.AddScoped<IDecoratorService<Item<(Guid, string)>>, DecoratorService<Item<(Guid, string)>>>();
services.AddTemplate<AddItemNavigationViewModel, AddItemNavigationView>();
@@ -143,6 +148,12 @@ public partial class App : Application
services.AddTemplate<ItemMaskedTextEntryViewModel, ItemMaskedTextEntryView>();
services.AddTemplate<ItemDropdownEntryViewModel, ItemDropdownEntryView>();
services.AddScoped<IDecoratorService<ICollectionSynchronization<IItemEntryViewModel>>,
DecoratorService<ICollectionSynchronization<IItemEntryViewModel>>>();
services.AddScoped(provider => provider.GetRequiredService<IDecoratorService<ICollectionSynchronization<IItemEntryViewModel>>>().Value!);
services.AddTemplate<ItemCommandHeaderViewModel, ItemCommandHeaderView>("ItemCommandHeader");
services.AddTemplate<FavouriteItemActionViewModel, FavouriteItemActionView>();
@@ -6,6 +6,6 @@
x:DataType="vm:ItemMaskedTextEntryViewModel"
Header="{Binding Key}">
<SettingsExpander.Footer>
<TextBox MinWidth="264" />
<TextBox MinWidth="264" Text="{Binding Value}" />
</SettingsExpander.Footer>
</SettingsExpander>
@@ -9,6 +9,7 @@
<TextBox
MinWidth="264"
Classes="revealPasswordButton"
PasswordChar="&#x25CF;" />
PasswordChar="&#x25CF;"
Text="{Binding Value}" />
</SettingsExpander.Footer>
</SettingsExpander>
+1 -1
View File
@@ -6,6 +6,6 @@
x:DataType="vm:ItemTextEntryViewModel"
Header="{Binding Key}">
<SettingsExpander.Footer>
<TextBox MinWidth="264" />
<TextBox MinWidth="264" Text="{Binding Value}" />
</SettingsExpander.Footer>
</SettingsExpander>