Arthur Sonzogni
14da21b0ee
Improve documentation ( #1058 )
...
* Remove @ingroup from class member definitions
* Add the documentation for every public classes.
2025-06-05 11:35:14 +02:00
Arthur Sonzogni
a86d8f32d7
docs: fix module documentation ( #1056 )
Build / Bazel, ${{ matrix.cxx }}, ${{ matrix.os }} (cl, cl, windows-latest) (push) Waiting to run
Build / Bazel, ${{ matrix.cxx }}, ${{ matrix.os }} (clang, clang++, macos-latest) (push) Waiting to run
Build / Bazel, ${{ matrix.cxx }}, ${{ matrix.os }} (clang, clang++, ubuntu-latest) (push) Waiting to run
Build / Bazel, ${{ matrix.cxx }}, ${{ matrix.os }} (gcc, g++, macos-latest) (push) Waiting to run
Build / Bazel, ${{ matrix.cxx }}, ${{ matrix.os }} (gcc, g++, ubuntu-latest) (push) Waiting to run
Build / CMake, ${{ matrix.compiler }}, ${{ matrix.os }} (cl, Windows MSVC, windows-latest) (push) Waiting to run
Build / CMake, ${{ matrix.compiler }}, ${{ matrix.os }} (gcc, Linux GCC, ubuntu-latest) (push) Waiting to run
Build / CMake, ${{ matrix.compiler }}, ${{ matrix.os }} (llvm, llvm-cov gcov, Linux Clang, ubuntu-latest) (push) Waiting to run
Build / CMake, ${{ matrix.compiler }}, ${{ matrix.os }} (llvm, llvm-cov gcov, MacOS clang, macos-latest) (push) Waiting to run
Build / Test modules (llvm, ubuntu-latest) (push) Waiting to run
Documentation / documentation (push) Waiting to run
2025-06-05 07:16:53 +02:00
Arthur Sonzogni
44dcd41b5e
Fix typo in Microsoft terminal comment ( #1054 )
Build / Bazel, ${{ matrix.cxx }}, ${{ matrix.os }} (cl, cl, windows-latest) (push) Waiting to run
Build / Bazel, ${{ matrix.cxx }}, ${{ matrix.os }} (clang, clang++, macos-latest) (push) Waiting to run
Build / Bazel, ${{ matrix.cxx }}, ${{ matrix.os }} (clang, clang++, ubuntu-latest) (push) Waiting to run
Build / Bazel, ${{ matrix.cxx }}, ${{ matrix.os }} (gcc, g++, macos-latest) (push) Waiting to run
Build / Bazel, ${{ matrix.cxx }}, ${{ matrix.os }} (gcc, g++, ubuntu-latest) (push) Waiting to run
Build / CMake, ${{ matrix.compiler }}, ${{ matrix.os }} (cl, Windows MSVC, windows-latest) (push) Waiting to run
Build / CMake, ${{ matrix.compiler }}, ${{ matrix.os }} (gcc, Linux GCC, ubuntu-latest) (push) Waiting to run
Build / CMake, ${{ matrix.compiler }}, ${{ matrix.os }} (llvm, llvm-cov gcov, Linux Clang, ubuntu-latest) (push) Waiting to run
Build / CMake, ${{ matrix.compiler }}, ${{ matrix.os }} (llvm, llvm-cov gcov, MacOS clang, macos-latest) (push) Waiting to run
Build / Test modules (llvm, ubuntu-latest) (push) Waiting to run
Documentation / documentation (push) Waiting to run
2025-06-04 15:23:29 +02:00
Arthur Sonzogni
96d817217c
Fix reversed comments for string conversion functions ( #1053 )
2025-06-04 15:19:03 +02:00
Miko
b65bbce9bb
Add modules support ( #1015 )
...
Add experimental C++20 module suppport.
Co-authored-by: ArthurSonzogni <sonzogniarthur@gmail.com >
2025-06-04 15:02:20 +02:00
KenReneris
2c9a828402
Add support for italics ( #1009 )
...
Co-authored-by: Ken Reneris <ms/devops kreneris@microsoft.com >
Co-authored-by: ArthurSonzogni <sonzogniarthur@gmail.com >
2025-03-22 18:03:43 +01:00
ArthurSonzogni
bc682d25a6
Fix compiler nits.
2025-03-22 17:31:27 +01:00
Ayaan
b0e087ecef
Merge dom and component focus ( #978 )
...
Instead of two levels of focus with `focus` and `selected`, use a recursive
level. The components set the one "active" and hbox/vbox/dbox
Co-authored-by: ArthurSonzogni <sonzogniarthur@gmail.com >
2025-03-19 15:33:05 +01:00
Clément Roblot
6fafa2dfed
Feature: Selection
...
Add support for selection content in the dom.
2024-12-27 09:45:13 +01:00
ArthurSonzogni
fbd56cdf43
Fix CQ failures.
2024-08-17 12:01:43 +02:00
Arthur Sonzogni
f5d8c7deb5
Apply Clang-tidy ( #918 )
2024-08-16 11:19:51 +02:00
Arthur Sonzogni
ff305147ca
Color alpha support. ( #884 )
2024-06-13 18:43:14 +02:00
ArthurSonzogni
a715a767b5
Fix Color::HSV(h,0,v)
...
There was a problem when v==0
2024-06-02 12:03:41 +02:00
Arthur Sonzogni
8a2a9b0799
Generate compile commands for clangd. ( #855 )
...
Fix all the diagnostics reported.
Bug: https://github.com/ArthurSonzogni/FTXUI/issues/828
2024-05-01 14:32:22 +02:00
Jørn Gustav Larsen
d386df6f94
Enable raw keyboard input ( #832 )
...
In order for applications to receive all keyboard inputs, including the
Ctrl-C and Ctrl-Z, the raw input mode has been enabled. As result the
SIGINT will no longer be used, instead the keyboard Ctrl-C event is used
for exiting the framework, but only if no components has made use of it.
Co-authored-by: Jørn Gustav Larsen <jgl@fasttracksoftware.com >
Co-authored-by: ArthurSonzogni <sonzogniarthur@gmail.com >
2024-04-28 15:17:54 +02:00
ArthurSonzogni
7e3e1d4bca
Apply clang-tidy.
2024-04-28 10:40:57 +02:00
Dimo Markov
293ff179f6
Separate a reusable Image class from Screen ( #834 )
...
Co-authored-by: ArthurSonzogni <sonzogniarthur@gmail.com >
2024-04-27 11:03:44 +02:00
Arthur Sonzogni
c24a274292
Feature: hscroll_indicator ( #753 )
...
This is the symetrical of `vscroll_indicator`.
Requested by @ibrahimnasson.
Fixed:https://github.com/ArthurSonzogni/FTXUI/issues/752
2023-09-26 23:08:42 +02:00
Claus Klein
dd6a5d371f
Fix CMAKE_UNITY_BUILD usage ( #738 )
...
Add missing include guard.
This fix https://github.com/cpp-best-practices/cmake_template/issues/64
Co-authored-by: ArthurSonzogni <sonzogniarthur@gmail.com >
2023-08-28 21:38:51 +02:00
ArthurSonzogni
49a48820dd
Add documentations to every public functions.
2023-08-19 14:56:28 +02:00
ArthurSonzogni
5724f8483b
Move copyright to the top of files.
2023-08-19 13:57:01 +02:00
Stefan Ravn van Overeem
f7304c28c3
Fix Wshadow warning in Color::Interpolate ( #727 )
...
Co-authored-by: ArthurSonzogni <sonzogniarthur@gmail.com >
2023-08-17 22:18:33 +02:00
ArthurSonzogni
8058e1af6c
Cleanup. (IWYU, clang-tidy, etc...)
2023-08-13 08:20:16 +02:00
ArthurSonzogni
461d557674
Apply clang-tidy
2023-08-08 02:17:40 +02:00
Clément Roblot
e2a205ed0d
Performance improvement by refactoring pixel styles ( #704 )
...
Co-authored-by: ArthurSonzogni <sonzogniarthur@gmail.com >
2023-08-08 00:46:51 +02:00
ArthurSonzogni
00e63993ce
Run IWYU and clang-format
2023-08-06 13:25:42 +02:00
Stefan Ravn van Overeem
b0a7f88f07
Change WordBreakProperty underlying type to int8_t ( #715 )
...
This yields a ~1% performance improvements, likely
because the smaller types causes less load on memory
when bisearching the WordBreakProperty interval table
Co-authored-by: ArthurSonzogni <sonzogniarthur@gmail.com >
2023-08-03 17:41:54 +02:00
Stefan Ravn van Overeem
4debd4f3de
Extract extend codepoints out in seperate array ( #713 )
...
IsCombining() is a hotpath when rendering the screen.
Most of the time is spent doing bisearch on the word break interval list
to check it characters has the extend property.
Create a seperate table for intervals with the extend property,
so they can just be searched in isCombining().
Also some of the intervals in the word break interval list
were consecutive and could be combined to reduce the
size of the list.
This gives a ~25% performance improvement when running the benchmark
2023-08-01 09:39:14 +02:00
Igor Bogoslavskyi
b50f1fffc8
Improve const correctness in the Screen class ( #701 )
...
- Add a const variant to the accessor functions
- Make Print and ToString functions const
This fixes: https://github.com/ArthurSonzogni/FTXUI/issues/700
2023-07-26 00:41:16 +02:00
ArthurSonzogni
43240a5fd4
Add missing includes for gcc
...
Bug:https://github.com/ArthurSonzogni/FTXUI/issues/695
2023-07-15 16:40:20 +02:00
Stefan Ravn van Overeem
b2f66c7386
Improve unicode codepoint Bisearch performance ( #691 )
...
Improve the performance of the functions for searching for codepoints
in a table by passing the table array in as a reference instead of copying
it.
Co-authored-by: ArthurSonzogni <sonzogniarthur@gmail.com >
2023-06-27 22:32:57 +02:00
Arthur Sonzogni
455998d759
Remove Ref<XxxOption> and add new interfaces. ( #686 )
...
1. Stop taking Ref<XxxOption> in Component constructors. Instead, use
the XxxOption directly. Passing by copy avoid problems developers had
where one was shared in between multiple component, causing issues.
2. Add variants of most component constructors taking a struct only.
This replaces:
https://github.com/ArthurSonzogni/FTXUI/pull/670
This fixes:
https://github.com/ArthurSonzogni/FTXUI/issues/426
2023-06-25 17:22:05 +02:00
Arthur Sonzogni
7b7177b59c
Feature: hyperlink support. ( #665 )
...
See the [OSC 8 page](https://gist.github.com/egmontkob/eb114294efbcd5adb1944c9f3cb5feda ).
FTXUI support proposed by @aaleino in [#662 ](https://github.com/ArthurSonzogni/FTXUI/issues/662 ).
API:
```cpp
auto link = text("Click here") | hyperlink("https://github.com/FTXUI ")
```
Fixed:https://github.com/ArthurSonzogni/FTXUI/issues/662
2023-06-04 21:06:19 +02:00
Arthur Sonzogni
7de4f8683d
Feature: Add multi-line input. ( #630 )
2023-05-02 13:32:37 +02:00
Arthur Sonzogni
1397c10234
Remove string combining character list. ( #616 )
...
It was possible to access it from the WordBreakProperty list
2023-04-10 17:00:02 +02:00
Marc
896c0f2f6e
Casting and documentation fixes ( #608 )
...
Add `-wDocumentation` option. Fix the documentation.
Fix c++20/c++17 confusion in tests.
Co-authored-by: ArthurSonzogni <sonzogniarthur@gmail.com >
2023-03-31 17:13:48 +02:00
Marc
eed7e2ea70
Multiple fixes: signed/unsigned, etc... ( #600 )
...
Co-authored-by: ArthurSonzogni <sonzogniarthur@gmail.com >
2023-03-26 20:20:02 +02:00
Vinicius Moura Longaray
e83e90ced2
Feature: LinearGradient color decorator. ( #592 )
...
Based on the existing color decorators, create new ones to apply a gradient effect on the DOM.
Co-authored-by: ArthurSonzogni <sonzogniarthur@gmail.com >
2023-03-22 13:59:02 +01:00
Arthur Sonzogni
9efa0f7874
Feature: Add the dashed style. ( #594 )
2023-03-15 22:50:27 +01:00
Arthur Sonzogni
3e35f45830
Execute clang-tidy and IWYU. ( #576 )
2023-02-12 14:07:28 +01:00
Arthur Sonzogni
6fe8310321
Feature: strikethrough and underlinedDouble decorator. ( #561 )
...
This resolves:
https://github.com/ArthurSonzogni/FTXUI/issues/560
2023-01-22 11:02:27 +01:00
Arthur Sonzogni
0542227ba7
Execute clang tidy and IWYU ( #528 )
2022-12-19 19:44:43 +01:00
Arthur Sonzogni (slow/sick)
05f29ff3b3
Remove codecvt dependency. ( #516 )
...
This resolves:
https://github.com/ArthurSonzogni/FTXUI/issues/514
2022-11-26 20:43:09 +01:00
Fredrik Hallenberg
55b9706cfd
Fix automerge at border ( #515 )
2022-11-25 00:39:17 +01:00
wflohry
121bd0d046
Ignoring wstring_convert deprecation warnings ( #498 )
2022-11-19 14:22:44 +01:00
Tim Ebbeke
dfdbe1eecf
Fix std::ignore is in <tuple>. ( #502 )
2022-10-25 15:26:12 -04:00
Rosen Penev
e04ea27dcd
fix cross compiling with MinGW ( #499 )
...
MinGW on Linux is case sensitive. Windows is case insensitive.
Signed-off-by: Rosen Penev <rosenp@gmail.com >
Signed-off-by: Rosen Penev <rosenp@gmail.com >
2022-10-10 00:08:28 +02:00
Arthur Sonzogni
f4b47333be
Featre: Support ctrl+arrow in input. ( #494 )
...
CTRL+LEFT: Move the cursor to the beginning of the word.
CTRL+RIGHT: Move the cursor to the beginning of the word.
This was requested by:
https://github.com/ArthurSonzogni/FTXUI/issues/490
2022-10-06 21:16:55 +02:00
Arthur Sonzogni
c61fadd8ec
Update to unicode 13 standard. ( #484 )
...
It contains additional full width character and combining characters.
This resolves:
https://github.com/ArthurSonzogni/FTXUI/issues/483
2022-09-29 10:50:27 +02:00
Arthur Sonzogni
c8ec151154
Bring back C++17 minimal requirement. ( #475 )
2022-09-03 13:03:04 +02:00