Commit Graph

81 Commits

Author SHA1 Message Date
5f97f2300c Support cancellation of prompts
Closes #417
2021-07-11 23:10:17 -04:00
6e2ca8449e Add solution for examples 2021-07-11 22:59:02 -04:00
58eff30787 LineTreeGuide should not fall back to ASCII
If the user's environment didn't support unicode, we used
to fall back to using the AsciiTreeGuide if LineTreeGuide
was being used (which it is by default). This commit removes
that fallback since the characters used in LineTreeGuide is
covered by extended ASCII, which SHOULD be fine in almost all
scenarios.

Closes #324
2021-07-10 18:01:17 -04:00
b92827ce3d (#460) added an overload to AnsiConsole.Ask
that takes an additional default value.
2021-06-23 23:47:12 +02:00
8b058d6342 Renaming analyzer test project to sandbox 2021-06-23 16:36:48 +02:00
bdcc01ea68 Adding analyzers for common mistakes with live renderables 2021-06-23 16:36:48 +02:00
4f293d887d Adding analyzer project
Contains two analyzers with fixes

* Use AnsiConsole over System.Console
* Favor local instance over static implementation
2021-06-23 16:36:48 +02:00
46abadaccb Add AsciiCast demos for docs 2021-05-23 23:30:14 +02:00
a2ed88e2eb Remove some Star Wars movies
Closes #424
2021-05-21 11:14:18 +02:00
3dea412785 Add live display support
This commit also adds functionality to LiveRenderable that should
fix some problems related to vertical overflow.

Closes #316
Closes #415
2021-05-20 19:41:10 -04:00
315a52f3e9 Add support for hierarchical list prompts
Closes #412
2021-05-18 11:34:16 -04:00
3e2eea730b Add output abstraction and reorganize profile
* Moves ColorSystem from Profile to Capabilities
* Renames Tty to IsTerminal
* Adds IAnsiConsoleOutput to make output more flexible

Closes #343
Closes #359
Closes #369
2021-04-13 21:39:54 -04:00
3545e0f6b5 Add example infrastructure
* Add "Shared" projects for all examples
* Update "Colors" example with better TrueColor demo
* Use same namespace for all examples
2021-04-11 22:03:13 -04:00
6a5c507936 Rename 'Demo' example to 'Showcase' 2021-04-09 22:01:05 +02:00
ca036f6543 Add demo example 2021-04-07 20:32:07 -04:00
6f16081f42 Add support for indeterminate progress
This commit also changes the behavior of ProgressContext.IsFinished.
Only tasks that have been started will be taken into consideration,
and not indeterminate tasks.

Closes #329
Closes #331
2021-04-03 09:42:49 -04:00
6bceac8a5e enable disposing ITypeResolver 2021-03-30 00:53:38 +02:00
20650f1e7e Change IAnsiConsole to render IRenderable
This makes it possible for encoders to output better representation
of the actual objects instead of working with chopped up segments.

* IAnsiConsole.Write now takes an IRenderable instead of segments
* Calculating cell width does no longer require a render context
* Removed RenderContext.LegacyConsole
* Removed RenderContext.Encoding
* Added Capabilities.Unicode
2021-03-28 09:06:06 -04:00
7f6f2437b1 Add support for exclusive mode 2021-03-15 13:14:40 -04:00
c2bab0ebf8 Allow custom instructions for prompts
Closes #229
2021-03-14 21:27:44 -04:00
1cd335e785 Serilog example for logging 2021-03-04 08:39:53 +01:00
102e2dc38d Allow formatting breakdown charts with lambda expr
Relates to #252
2021-02-13 17:09:51 +01:00
28e9c14de4 Register the console lazily in CLI type registrar
This should fix a strange bug we're seeing in Cake on macOS.
2021-02-12 02:04:59 +01:00
705cf745ea Add formatting support for breakdown chart values
Closes #252
2021-02-05 11:53:55 +01:00
b64e016e8c Add breakdown chart support
This also cleans up the bar chart code slightly and fixes
some minor bugs that were detected in related code.

Closes #244
2021-02-01 01:03:39 +01:00
e20f6284f9 Clean up profile enrichment 2021-01-29 20:16:52 +01:00
953008b5e3 Implemented buffer/stream constructors for CanvasImage (#246)
* Implemented buffer/stream constructors for CanvasImage and added section to Canvas example

Signed-off-by: David Butler <mail@davidbutlerdesign.co.uk>
2021-01-27 18:12:22 +01:00
a23bec4082 Add profile support
Closes #231
2021-01-19 17:53:03 +01:00
07db28bb6f Add enhancements to progress widget
* Adds TransferSpeedColumn
* Adds DownloadedColumn
* Adds ElapsedTimeColumn
* Minor enhancements to existing columns
2021-01-12 14:10:07 +01:00
8261b25e5c Fix tree rendering
Fixes some tree rendering problems where lines were not properly drawn
at some levels during some circumstances.

* Change the API back to only allow one root.
* Now uses a stack based approach to rendering instead of recursion.
* Removes the need for measuring the whole tree in advance.
  Leave this up to each child to render.
2021-01-10 15:55:11 +01:00
0e0f4b4220 Add interactive prompts for selecting values
* Adds SelectionPrompt
* Adds MultiSelectionPrompt

Closes #210
2021-01-09 09:37:28 +01:00
1f211d3e1f Add convenience methods for tree nodes 2021-01-03 23:28:55 +01:00
87e6b42409 Add tree example 2021-01-03 23:28:55 +01:00
0ae419326d Add Spectre.Cli to Spectre.Console
* Renames Spectre.Cli to Spectre.Console.Cli.
* Now uses Verify with Spectre.Console.Cli tests.
* Removes some duplicate definitions.

Closes #168
2020-12-28 17:28:03 +01:00
7dccb310f3 Add support for bar charts
Closes #103
2020-12-23 10:05:08 +01:00
501db5d287 Add status support 2020-12-09 00:07:02 +01:00
cbed41e637 Add support for different spinners 2020-12-06 15:41:45 +01:00
ae32785f21 Add progress task list support 2020-12-04 07:29:48 +01:00
2a9fa223de Add canvas and image support
Adds support for drawing "pixels" and displaying
images in the terminal.
2020-11-25 10:07:34 +01:00
a59e0dcb21 Add FIGlet text support
Closes #97
2020-11-22 03:09:42 +01:00
0d209d8f18 Add text prompt support 2020-11-19 12:24:04 +01:00
380c6aca45 Add net5.0 target framework 2020-11-11 15:28:32 +01:00
b1da5e7ba8 Add support for markup text in panel header 2020-11-07 20:43:53 +01:00
a1d11e9d0c Add support for moving the cursor 2020-10-28 18:57:08 +01:00
93d1971f48 Update rule example and docs 2020-10-27 17:30:50 +01:00
e7f497050c Add row and column accessors for tables and grids 2020-10-26 18:15:27 +01:00
03334f693d Add support for table footers 2020-10-26 00:01:13 +01:00
041bd016a2 Remove verbs from extension methods
Removed the verbs from all extension methods that manipulate
properties which makes the API more succinct and easier to read.

Also added implicit conversion from string to Style.

As a good OSS citizen, I've obsoleted the old methods with
a warning for now, so this shouldn't break anyone using
the old methods.
2020-10-23 15:08:18 +02:00
9afc1ea721 Add support for aligning tables 2020-10-21 18:15:51 +02:00
5a1b8a1710 Add rule widget
Adds a new rule widget.
Also fixes some bugs I encountered while testing
some unrelated things in an extremely small console.
2020-10-20 01:45:53 +02:00