Git Product home page Git Product logo

Comments (12)

MichaelGoulding avatar MichaelGoulding commented on July 21, 2024 1

Thanks! The sizing behavior appears to be what I needed. I'll take a closer look at it when I get back from vacation.
Is there a way to change the borders to straight corners?

from ftxui.

ArthurSonzogni avatar ArthurSonzogni commented on July 21, 2024

That sounds like a good idea.

Note that you can use a vbox of hbox:

vbox({
  hbox({ a11, a12, a13}),
  hbox({ a21, a22, a23}),
  hbox({ a31, a32, a33}),
})

However, a gridbox would ensure a shared width/height for every elements in the same column/line.
I will take a look. This sounds useful.

from ftxui.

MichaelGoulding avatar MichaelGoulding commented on July 21, 2024

This repository shows where I used vboxes of hboxes, but it doesn't work well.

from ftxui.

ArthurSonzogni avatar ArthurSonzogni commented on July 21, 2024

I tried your example.
It doesn't look bad. What the problem?

simplescreenrecorder-2021-07-01_14.57.56.mp4

from ftxui.

ArthurSonzogni avatar ArthurSonzogni commented on July 21, 2024

Fixed by:
#190

See example:
https://github.com/ArthurSonzogni/FTXUI/blob/51850f118983efe3e98c1d2731d848483db03176/src/ftxui/dom/gridbox_test.cpp#L75:L95

Does this fit your needs?

from ftxui.

MattBystrin avatar MattBystrin commented on July 21, 2024

Waiting for straight corners too

from ftxui.

ArthurSonzogni avatar ArthurSonzogni commented on July 21, 2024

I would like to add some class to build some fancy tables with different style for the grid and the element. That will come at some point.

About rounded/straight border. I switched to rounded recently, because developers like it a lot better. However, I would have like make it configurable to fit every one wishes.

Would you have some API suggestions?
Something global?

Two functions, border being straight.

Element border(Element) // Straight
Element roundedBorder(Element)

Two functions, border being rounded.

Element border(Element) // Rounded
Element straightBorder(Element)

Some options:

Element border(Element, bool rounded = true);

from ftxui.

MattBystrin avatar MattBystrin commented on July 21, 2024

@ArthurSonzogni , what do you think about one more "double lined" border ( inspired by mc ) style ?
By the way the first option ( different names ) is really suits me .

from ftxui.

ArthurSonzogni avatar ArthurSonzogni commented on July 21, 2024

@ArthurSonzogni , what do you think about one more "double lined" border ( inspired by mc ) style ?

This is now supported, via the API:

Element separator(void);
Element separatorLight();
Element separatorHeavy();
Element separatorDouble();
Element separatorStyled(BorderStyle);

Element border(Element);
Element borderLight(Element);
Element borderHeavy(Element);
Element borderDouble(Element);
Element borderRounded(Element);
Decorator borderStyled(BorderStyle);

from ftxui.

ArthurSonzogni avatar ArthurSonzogni commented on July 21, 2024

The original issue as been address via the gridbox element.

from ftxui.

ArthurSonzogni avatar ArthurSonzogni commented on July 21, 2024

FYI. I added gridbox for to represent a grid instead of simple row/column with hbox / vbox .

Based on that, I introduced a class to build styled table:
#228
#229

from ftxui.

MichaelGoulding avatar MichaelGoulding commented on July 21, 2024

Thanks!

from ftxui.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.