Extends maximum size of remaining and elapsed time displayed, plus a failsafe

Elapsed and remaining now support > 9 hours, and if a timespan can't be rendered in that size **:**:** will be displayed
This commit is contained in:
Phil Scott 2021-02-14 15:27:05 -05:00 committed by Patrik Svensson
parent 17ee8990f4
commit 04d0e663d5
3 changed files with 19 additions and 9 deletions

View File

@ -1,5 +1,5 @@
foo ━━ 0% -:--:-- ⣷ foo ━━ 0% --:--:-- ⣷
bar ━━ 0% -:--:-- ⣷ bar ━━ 0% --:--:-- ⣷
baz ━━ 0% -:--:-- ⣷ baz ━━ 0% --:--:-- ⣷

View File

@ -22,16 +22,21 @@ namespace Spectre.Console
var elapsed = task.ElapsedTime; var elapsed = task.ElapsedTime;
if (elapsed == null) if (elapsed == null)
{ {
return new Markup("-:--:--"); return new Markup("--:--:--");
} }
return new Text($"{elapsed.Value:h\\:mm\\:ss}", Style ?? Style.Plain); if (elapsed.Value.TotalHours > 99)
{
return new Markup("**:**:**");
}
return new Text($"{elapsed.Value:hh\\:mm\\:ss}", Style ?? Style.Plain);
} }
/// <inheritdoc/> /// <inheritdoc/>
public override int? GetColumnWidth(RenderContext context) public override int? GetColumnWidth(RenderContext context)
{ {
return 7; return 8;
} }
} }
} }

View File

@ -22,16 +22,21 @@ namespace Spectre.Console
var remaining = task.RemainingTime; var remaining = task.RemainingTime;
if (remaining == null) if (remaining == null)
{ {
return new Markup("-:--:--"); return new Markup("--:--:--");
} }
return new Text($"{remaining.Value:h\\:mm\\:ss}", Style ?? Style.Plain); if (remaining.Value.TotalHours > 99)
{
return new Markup("**:**:**");
}
return new Text($"{remaining.Value:hh\\:mm\\:ss}", Style ?? Style.Plain);
} }
/// <inheritdoc/> /// <inheritdoc/>
public override int? GetColumnWidth(RenderContext context) public override int? GetColumnWidth(RenderContext context)
{ {
return 7; return 8;
} }
} }
} }