mirror of
				https://github.com/ArthurSonzogni/FTXUI.git
				synced 2025-11-04 05:28:15 +08:00 
			
		
		
		
	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:
		@@ -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();
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -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();
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -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
 | 
			
		||||
┌────┐┌───────────────────────────────────┐┌───────────────────────────────────┐
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user