💻 C++ Functional Terminal User Interface. ❤️
Go to file
ArthurSonzogni 08ee49f3e6 Add flex_grow and flex_shrink.
Two new elements:
- flex_grow  : Expand the element to occupy free space.
- flex_shrink: Minimize the element leave away missing space.

flex = flex_grow | flex_shrink.

Other changes:
- hbox and vbox are now non flexible by default.
- the vtext element has been added to help writting tests.
- Many new tests.
2020-06-07 02:30:45 +02:00
examples Add flex_grow and flex_shrink. 2020-06-07 02:30:45 +02:00
include/ftxui Add flex_grow and flex_shrink. 2020-06-07 02:30:45 +02:00
other Add automatic formatting and license. 2020-04-19 21:01:09 +02:00
src/ftxui Add flex_grow and flex_shrink. 2020-06-07 02:30:45 +02:00
tutorial Use shared_ptr instead of unique_ptr for elements. 2020-05-20 20:51:20 +02:00
.clang-format Set clang-format macro indent. 2020-03-23 21:26:00 +01:00
.gitlab-ci.yml Add gitlab-ci.yml 2019-02-02 02:32:42 +01:00
.travis.yml Fix travis on Windows with gtests. 2020-04-17 00:59:05 +02:00
CMakeLists.txt Fix travis on Windows with gtests. 2020-04-17 00:59:05 +02:00
CODEOWNERS Add CODEOWNERS 2020-05-25 02:05:07 +02:00
LICENSE Add LICENSE. Add take_any_args. 2019-01-06 16:14:19 +01:00
README.md Add flex_grow and flex_shrink. 2020-06-07 02:30:45 +02:00

FTXUI

travis issues license contributors

Functional Terminal (X) User interface

A simple C++ library for terminal based user interface.

Demo:

Demo image

Feature

  • Functional style. Inspired by [1] and React
  • Simple and elegant syntax (in my opinion).
  • Support for UTF8 and fullwidth chars (→ 测试)
  • No dependencies.
  • Cross platform:
    • Linux (main target)
    • Windows (experimental, thanks to mauve@)
    • Mac (never tested, but must WORK)

Example:

  vbox({
    hbox({
      text(L"left") | border,
      text(L"middle") | border | flex,
      text(L"right") | border,
    }),
    gauge(0.5) | border,
  });
┌────┐┌───────────────────────────────────────────────────────────────┐┌─────┐
│left││middle                                                         ││right│
└────┘└───────────────────────────────────────────────────────────────┘└─────┘
┌────────────────────────────────────────────────────────────────────────────┐
│██████████████████████████████████████                                      │
└────────────────────────────────────────────────────────────────────────────┘

Build

Tutorial

Project using FTXUI

Feel free to add your projects here:

Hosted on: