Commit Graph

313 Commits (master)

Author SHA1 Message Date
Florian Dehau cf169d1582 style: run rustfmt and clippy 6 years ago
Florian Dehau bcd1e30376 refactor: update List select behavior
* allow a selectable list to have no selected item
* show highlight_symbol only when something is selected
6 years ago
Florian Dehau 40bad7a718 feat: add initial support for crossterm 6 years ago
Florian Dehau 3d63f9607f doc: update main documentation 6 years ago
Florian Dehau 13e194cd26 refactor: update widgets
* all widgets use the consumable builder pattern
* `draw` on terminal expect a closure that take a frame as only arg
6 years ago
Florian Dehau d6016788ef refactor: clippy + rustfmt 6 years ago
Florian Dehau ad602a54bf refactor(widgets): replace text rendering in Paragraph
* remove custom markup language
* add Text container for both raw and styled strings
6 years ago
Florian Dehau 7181970a32 feat: split layout from rendering
* remove layout logic from Terminal
* replace Group with Layout
* add Frame intermediate object
6 years ago
Jeremy Day cfc90ab7f6 fix(widgets): Prevent chart legend from rendering when no dataset has a name 6 years ago
Florian Dehau 9a9f49f467 fix(backend): Add missing color pattern 6 years ago
Florian Dehau df7493fd33 style: Run rustfmt 6 years ago
Florian Dehau 5de571fb03 feat(widgets): Add start_corner option to List 6 years ago
Florian Dehau 62df7badf3 feat(layout): Add Corner enum 6 years ago
Robin Nehls 3f8a9079ee [widgets] implement text alignment for paragraph widget 6 years ago
Robin Nehls 5981767543 [style] add enum for text alignment 6 years ago
Florian Dehau 36146d970a [style] rustfmt 6 years ago
Florian Dehau 36a5eb2110 Format code 6 years ago
Florian Dehau f96db9c74f [layout] Replace FnMut with FnOnce in Group::render
As the function does not need to mutate state and be run multiple times.
6 years ago
Florian Dehau ef2054a45b [lib] Derive Debug on Terminal 6 years ago
Xavier Bestel f4052e0e71 fix colors use, add missing Blue 6 years ago
Florian Dehau 36dea8373f [widgets][paragraph] Fix text wrapping 6 years ago
Florian Dehau 2cb823a15b [lib] Fix conversion from cassowary-rs results to internal layouts
The library used to compute the layout may returned negative results
given strange contraints. To avoid overflows on unsigned integers operations,
those results will be converted to 0 instead of being converted as is.
6 years ago
Florian Dehau 4b53acab14 [doc] Fix layout example in documentation 6 years ago
Florian Dehau fcd1b7b187 [widgets][list] Set the style of the underlying list 6 years ago
Magnus Bergmark d0d2f88346 BUG: Buffer::pos_of panics on inside-bounds index
- Add tests for this behavior.
- Extend documentation of Buffer::pos_of and Buffer::index_of
  - Clarify that the coordinates should be in global coordinate-space
  (rather than local).
  - Document panics.
  - Add examples.
