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>
This commit is contained in:
Kefu Chai
2022-03-12 22:18:36 +08:00
committed by GitHub
parent 3e28fd6520
commit 95c766e9e4
14 changed files with 210 additions and 32 deletions

View File

@@ -23,6 +23,7 @@ Element gaugeDirection(float ratio, GaugeDirection);
with others nearby.
- Fix the `Table` rendering function, to allow automerging characters.
- Bugfix: The `vscroll_indicator` now computes its offset and size correctly.
- Add the `operator|=(Element, Decorator)`
### Component
- Support SIGTSTP. (ctrl+z).
@@ -33,6 +34,14 @@ Element gaugeDirection(float ratio, GaugeDirection);
- **bugfix** Automatically convert '\r' keys into '\n' for Linux programs that
do not send the correct code for the return key, like the 'bind'.
https://github.com/ArthurSonzogni/FTXUI/issues/337
- Add decorator for components:
- `operator|(Component, ComponentDecorator)`
- `operator|=(Component, ComponentDecorator)`
- `operator|(Component, ElementDecorator)`
- `operator|=(Component, ElementDecorator)`
- Add the `Maybe` decorator.
- Add the `CatchEvent` decorator.
- Add the `Renderer` decorator.
2.0.0
-----