Commit Graph

52 Commits

Author SHA1 Message Date
ArthurSonzogni
33b3d1c7ab Add option for input. 2021-07-11 12:23:42 +02:00
ArthurSonzogni
359100ca73 Add option for Button. 2021-07-11 12:23:42 +02:00
ArthurSonzogni
cd84b187b3 Introduce Options and use them for Menu.
Introduce Options for components. This allows me to add new features,
without updating functions signatures.
2021-07-11 12:23:42 +02:00
Shreyas Atre
bd21cac2b6
Menu of components (#131)
Allow Container::Vertical and Container::Horizontal to have an
external selector, similar to Container::Tab.

This is useful for implementing a menu of menu.

Co-authored-by: ArthurSonzogni <sonzogniarthur@gmail.com>
2021-06-27 17:53:17 +02:00
Arthur Sonzogni
2ea480f4f6
Update example homescreen. Wait for the thread to join. (#129) 2021-06-26 01:37:18 +02:00
ArthurSonzogni
20a05e99ca Execute IWYU and format. 2021-06-21 23:10:51 +02:00
Nathan Lanza
e9eab32b2f Fix compiler output argument in homescreen 2021-06-07 10:11:32 +02:00
ArthurSonzogni
2504a24ee0 Add documentation for ResizableSplit 2021-05-28 15:07:08 +02:00
ArthurSonzogni
bba2abbb60 Introduce ResizableSplit 2021-05-28 15:07:08 +02:00
Arthur Sonzogni
aacb677e84
Introduce CatchEvent (#104) 2021-05-23 12:53:20 +02:00
Arthur Sonzogni
84debba10c
Fix button example. (#102) 2021-05-18 17:53:58 +02:00
Arthur Sonzogni
7b88656e25
Add option to have button without border. (#101) 2021-05-18 17:49:53 +02:00
Arthur Sonzogni
7daeac25c0
Modify signature of Container::Tab(...) (#92)
Take selector at the end to get more pleasing results with clang-format.
2021-05-15 02:32:42 +02:00
ArthurSonzogni
048efb6912
Add {Const,}StringRef to simplify components. 2021-05-14 21:47:51 +02:00
ArthurSonzogni
58287c147a
Update every component examples.
Use the functional style instead of classes.
2021-05-14 00:45:03 +02:00
ArthurSonzogni
c9aa1805eb
Add the Renderer component. 2021-05-13 11:44:47 +02:00
ArthurSonzogni
6d75cb2748
Make component more functionnal 2021-05-09 22:35:34 +02:00
ArthurSonzogni
155758c073
Use IWYU. 2021-05-01 23:19:07 +02:00
ArthurSonzogni
eb399d20c5
Capture mouse for the slider component. 2021-05-01 18:13:56 +02:00
ArthurSonzogni
0af8201023
Add the slider component. 2021-04-29 00:18:58 +02:00
ArthurSonzogni
8037a5fa5f
Improve mouse support for menu and toggle. 2021-04-24 18:16:13 +02:00
ArthurSonzogni
5291f660ca Automatically fix style. 2020-09-07 11:25:50 +02:00
ArthurSonzogni
4ad4946de3 Add the modal dialog example.
New component: clear_under.
2020-08-28 23:54:25 +02:00
ArthurSonzogni
5a8ed208da Add the Button component. 2020-08-28 23:54:25 +02:00
ArthurSonzogni
e3ca437a48 Introduce xflex and yflex. 2020-07-21 01:22:42 +02:00
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
ArthurSonzogni
e1a71d5b9f Use shared_ptr instead of unique_ptr for elements.
This allow users to pass it into initializer list. Then clang-format
will produce 'acceptable' indentations.

This fixes:
https://github.com/ArthurSonzogni/FTXUI/issues/18
2020-05-20 20:51:20 +02:00
ArthurSonzogni
f506be941d Add automatic formatting and license. 2020-04-19 21:01:09 +02:00
ArthurSonzogni
fce29a03b3 Run clang-format. 2020-03-27 01:42:46 +01:00
Mikael Olenfalk
c4f87a40b7 Fix narrow cast warnings 2020-03-23 21:27:16 +01:00
ArthurSonzogni
a402cb4fbb Fix format. Try compile on Windows. 2020-03-22 22:32:44 +01:00
ArthurSonzogni
4ff45ee540 Add travis configuration. 2020-03-22 21:33:41 +01:00
ArthurSonzogni
a8fdfafe6a Support the -pedantic flag. 2020-02-11 21:44:55 +01:00
ArthurSonzogni
620f70c3e5 Fix example/component/ CMakeLists.txt 2019-02-02 17:19:33 +01:00
ArthurSonzogni
15da9cdc18 Improve ScreenInteractive wait function. 2019-02-02 16:59:08 +01:00
ArthurSonzogni
65adb42124 Add Demo GIF. 2019-01-27 16:23:12 +01:00
ArthurSonzogni
eacb634a9e Add example homepage.cpp 2019-01-27 02:33:06 +01:00
ArthurSonzogni
9117166541 Add Graph. 2019-01-26 21:52:55 +01:00
Arthur Sonzogni
610b86183b Add hflow. 2019-01-22 23:42:57 +01:00
Arthur Sonzogni
456ede70fd Add size(direction, constraint, value).
For example:
============

element
  | size(WIDTH, EQUAL 10);

element
  | size(HEIGHT, GREATER_THAN, 10);

element
  | size(WIDTH, EQUAL, 10)
  | size(HEIGHT, EQUAL, 10)
2019-01-20 23:04:10 +01:00
Arthur Sonzogni
fddcbdea65 Add "frame" : scrollable area. 2019-01-19 22:06:05 +01:00
Arthur Sonzogni
5840966049 Update tutorial.md 2019-01-19 00:20:29 +01:00
Arthur Sonzogni
da5b4b5014 Update example/component/gallery.cpp 2019-01-18 22:58:32 +01:00
Arthur Sonzogni
01827ea8ce Add RadioBox. 2019-01-18 22:41:33 +01:00
Arthur Sonzogni
a6040bc360 Add CheckBox. 2019-01-12 22:25:49 +01:00
Arthur Sonzogni
dba019139b Refactor component containers. 2019-01-12 18:24:46 +01:00
Arthur Sonzogni
21644eea6b Flatten the namespaces.
Remove:
* ftxui::screen
* ftxui::dom
* ftxui::component

Keep:
* ftxui
2019-01-12 15:00:08 +01:00
Arthur Sonzogni
7efe8a6385 Separator ftxui::{screen,dom,component} into separate build unit. 2019-01-06 18:53:02 +01:00
Arthur Sonzogni
5887114793 Refactor directory structure.
The goal is to increase the separation in between:

 * ftxui::screen
 * ftxui::dom
 * ftxui::component
2019-01-06 17:10:35 +01:00
Arthur Sonzogni
961e3dcb50 Pipeable decoration and the package_manager example.
- Pipeable decorator.
- package_manager example.
2019-01-05 02:03:49 +01:00