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

@@ -57,27 +57,28 @@ class MyComponent : public Component {
container.Add(&input);
}
// clang-format off
Element Render(std::wstring name, Component& component) {
return
hbox(
return hbox({
text(name) | size(WIDTH, EQUAL, 8),
separator(),
component.Render()
);
component.Render(),
});
}
Element Render() override {
return
vbox(
Render(L"menu", menu), separator(),
Render(L"toggle", toggle), separator(),
Render(L"checkbox", checkbox_container), separator(),
Render(L"radiobox", radiobox), separator(),
Render(L"input", input) | size(WIDTH, LESS_THAN, 30)
) | border;
return vbox({
Render(L"menu", menu),
separator(),
Render(L"toggle", toggle),
separator(),
Render(L"checkbox", checkbox_container),
separator(),
Render(L"radiobox", radiobox),
separator(),
Render(L"input", input) | size(WIDTH, LESS_THAN, 30),
}) |
border;
}
// clang-format on
};
int main(int argc, const char* argv[]) {