6 years ago
Rafael Escobar c56173462a Export AlternateScreenBackend. 6 years ago
Florian Dehau f816e6bbc4 [backends] Improve termion backend
* Add AlternateScreenBackend
* Add a way to create a TermionBackend with a custom config
* Improve return values of several methods
6 years ago
Florian Dehau 7d273b576d Bump version 7 years ago
Florian Dehau 6a3b9fb130 [src][chart] fmt 7 years ago
Florian Dehau c3c5109c5a [src] Fix build and tests 7 years ago
Florian Dehau 151d7e8a1c [src] Update dependencies
* Update all dependencies to their latest versions
* Change border to Borders to match v1.0 of bitflags
7 years ago
Florian Dehau af16518650 [src] Run rustfmt 7 years ago
Florian Dehau 8907ab90a1 [doc] Move "Get started" from README to src/lib.rs 7 years ago
Florian Dehau 5dd03d91ad [widgets] Fix a bug in chart layout 7 years ago
Emmanuel Sales cb8af88adf Add Copy trait for layout enums 7 years ago
Florian Dehau 3012215e32 [widgets][tabs] Use generic type for tabs titles 7 years ago
Florian Dehau ba80889333 [clippy] Fix warnings 7 years ago
Florian Dehau 1f285fbac0 [src] Run cargo fmt 7 years ago
Florian Dehau 3cc3585e48 [widgets][chart] Use generic type for labels 7 years ago
talha 3045ac4124 Minor codestyle fixes 7 years ago
Florian Dehau 71545a0aa8 Run cargo fmt 7 years ago
Florian Dehau 3b8cc241ac [widgets] Fix table doc test 7 years ago
Florian Dehau ca3308e945 [widgets] Fix Row export 7 years ago
Florian Dehau c18885d38b [widgets] Refactor Table Widget
* Add Row enum
* Move to a generic definition of table which allow iterators to be
passed as arguments and therefore reduce allocations
7 years ago
Florian Dehau d6a91d1865 Fix List lifetime issues
Add a new lifetime for the items inside the list
7 years ago
Florian Dehau 41eac2aa4e Refactor demo example 7 years ago
Florian Dehau 89a173fe9b Refactor List Widget
* Add a generic item object for the list. The item can either be some data
alone or some data and its style
* The List widget now store an Iterator over those element. This should
avoid the need of allocating memory to store its elements
* The List consume the Iterator when it is drawn
7 years ago
Florian Dehau b1737ce667 Update Widget Trait
The draw function now take a &mut reference to the widget, allowing the
widget to modify itself when drawn. This change the semantic of the draw
call since the widget should now be considered "consumed" after it.
7 years ago
Florian Dehau a9aa23aead Add mouse support in TermionBackend
* Old TermionBackend is replaced by RawBackend
* Add TermionBackend with mouse support called MouseBackend
7 years ago
Florian Dehau b2bb24b9d2 Fix rustfmt and clippy errors 7 years ago
Sebastian Woetzel 81cedbd6f2
fixes scroll handling for paragraph widget 7 years ago
Florian Dehau 116ee4439a Improve Paragraph widget
* Add the possibility to disable the markup rendering
* Fix parser error
8 years ago
Florian Dehau e585bfeab5 Make List more user-friendly 8 years ago
Florian Dehau feefa5d54f Convert backends to conditionnal features for compilation 8 years ago
Florian Dehau 4f8a57d500 Fix clippy warnings 8 years ago
Florian Dehau b30fede80c Add the possibility to provide a RustBox instance at backend initialization 8 years ago
Florian Dehau 4bb2b8eb24 Add support for multiline gauge 8 years ago
Florian Dehau 5efc52e03d Fix parser in paragraph 8 years ago
Florian Dehau a3c96865a8 Custom label for gauge 8 years ago
Florian Dehau 17c95cf826 Fix table example 8 years ago
Florian Dehau ad239ef23c Update list and table to be more flexible
* Move List to SelectableList
* Create a more generic List
* Change the way to pass items to the table widget
* Update demo
8 years ago
Florian Dehau 6fb044950a Fix layout cache on nightly 8 years ago
Florian Dehau b19c014889 Fix layout cache on nightly 8 years ago
Florian Dehau 662e2dd102 Fix examples 8 years ago
Florian Dehau 224eb2d8e0 Add support for text styling 8 years ago
Florian Dehau 9bc61551e2 Refactor Terminal to be able to support multiple backends
* Add Rustbox as an other possible backend
8 years ago
Florian Dehau 652ff12380 More documentation 8 years ago
Florian Dehau fcac19d6c5 Documentation 8 years ago
Florian Dehau 7a25987352 Canvas widget refactoring 8 years ago
Florian Dehau 19a9cf8239 Fix text width measure in Text widget 8 years ago
Florian Dehau 93cc237007 Documentation 8 years ago
Florian Dehau 9e5195096a More work on the widgets API
* Change slice to vecs in table and canvas to ease the interaction with data
constructed on the fly
* Add a legend to charts based on datasets' names and colors
* Update demo to reflect previous updates
8 years ago
Florian Dehau 20465f2159 Change dot symbol for line chart 8 years ago
Florian Dehau a5b632aeb0 Cleanup API 8 years ago
Florian Dehau a36e20f217 Add background_color support for all existing wigets 8 years ago
Florian Dehau d038b283db Fix chart and canvas widgets 8 years ago
Florian Dehau cd919e69f5 Fix some display errors 8 years ago
Florian Dehau dd6cdf1f11 Add Table widget base implementation 8 years ago
Florian Dehau 654be037be Redefine canvas widget and add shapes
* Give the canvas widget a proper modules and define a standard way to
draw to it (Shape trait)
* Add Points, Line, Rectangle and Map shapes
8 years ago
Florian Dehau 107d7297af Fix some layout problems 8 years ago
Florian Dehau f0979dfeee Improve canvas functionalities and fix clippy warnings 8 years ago
Florian Dehau 25bb360f13 Fix list selection 8 years ago
Florian Dehau d8d18d3d9d Fix layout computation 8 years ago
Florian Dehau c862fa9ce3 Add Map widget 8 years ago
Florian Dehau 286e345dbc Add data for drawing a world map 8 years ago
Florian Dehau 7bdb11c681 Add Canvas widget
* Add a canvas widget to draw shapes using braille dots
* Use this widget in the chart widget when the braille mode is selected
8 years ago
Florian Dehau da67a679f7 Add Tabs widget 8 years ago
Florian Dehau b0b1645010 Rename set_characters method in buffer interface 8 years ago
Florian Dehau 95a160cf50 Add braille mode for the chart widget 8 years ago
Florian Dehau bcb3d751bf Rename buffer methods 8 years ago
Florian Dehau 85bd76e17d Small improvements 8 years ago
Florian Dehau c91436baee Change rendering method and adapt widget trait accordingly 8 years ago
Florian Dehau ea485b5439 Simpler layout and cleanup api 8 years ago
Florian Dehau 017eaa4122 Fix clippy warnings 8 years ago
Florian Dehau 0419fa7157 Update text widget (templating and wrapping) 8 years ago
Florian Dehau 063bde8764 Add bar chart prototype 8 years ago
Florian Dehau 85ca4f6b19 Add features to the list widgets 8 years ago
Florian Dehau 7a427c06d4 Update chart widget and fix colors in all widgets 8 years ago
Florian Dehau 15c3471f0b Fix clippy warnings 8 years ago
Florian Dehau d7131ead11 Cache layout and performance fixes 8 years ago
Florian Dehau 07ff2b08eb Improve Chart Widget, safer buffer and unicode width 8 years ago
Florian Dehau fde0ba95dd Remove cache system and add unicode segmentation 8 years ago
Florian Dehau bd404f0238 Cleanup code and add chart widget 8 years ago
Florian Dehau 6ed19df342 Update color support for block, gauge, list and sparkline 8 years ago
Florian Dehau ea1397319c Add support for multi line sparkline 8 years ago
Florian Dehau 86ae92b489 Add color support to the gauge widget 8 years ago
Florian Dehau 9816ccd4e3 Change layout properties and improve gauge and sparkline 8 years ago
Florian Dehau 275b210fd4 Change layout algorithm 8 years ago
Florian Dehau d11dedd864 Add sparkline widget and fix warnings 8 years ago
Florian Dehau 5b5d37ee69 Add gauge, fix rendering and cleanup code 8 years ago
Florian Dehau 93f3263e2b Fix redraw for disappearing widgets 8 years ago
Florian Dehau 13f6a5a98b Add list widget and improve rendering 8 years ago
Florian Dehau 459201bc65 First commit 8 years ago