mirror of
https://github.com/chylex/Discord-History-Tracker.git
synced 2026-10-22 23:12:12 +03:00
Migrate models to a custom version of MVVM Community Toolkit
This commit is contained in:
23 files changed
+126
-278
No files matched your search
@@ -3,24 +3,26 @@ using System.IO;
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Threading.Tasks;
|
||||
using Avalonia.Controls;
|
||||
using CommunityToolkit.Mvvm.ComponentModel;
|
||||
using DHT.Desktop.Dialogs.Message;
|
||||
using DHT.Desktop.Main.Screens;
|
||||
using DHT.Desktop.Server;
|
||||
using DHT.Server;
|
||||
using DHT.Server.Database;
|
||||
using DHT.Utils.Logging;
|
||||
using DHT.Utils.Models;
|
||||
|
||||
namespace DHT.Desktop.Main;
|
||||
|
||||
sealed class MainWindowModel : BaseModel, IAsyncDisposable {
|
||||
sealed partial class MainWindowModel : ObservableObject, IAsyncDisposable {
|
||||
private const string DefaultTitle = "Discord History Tracker";
|
||||
|
||||
private static readonly Log Log = Log.ForType<MainWindowModel>();
|
||||
|
||||
public string Title { get; private set; } = DefaultTitle;
|
||||
[ObservableProperty(Setter = Access.Private)]
|
||||
private string title = DefaultTitle;
|
||||
|
||||
public UserControl CurrentScreen { get; private set; }
|
||||
[ObservableProperty(Setter = Access.Private)]
|
||||
private UserControl currentScreen;
|
||||
|
||||
private readonly WelcomeScreen welcomeScreen;
|
||||
private readonly WelcomeScreenModel welcomeScreenModel;
|
||||
@@ -41,7 +43,7 @@ sealed class MainWindowModel : BaseModel, IAsyncDisposable {
|
||||
welcomeScreenModel.DatabaseSelected += OnDatabaseSelected;
|
||||
|
||||
welcomeScreen = new WelcomeScreen { DataContext = welcomeScreenModel };
|
||||
CurrentScreen = welcomeScreen;
|
||||
currentScreen = welcomeScreen;
|
||||
|
||||
var dbFile = args.DatabaseFile;
|
||||
if (!string.IsNullOrWhiteSpace(dbFile)) {
|
||||
@@ -93,9 +95,6 @@ sealed class MainWindowModel : BaseModel, IAsyncDisposable {
|
||||
Title = Path.GetFileName(state.Db.Path) + " - " + DefaultTitle;
|
||||
CurrentScreen = new MainContentScreen { DataContext = mainContentScreenModel };
|
||||
|
||||
OnPropertyChanged(nameof(Title));
|
||||
OnPropertyChanged(nameof(CurrentScreen));
|
||||
|
||||
window.Focus();
|
||||
}
|
||||
|
||||
@@ -112,9 +111,6 @@ sealed class MainWindowModel : BaseModel, IAsyncDisposable {
|
||||
CurrentScreen = welcomeScreen;
|
||||
|
||||
welcomeScreenModel.DatabaseSelected += OnDatabaseSelected;
|
||||
|
||||
OnPropertyChanged(nameof(Title));
|
||||
OnPropertyChanged(nameof(CurrentScreen));
|
||||
}
|
||||
|
||||
private async Task DisposeState() {
|
||||
|
||||
Reference in new issue
Block a user