New reactive core WIP

This commit is contained in:
2023-07-21 22:15:48 +02:00
parent 342fc0d047
commit b61c204e49
61 changed files with 1605 additions and 413 deletions

View File

@@ -1,4 +1,6 @@
using System.Collections.ObjectModel;
using DeclarativeProperty;
using DynamicData;
using FileTime.Core.Models;
using FileTime.Core.Services;
@@ -11,19 +13,13 @@ public interface ITabViewModel : IInitable<ITab, int>, IDisposable
ITab? Tab { get; }
int TabNumber { get; }
IObservable<bool> IsSelected { get; }
IObservable<IContainer?> CurrentLocation { get; }
IObservable<IItemViewModel?> CurrentSelectedItem { get; }
IObservable<IObservable<IChangeSet<IItemViewModel, string>>?> CurrentItems { get; }
IDeclarativeProperty<IContainer?> CurrentLocation { get; }
IDeclarativeProperty<IItemViewModel?> CurrentSelectedItem { get; }
IDeclarativeProperty<IContainerViewModel?> CurrentSelectedItemAsContainer { get; }
IDeclarativeProperty<ObservableCollection<IItemViewModel>?> CurrentItems { get; }
IObservable<IChangeSet<FullName>> MarkedItems { get; }
IObservable<IObservable<IChangeSet<IItemViewModel, string>>?> SelectedsChildren { get; }
IObservable<IObservable<IChangeSet<IItemViewModel, string>>?> ParentsChildren { get; }
BindedCollection<IItemViewModel, string>? CurrentItemsCollection { get; }
BindedCollection<IItemViewModel, string>? SelectedsChildrenCollection { get; }
BindedCollection<IItemViewModel, string>? ParentsChildrenCollection { get; }
IObservable<IReadOnlyCollection<IItemViewModel>?> CurrentItemsCollectionObservable { get; }
IObservable<IReadOnlyCollection<IItemViewModel>?> ParentsChildrenCollectionObservable { get; }
IObservable<IReadOnlyCollection<IItemViewModel>?> SelectedsChildrenCollectionObservable { get; }
IContainer? CachedCurrentLocation { get; }
IDeclarativeProperty<ObservableCollection<IItemViewModel>> SelectedsChildren { get; }
IDeclarativeProperty<ObservableCollection<IItemViewModel>> ParentsChildren { get; }
void ClearMarkedItems();
void RemoveMarkedItem(FullName fullName);