FTXUI 6.0.0 i 6.0.1

FTXUI 6.0.0 i 6.0.1

28 marca, po ponad półtora roku prac, miały miejsce wydania 6.0.0 oraz 6.0.1 wieloplatformowej biblioteki FTXUI, przeznaczonej do tworzenia aplikacji z interfejsem tekstowym w C++ i rozpowszechnianej na licencji MIT.

Możliwości biblioteki:

  • styl funkcyjny, podobny do React JS;
  • prosty i elegancki styl (zgodnie z opinią autora biblioteki);
  • obsługa zdarzeń z klawiatury i „myszy”;
  • wsparcie dla UTF8 i Unicode;
  • wsparcie dla True Color;
  • wsparcie dla zmiany stylu kursora;
  • wsparcie dla animacji;
  • wsparcie dla rysowania;
  • brak zewnętrznych zależności;
  • wieloplatformowość (Linux/MacOS, WebAssembly, Windows).

Lista zmian:

  • Komponent:
    • dodano wsparcie dla nieprzetworzonego wejścia, co pozwoliło na rozpoznawanie większej liczby klawiszy;
    • dodano ScreenInteractive::ForceHandleCtrlC(false), pozwalające komponentowi całkowicie zdefiniować standardowy handler Ctrl+C;
    • dodano zdarzenia Mouse::WheelLeft i Mouse::WheelRight;
    • dodano Event::DebugString();
    • dodano wsparcie dla trybu wstawiania Input i opcję InputOption::insert;
    • dodano opcję DropdownOption do konfigurowania listy rozwijanej;
    • dodano wsparcie dla zaznaczania i funkcje ScreenInteractive::GetSelection() oraz ScreenInteractive::SelectionChange(…);
    • dodano ScreenInteractive::FullscreenPrimaryScreen(), pozwalające na wyświetlanie komponentu w trybie pełnoekranowym na głównym ekranie, a nie na alternatywnym;
    • dodano ComponentBase::Index(), pozwalające uzyskać indeks komponentu w jego rodzicu;
    • dodano EntryState::index, pozwalające uzyskać indeks punktu menu;
    • dodano SliderOption::on_change, pozwalające ustawić handler zmiany wartości suwaka;
  • DOM:
    • dodano dekorator kursywy;
    • dodano poziomy wskaźnik hscroll_indicator;
    • Dimension::Fit(..) dodano opcję extend_beyond_screen, pozwalającą elementowi mieć rozmiar większy niż ekran;
    • dodano wsparcie dla zaznaczania i dekoratorów:
      • selectionColor;
      • selectionBackgroundColor;
      • selectionForegroundColor;
      • selectionStyle(style);
      • selectionStyleReset;
  • Ekran:
    • dodano funkcję Box::IsEmpty();
    • dodano wsparcie dla przezroczystości i funkcji:
      • Color::RGBA(r,g,b,a);
      • Color::HSVA(r,g,b,a);
      • Color::Blend(Color);
      • Color::IsOpaque();
  • Util:
    • dodano wsparcie dla dowolnego adaptera dla ConstStringListRef;
  • Budowa:
    • dodano wsparcie dla budowy z CMake „unity/jumbo”;
  • Naprawiono błędy.

Na zrzucie ekranu — narzędzie rgb-tui od autora biblioteki.

Źródło: linux.org.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster