ArthurSonzogni
c2e1920449
Execute IWYU.
2022-04-28 10:43:31 +02:00
ArthurSonzogni
3d56146447
Add test coverage for button, collapsible and menu.
2022-04-28 10:08:33 +02:00
ArthurSonzogni
c33e805a76
Add coverage for menu and resizable_split.
2022-04-27 23:00:29 +02:00
ArthurSonzogni
d0890f94d1
execute IWYU and add some coverage tests.
2022-04-27 18:57:48 +02:00
ArthurSonzogni
84d6e6b3dd
Add additional coverage tests.
2022-04-27 14:00:46 +02:00
ArthurSonzogni
114cbfcffd
Add coverage and remove deprecated WideInput.
2022-04-27 11:33:42 +02:00
ArthurSonzogni
5ba301d316
Add coverage for terminal_input_parser.
2022-04-27 11:11:32 +02:00
Arthur Sonzogni
06ed8567b8
Add coverage for colors (extended) ( #385 )
2022-04-27 09:28:48 +02:00
Arthur Sonzogni
04b36df567
Coverage decorator ( #384 )
...
Add code coverage for colors and decorators.
2022-04-26 17:04:34 +02:00
Arthur Sonzogni
764c24ef40
Add code coverage support. ( #378 )
2022-04-17 15:47:20 +02:00
Arthur Sonzogni
9f610a0110
Make the focused button to take the focus inside frame. ( #371 )
...
This resolves:
https://github.com/ArthurSonzogni/FTXUI/issues/370
2022-04-03 15:04:33 +02:00
Arthur Sonzogni
aebde94352
Add clang-tidy. ( #368 )
2022-03-31 02:17:43 +02:00
Arthur Sonzogni
62fb6298be
Bug fixes. ( #367 )
...
- Do not draw more frames than what is needed.
- Fix MenuEntry transform state.
- Fix Canvas animated example.
2022-03-26 07:55:52 +01:00
Arthur Sonzogni
548fa51b71
Upgrade version ( #363 )
2022-03-20 21:14:17 +01:00
Kefu Chai
0137d2a9ac
component/collapsible: drop unused member variable ( #360 )
...
Signed-off-by: Kefu Chai <tchaikov@gmail.com >
2022-03-20 16:04:42 +01:00
Arthur Sonzogni
c76612a3c8
Fix error with invalid float in the gauge component. ( #356 )
2022-03-13 22:30:05 +01:00
Arthur Sonzogni
4da63b9260
Animation ( #355 )
2022-03-13 18:51:46 +01:00
Kefu Chai
95c766e9e4
Component decorators ( #354 )
...
Add decorator variants for decorator components
Add the "pipe" operator for components, similar to what was done for Elements.
We are able to put something like:
```
Button(...) | Maybe(&show_button)
```
Add decorators for:
- `Maybe`
- `CatchEvent`
- `Renderer`
Signed-off-by: Kefu Chai <tchaikov@gmail.com >
Co-authored-by: ArthurSonzogni <sonzogniarthur@gmail.com >
2022-03-12 15:18:36 +01:00
Arthur Sonzogni
3e28fd6520
Convert \r into \n ( #350 )
...
This resolves:
https://github.com/ArthurSonzogni/FTXUI/issues/337
2022-03-04 13:23:45 +01:00
Kefu Chai
a254e36632
component/catch_event: improve the example for CatchEvent() ( #351 )
...
before this change, the example in the doxygen document for CatchEvent()
does not use the documented function. hence the example is not that
useful for developers interested in a typical usage of this function.
after this change, the example is improved to added the call to
CatchEvent(), which allows the application to the Loop() function at
user input.
Signed-off-by: Kefu Chai <tchaikov@gmail.com >
2022-03-04 13:23:31 +01:00
Arthur Sonzogni
20f16b3984
Improve ComponentBase and Container::Tab Focusable implementations ( #341 )
...
- Provide better defaults for ComponentBase `Focusable()` and
`ActiveChild()` methods. This resolves:
https://github.com/ArthurSonzogni/FTXUI/issues/335
- Implement `Container::Tab` 's `Focusable()` methods. This prevents
the users to navigate into a tab with no interactivity.
2022-02-19 11:49:12 +01:00
Arthur Sonzogni
9b83205b3e
Fix vscroll-indicator size and offset. ( #334 )
2022-02-14 02:44:57 +01:00
Arthur Sonzogni
5da7b8a59a
Fix automerge in tables. ( #333 )
2022-02-13 11:41:31 +01:00
Arthur Sonzogni
9c4218c2a8
Support SIGTSTP and task posting. ( #331 )
...
- Add support for SIGTSTP:
https://github.com/ArthurSonzogni/FTXUI/issues/330
This
- Add support for task posting.
This allows folks to defer function execution, and execute it directly
below the main loop. The task are executed in a FIFO order.
2022-02-13 11:11:34 +01:00
Arthur Sonzogni
8ba3698437
Gauge direction ( #326 )
...
Add `gauge` with all the different directions.
Co-authored-by: Aleksandar Brakmic <13668697+brakmic-aleksandar@users.noreply.github.com >
2022-02-06 19:17:21 +01:00
Nikola Dućak
689d5dd299
Replace std::clamp with util::clamp and reformat the code ( #321 )
...
* Replace std::clamp with util::clamp
* Apply clang-format
* Execute ./tools/iwyu.sh
Co-authored-by: ArthurSonzogni <sonzogniarthur@gmail.com >
2022-02-05 15:03:45 +01:00
Arthur Sonzogni
6039474a26
Automerge feature. ( #313 )
...
Add the `automerge` attribute to the Pixel bit field. It controls
whether two pixels must be automerged. Defining this allows two
mergeable characters not to be merged.
This was requested by:
https://github.com/ArthurSonzogni/FTXUI/issues/285
2022-01-22 15:38:01 +01:00
Arthur Sonzogni
4267b40a68
Add collapsible into fuzzer. ( #312 )
2022-01-22 11:44:52 +01:00
Arthur Sonzogni
3829734fa9
Fix table separator ( #311 )
2022-01-21 23:02:29 +01:00
Vladislav Nepogodin
b4a655ec65
Introduce WithRestoredIO ( #307 )
...
This function allow running a callback with the terminal hooks
temporarily uninstalled.
Co-authored-by: ArthurSonzogni <sonzogniarthur@gmail.com >
2022-01-19 13:38:39 +01:00
Arthur Sonzogni
382205c057
Add Table constructor from Elements. ( #310 )
2022-01-16 16:46:32 +01:00
pezy
feb24b9498
Fix Clamp crash when entries_ size is zero ( #306 )
...
Run ftxui_example_homescreen on Windows, then select compiler tab, crash on origin code.
Co-authored-by: chenpeizhe <peizhe.chen@horizon.ai >
2022-01-13 01:46:09 +01:00
Arthur Sonzogni
1888631bec
Main ( #303 )
...
* Refresh cursor reporting on resize.
* Fix invalid size write.
This resolves:
https://github.com/ArthurSonzogni/FTXUI/issues/302
2022-01-11 23:06:36 +01:00
Arthur Sonzogni
cdd6339849
Execute IWYU ( #299 )
2022-01-07 11:03:54 +01:00
Andrey Zimin
358f886fab
Clamp selected_ on list resize for Radiobox/Menu/Toggle ( #298 )
...
fix: https://github.com/ArthurSonzogni/FTXUI/issues/296#issue-1092343846
When the list in Radiobox/Menu/Toggle is resized, clamp the |selected_| values so that it stays within bounds.
Clamping is executed in Render() and in OnEvent()
Co-authored-by: ArthurSonzogni <sonzogniarthur@gmail.com >
2022-01-06 22:38:32 +01:00
Arthur Sonzogni
728976bdeb
Fix vscroll indicator ( #295 )
...
* Clear vscroll_indicator content before drawing it.
2022-01-05 12:04:03 +01:00
Arthur Sonzogni
fc92f52b4c
The collapsible element. ( #294 )
2022-01-02 15:48:56 +01:00
Man, Jianting (Meco)
071d2bc92b
improve the window size handle method ( #292 )
...
1. the default window size should be 80x24 rather than 80x25 in VT100.
2. the ioctl return value result should be checked. Some operating systems don't support TIOCGWINSZ this command.
2022-01-01 19:24:37 +01:00
Arthur Sonzogni
aea67743d4
Canvas bug fix and documentation. ( #289 )
2021-12-29 16:31:27 +01:00
Arthur Sonzogni
7614bf04a6
Address felixjulianheitmann suggestions. ( #288 )
...
- Remove unused examples/dom/flexbox.cpp
- Add canvas(width, height, void(Canvas&)) method
2021-12-24 17:29:39 +01:00
Arthur Sonzogni
0d47dd19ab
Feature: Canvas ( #287 )
...
Draw using braille and block characters on a grid.
2021-12-23 14:17:33 +01:00
Arthur Sonzogni
7e5cd23b4c
Add focusPosition[relative](x,y) ( #280 )
...
It allows when using inside a frame, to scroll the view toward a
particular position.
This resolves:
https://github.com/ArthurSonzogni/FTXUI/issues/125
2021-12-13 11:38:31 +01:00
Arthur Sonzogni
52276c8a2b
Bugfix Input use std::string ( #279 )
...
Use std::string by default for the implementation of FTXUI's input
component.
Along the way:
- Give a correct implementation for fullwidth characters.
- Add tests
- Modify the way the cursor is drawn.
2021-12-12 21:31:54 +01:00
Arthur Sonzogni
602392c43d
Implement flexbox ( #277 )
...
This implement the flexbox elements, following the HTML one.
Built from them, there is also the following elements:
- `paragraph`
- `paragraphAlignLeft`
- `paragraphAlignRight`
- `paragraphAlignCenter`
- `paragraphAlignJustify`
This is a breaking change.
2021-12-11 17:58:25 +01:00
Nikola Dućak
cecd54df42
Fix gridbox segfault ( #260 )
...
The problem was about
2021-11-17 10:16:09 +01:00
Arthur Sonzogni
8652280c85
Input shouldn't take focus. ( #253 )
...
This fixes:
https://github.com/ArthurSonzogni/FTXUI/issues/252
2021-11-07 12:01:17 +01:00
Arthur Sonzogni
c0e47aecb2
Remove unused file. ( #244 )
...
It was added mistakenly in:
https://github.com/ArthurSonzogni/FTXUI/pull/214#pullrequestreview-786773967
but @robinlinden found it.
2021-10-22 18:10:11 +02:00
Arthur Sonzogni
f80d9b5cfd
Fix dropdown fuzzer. ( #243 )
2021-10-22 14:04:07 +02:00
Arthur Sonzogni
313ce9c35f
Add support for PageUp/PageDown/Home/End buttons. ( #242 )
...
See:
https://github.com/ArthurSonzogni/FTXUI/issues/241
2021-10-20 21:15:40 +02:00
Arthur Sonzogni
026a005753
Table ( #229 )
...
This class allows rendering stylized table.
2021-10-15 23:04:11 +02:00