From 542d9bc12abac8ce35c47ddf2e951a13e0ef5d06 Mon Sep 17 00:00:00 2001 From: TheXamlGuy Date: Sun, 26 May 2024 18:09:53 +0100 Subject: [PATCH] wip --- .../AddItemContentNavigationViewModel.axaml | 6 +++++ ...AddItemContentNavigationViewModel.axaml.cs | 8 ++++++ Bitvault.Avalonia/App.axaml | 16 ------------ Bitvault.Avalonia/App.axaml.cs | 2 ++ Bitvault.Avalonia/Bitvault.Avalonia.csproj | 6 +++++ Bitvault.Avalonia/ItemContentView.axaml | 8 ++++++ Bitvault.Avalonia/ItemContentView.axaml.cs | 9 +++++++ Bitvault.Avalonia/ItemView.axaml | 8 +++++- Bitvault/AddItemContentNavigationViewModel.cs | 17 ++++++++++++ Bitvault/ItemContentViewModel.cs | 26 +++++++++++++++++++ Bitvault/ItemViewModel.cs | 1 + 11 files changed, 90 insertions(+), 17 deletions(-) create mode 100644 Bitvault.Avalonia/AddItemContentNavigationViewModel.axaml create mode 100644 Bitvault.Avalonia/AddItemContentNavigationViewModel.axaml.cs create mode 100644 Bitvault.Avalonia/ItemContentView.axaml create mode 100644 Bitvault.Avalonia/ItemContentView.axaml.cs create mode 100644 Bitvault/AddItemContentNavigationViewModel.cs create mode 100644 Bitvault/ItemContentViewModel.cs diff --git a/Bitvault.Avalonia/AddItemContentNavigationViewModel.axaml b/Bitvault.Avalonia/AddItemContentNavigationViewModel.axaml new file mode 100644 index 0000000..808bd0e --- /dev/null +++ b/Bitvault.Avalonia/AddItemContentNavigationViewModel.axaml @@ -0,0 +1,6 @@ + + + diff --git a/Bitvault.Avalonia/AddItemContentNavigationViewModel.axaml.cs b/Bitvault.Avalonia/AddItemContentNavigationViewModel.axaml.cs new file mode 100644 index 0000000..94f4907 --- /dev/null +++ b/Bitvault.Avalonia/AddItemContentNavigationViewModel.axaml.cs @@ -0,0 +1,8 @@ +using Avalonia.Controls; + +namespace Bitvault.Avalonia; + +public partial class AddItemContentNavigationView : UserControl +{ + public AddItemContentNavigationView() => InitializeComponent(); +} diff --git a/Bitvault.Avalonia/App.axaml b/Bitvault.Avalonia/App.axaml index 10e4f84..7f9a60e 100644 --- a/Bitvault.Avalonia/App.axaml +++ b/Bitvault.Avalonia/App.axaml @@ -5,21 +5,5 @@ xmlns:ui="using:FluentAvalonia.UI.Controls"> - - - - - - avares://HyperX.Launcher.Avalonia/Assets/SegoeIcons.ttf#Segoe Fluent Icons - 0 - 0,8,0,0 - diff --git a/Bitvault.Avalonia/App.axaml.cs b/Bitvault.Avalonia/App.axaml.cs index 338d14f..3ebed38 100644 --- a/Bitvault.Avalonia/App.axaml.cs +++ b/Bitvault.Avalonia/App.axaml.cs @@ -108,6 +108,8 @@ public partial class App : Application services.AddTemplate(); services.AddTemplate(); + services.AddTemplate(); + services.AddTemplate(); services.AddScoped, ValueStore>(); diff --git a/Bitvault.Avalonia/Bitvault.Avalonia.csproj b/Bitvault.Avalonia/Bitvault.Avalonia.csproj index c3a5e8a..1c0c64d 100644 --- a/Bitvault.Avalonia/Bitvault.Avalonia.csproj +++ b/Bitvault.Avalonia/Bitvault.Avalonia.csproj @@ -40,6 +40,9 @@ + + AddItemContentNavigationViewModel.axaml + CreateItemActionView.axaml @@ -61,6 +64,9 @@ ItemHeaderView.axaml + + ItemContentView.axaml + OpenView.axaml diff --git a/Bitvault.Avalonia/ItemContentView.axaml b/Bitvault.Avalonia/ItemContentView.axaml new file mode 100644 index 0000000..b1a5f0d --- /dev/null +++ b/Bitvault.Avalonia/ItemContentView.axaml @@ -0,0 +1,8 @@ + + + diff --git a/Bitvault.Avalonia/ItemContentView.axaml.cs b/Bitvault.Avalonia/ItemContentView.axaml.cs new file mode 100644 index 0000000..1b241ec --- /dev/null +++ b/Bitvault.Avalonia/ItemContentView.axaml.cs @@ -0,0 +1,9 @@ +using Avalonia.Controls; + +namespace Bitvault.Avalonia; + +public partial class ItemContentView : UserControl +{ + public ItemContentView() => + InitializeComponent(); +} diff --git a/Bitvault.Avalonia/ItemView.axaml b/Bitvault.Avalonia/ItemView.axaml index 02d0732..925e1f3 100644 --- a/Bitvault.Avalonia/ItemView.axaml +++ b/Bitvault.Avalonia/ItemView.axaml @@ -13,6 +13,12 @@ - + + + + + + + diff --git a/Bitvault/AddItemContentNavigationViewModel.cs b/Bitvault/AddItemContentNavigationViewModel.cs new file mode 100644 index 0000000..15289b7 --- /dev/null +++ b/Bitvault/AddItemContentNavigationViewModel.cs @@ -0,0 +1,17 @@ +using Toolkit.Foundation; + +namespace Bitvault; + +public partial class AddItemContentNavigationViewModel : Observable, + IItemEntryViewModel +{ + public AddItemContentNavigationViewModel(IServiceProvider provider, + IServiceFactory factory, + IMediator mediator, + IPublisher publisher, + ISubscription subscriber, + IDisposer disposer) : base(provider, factory, mediator, publisher, subscriber, disposer) + { + + } +} diff --git a/Bitvault/ItemContentViewModel.cs b/Bitvault/ItemContentViewModel.cs new file mode 100644 index 0000000..30c195d --- /dev/null +++ b/Bitvault/ItemContentViewModel.cs @@ -0,0 +1,26 @@ +using Toolkit.Foundation; + +namespace Bitvault; + +public partial class ItemContentViewModel : + ObservableCollection, + IItemEntryViewModel +{ + public ItemContentViewModel(IServiceProvider provider, + IServiceFactory factory, IMediator mediator, + IPublisher publisher, + ISubscription subscriber, + IDisposer disposer, + IContentTemplate template, + bool immutable = true) : base(provider, factory, mediator, publisher, subscriber, disposer) + { + Template = template; + + if (!immutable) + { + Insert(); + } + } + + public IContentTemplate Template { get; set; } +} diff --git a/Bitvault/ItemViewModel.cs b/Bitvault/ItemViewModel.cs index 183e5df..c1fa301 100644 --- a/Bitvault/ItemViewModel.cs +++ b/Bitvault/ItemViewModel.cs @@ -45,6 +45,7 @@ public partial class ItemViewModel : Name = name; Add(immutable, name); + Add(immutable); } public IContentTemplate Template { get; set; }