33 lines
769 B
C#
33 lines
769 B
C#
|
|
using System.Collections.ObjectModel;
|
||
|
|
using CommunityToolkit.Mvvm.ComponentModel;
|
||
|
|
using CommunityToolkit.Mvvm.Input;
|
||
|
|
using SSPCTester.Logic.Models;
|
||
|
|
|
||
|
|
namespace SSPCTester.UI.ViewModels;
|
||
|
|
|
||
|
|
/// <summary>首页 / 概览。</summary>
|
||
|
|
public partial class HomeViewModel : ObservableObject
|
||
|
|
{
|
||
|
|
private readonly MainViewModel _main;
|
||
|
|
public HomeViewModel(MainViewModel main)
|
||
|
|
{
|
||
|
|
_main = main;
|
||
|
|
Projects = _main.AllProjects;
|
||
|
|
}
|
||
|
|
|
||
|
|
public ObservableCollection<Project> Projects { get; }
|
||
|
|
|
||
|
|
[RelayCommand]
|
||
|
|
private void OpenProject(Project? p)
|
||
|
|
{
|
||
|
|
if (p == null) return;
|
||
|
|
_main.OpenProjectInfo(p);
|
||
|
|
}
|
||
|
|
|
||
|
|
[RelayCommand]
|
||
|
|
private async Task NewProject()
|
||
|
|
{
|
||
|
|
await _main.NewProjectCommand.ExecuteAsync(null);
|
||
|
|
}
|
||
|
|
}
|