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
This commit is contained in:
ArthurSonzogni
2020-05-20 20:36:47 +02:00
parent 0aabc258a9
commit e1a71d5b9f
53 changed files with 520 additions and 523 deletions

View File

@@ -18,13 +18,13 @@ main.cpp
int main(int argc, const char *argv[]) {
using namespace ftxui;
auto document =
hbox(
hbox({
text(L"left") | bold | border,
text(L"middle") | flex | border,
text(L"right") | border
);
text(L"right") | border,
});
auto screen = Screen::Create(Dimension::Full(), Dimension::Fit(document));
Render(screen, document.get());
Render(screen, document);
std::cout << screen.ToString();

View File

@@ -18,13 +18,13 @@ main.cpp
int main(int argc, const char *argv[]) {
using namespace ftxui;
auto document =
hbox(
hbox({
text(L"left") | bold | border,
text(L"middle") | flex | border,
text(L"right") | border
);
text(L"right") | border,
});
auto screen = Screen::Create(Dimension::Full(), Dimension::Fit(document));
Render(screen, document.get());
Render(screen, document);
std::cout << screen.ToString();

View File

@@ -132,17 +132,19 @@ Display a vertical or horizontal line to visually split the content of a
container in two.
~~~cpp
border(hbox(
vbox(
text(L"left top"),
text(L"left bottom")
),
separator(),
vbox(
text(L"right top"),
text(L"right bottom")
)
));
border(
hbox({
vbox({
text(L"left top"),
text(L"left bottom"),
}),
separator(),
vbox({
text(L"right top"),
text(L"right bottom"),
}),
})
);
~~~
~~~bash
@@ -213,11 +215,11 @@ An horizontal flow layout is implemented by:
#### Examples
~~~cpp
hbox(
hbox({
text(L"left") | border ,
text(L"middle") | border | flex,
text(L"right") | border
);
text(L"right") | border,
});
~~~
~~~bash
┌────┐┌─────────────────────────────────────────────────────────────────┐┌─────┐
@@ -226,11 +228,11 @@ An horizontal flow layout is implemented by:
~~~
~~~cpp
hbox(
hbox({
text(L"left") | border ,
text(L"middle") | border | flex,
text(L"right") | border | flex
);
text(L"right") | border | flex,
});
~~~
~~~bash
┌────┐┌───────────────────────────────────┐┌───────────────────────────────────┐