/
vasiukoff
/
sg
Обзор
Документация
Войти
/
vasiukoff
/
sg
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/ViewModels/Popup.cs
62 строки
2 KB
leo
refactor: rewrite the way to register git command log receiver
12 авг 2025, 15:15
12 авг 2025, 15:15
c134337
Код
Авторство
О чём код?
using System.Diagnostics.CodeAnalysis; using System.Threading.Tasks; using CommunityToolkit.Mvvm.ComponentModel; namespace SourceGit.ViewModels { public class Popup : ObservableValidator, Models.ICommandLogReceiver { public bool InProgress { get => _inProgress; set => SetProperty(ref _inProgress, value); } public string ProgressDescription { get => _progressDescription; set => SetProperty(ref _progressDescription, value); } [UnconditionalSuppressMessage("AssemblyLoadTrimming", "IL2026:RequiresUnreferencedCode")] public bool Check() { if (HasErrors) return false; ValidateAllProperties(); return !HasErrors; } public void OnReceiveCommandLog(string data) { var desc = data.Trim(); if (!string.IsNullOrEmpty(desc)) ProgressDescription = desc; } public void Cleanup() { _log?.Unsubscribe(this); } public virtual bool CanStartDirectly() { return true; } public virtual Task<bool> Sure() { return null; } protected void Use(CommandLog log) { _log = log; _log.Subscribe(this); } private bool _inProgress = false; private string _progressDescription = string.Empty; private CommandLog _log = null; } }