display

Layout and Rendering TUI library
git clone git://git.dimitrijedobrota.com/display.git
Log | Files | Refs | README | LICENSE | HACKING | CONTRIBUTING | CODE_OF_CONDUCT | BUILDING

README.md (1395B)


0 # display
2 Simple TUI library
4 ## Description
6 This project is my latest attempt to create a modular end extensible TUI
7 library that takes care of the positioning of the elements on the screen and
8 their nesting.
10 As of know it has all of the necessary features for me to start building some
11 staff with it, and figure out the rest as I go.
13 ## Dependencies
15 * CMake 3.14 or latter
16 * Compiler with C++20 support (tested on clang version 19.1.7)
19 ## Building and installing
21 See the [`BUILDING`](BUILDING.md) document.
24 ## Usage
26 > Please reference example folder for relevant usage examples.
28 The library provides the following classes:
29 * `Element`: Base class that takes care of the absolute positioning
30 * `Display`: Main entry point to the terminal screen
31 * `Layout`: Container for one element
32 * `LayoutMulti`: Container for multiple elements
33 * `LayoutRigid`: Divide a screen into custom rectangles
34 * `Window`: Bass class for drawing to the screen
35 * `WindowPivot`: Window that can be placed in the corners or center of the layout
38 ## Version History
40 * 0.2
41 * Proof of concept class hierarchy
42 * Chained rendering and input propagation
43 * Responsive redrawing
45 * 0.1
46 * Initial development phase
49 ## Contributing
51 See the [`CONTRIBUTING`](CONTRIBUTING.md) document.
54 ## License
56 This project is licensed under the MIT License - see the [`LICENSE`](LICENSE.md) file for details