From da9c6ee4c2d2d0c5374e51231073346144746dea Mon Sep 17 00:00:00 2001 From: Phil Scott Date: Sat, 6 Mar 2021 10:35:29 -0500 Subject: [PATCH] Add IProgress to ProgressTask.cs Makes the Report method an explicit implementation to allow for better interoperability with standard .NET progress functionality while keeping backwards compatibility with existing ProgressTask functionality. Closes #285 --- src/Spectre.Console/Widgets/Progress/ProgressTask.cs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/Spectre.Console/Widgets/Progress/ProgressTask.cs b/src/Spectre.Console/Widgets/Progress/ProgressTask.cs index cbc6980..4cbb74a 100644 --- a/src/Spectre.Console/Widgets/Progress/ProgressTask.cs +++ b/src/Spectre.Console/Widgets/Progress/ProgressTask.cs @@ -7,7 +7,7 @@ namespace Spectre.Console /// /// Represents a progress task. /// - public sealed class ProgressTask + public sealed class ProgressTask : IProgress { private readonly List _samples; private readonly object _lock; @@ -297,5 +297,11 @@ namespace Spectre.Console return TimeSpan.FromSeconds(estimate); } } + + /// + void IProgress.Report(double value) + { + Update(increment: value - Value); + } } } \ No newline at end of file