Add profile support

Closes #231
This commit is contained in:
Patrik Svensson
2021-01-16 17:23:58 +01:00
committed by Patrik Svensson
parent 913a7b1e37
commit a23bec4082
230 changed files with 1241 additions and 1628 deletions

View File

@ -1,6 +1,5 @@
using System;
using System.Globalization;
using Spectre.Console.Internal;
using Spectre.Console.Rendering;
namespace Spectre.Console

View File

@ -1,6 +1,5 @@
using System;
using System.Linq;
using Spectre.Console.Internal;
using Spectre.Console.Rendering;
namespace Spectre.Console

View File

@ -1,6 +1,5 @@
using System;
using System.Globalization;
using Spectre.Console.Internal;
using Spectre.Console.Rendering;
namespace Spectre.Console

View File

@ -1,7 +1,6 @@
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using Spectre.Console.Internal;
using Spectre.Console.Rendering;
namespace Spectre.Console
@ -148,8 +147,8 @@ namespace Spectre.Console
private ProgressRenderer CreateRenderer()
{
var caps = _console.Capabilities;
var interactive = caps.SupportsInteraction && caps.SupportsAnsi;
var caps = _console.Profile.Capabilities;
var interactive = caps.Interactive && caps.Ansi;
if (interactive)
{

View File

@ -1,8 +1,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Spectre.Console.Internal;
namespace Spectre.Console
{
@ -22,8 +20,6 @@ namespace Spectre.Console
/// </summary>
public bool IsFinished => _tasks.All(task => task.IsFinished);
internal Encoding Encoding => _console.Encoding;
internal ProgressContext(IAnsiConsole console, ProgressRenderer renderer)
{
_tasks = new List<ProgressTask>();

View File

@ -1,7 +1,7 @@
using System;
using System.Threading;
namespace Spectre.Console.Internal
namespace Spectre.Console
{
internal sealed class ProgressRefreshThread : IDisposable
{

View File

@ -2,7 +2,7 @@ using System;
using System.Collections.Generic;
using Spectre.Console.Rendering;
namespace Spectre.Console.Internal
namespace Spectre.Console
{
internal abstract class ProgressRenderer : IRenderHook
{

View File

@ -1,6 +1,6 @@
using System;
namespace Spectre.Console.Internal
namespace Spectre.Console
{
internal readonly struct ProgressSample
{

View File

@ -1,7 +1,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using Spectre.Console.Internal;
namespace Spectre.Console
{

View File

@ -4,7 +4,7 @@ using System.Diagnostics;
using System.Linq;
using Spectre.Console.Rendering;
namespace Spectre.Console.Internal
namespace Spectre.Console
{
internal sealed class DefaultProgressRenderer : ProgressRenderer
{
@ -60,7 +60,7 @@ namespace Spectre.Console.Internal
_stopwatch.Start();
}
var renderContext = new RenderContext(_console.Encoding, _console.Capabilities.LegacyConsole);
var renderContext = new RenderContext(_console.Profile.Encoding, _console.Profile.Capabilities.Legacy);
var delta = _stopwatch.Elapsed - _lastUpdate;
_lastUpdate = _stopwatch.Elapsed;

View File

@ -2,7 +2,7 @@ using System;
using System.Collections.Generic;
using Spectre.Console.Rendering;
namespace Spectre.Console.Internal
namespace Spectre.Console
{
internal sealed class FallbackProgressRenderer : ProgressRenderer
{

View File

@ -3,9 +3,9 @@ using System.Collections.Generic;
using System.Linq;
using Spectre.Console.Rendering;
namespace Spectre.Console.Internal
namespace Spectre.Console
{
internal sealed class StatusFallbackRenderer : ProgressRenderer
internal sealed class FallbackStatusRenderer : ProgressRenderer
{
private readonly object _lock;
private IRenderable? _renderable;
@ -13,7 +13,7 @@ namespace Spectre.Console.Internal
public override TimeSpan RefreshRate => TimeSpan.FromMilliseconds(100);
public StatusFallbackRenderer()
public FallbackStatusRenderer()
{
_lock = new object();
}

View File

@ -1,6 +1,5 @@
using System;
using System.Threading.Tasks;
using Spectre.Console.Internal;
namespace Spectre.Console
{
@ -107,7 +106,7 @@ namespace Spectre.Console
var progress = new Progress(_console)
{
FallbackRenderer = new StatusFallbackRenderer(),
FallbackRenderer = new FallbackStatusRenderer(),
AutoClear = true,
AutoRefresh = AutoRefresh,
};