FTXUI 6.0.0 und 6.0.1

FTXUI 6.0.0 und 6.0.1

Am 28. März, nach mehr als anderthalb Jahren Entwicklung, fanden die Veröffentlichungen 6.0.0 und 6.0.1 der plattformübergreifenden Bibliothek statt FTXUI, die zur Erstellung von C++-Anwendungen mit textbasierten Schnittstellen gedacht ist und unter der MIT-Lizenz verbreitet wird.

Funktionen der Bibliothek:

  • funktionaler Stil, ähnlich wie bei React JS;
  • ein einfacher und eleganter Stil (laut Meinung des Bibliotheksautors);
  • Verarbeitung von Tastatur- und „Maus“-Ereignissen;
  • Unterstützung von UTF8 und Unicode;
  • Unterstützung von True Color;
  • Unterstützung der Cursorstiländerung;
  • Unterstützung von Animationen;
  • Unterstützung von Zeichnen;
  • keine externen Abhängigkeiten;
  • Plattformunabhängigkeit (Linux/MacOS, WebAssembly, Windows).

Änderungsprotokoll:

  • Komponente:
    • Unterstützung für rohen Eingaben hinzugefügt, was die Definition einer größeren Anzahl von Tasten ermöglichte;
    • ScreenInteractive::ForceHandleCtrlC(false) hinzugefügt, was es der Komponente ermöglicht, den Standard-Ctrl+C-Handler vollständig zu überschreiben;
    • Ereignisse Mouse::WheelLeft und Mouse::WheelRight hinzugefügt;
    • Event::DebugString(); hinzugefügt;
    • Unterstützung für den Eingabemodus und die Option InputOption::insert hinzugefügt;
    • DropdownOption hinzugefügt, um das Dropdown-Menü anzupassen;
    • Unterstützung für Auswahl und Funktionen ScreenInteractive::GetSelection() und ScreenInteractive::SelectionChange(...); hinzugefügt;
    • ScreenInteractive::FullscreenPrimaryScreen() hinzugefügt, um das Anzeigen einer Vollbildkomponente auf dem Hauptscreen zu ermöglichen, anstatt auf dem alternativen;
    • ComponentBase::Index() hinzugefügt, um den Index der Komponente im Elternteil zu erhalten;
    • EntryState::index hinzugefügt, um den Index des Menüpunkts zu erhalten;
    • SliderOption::on_change hinzugefügt, um einen Handler für die Veränderung des Schiebereglerwerts festzulegen;
  • DOM:
    • Kursivdekorator hinzugefügt;
    • Horizontaler Indikator hscroll_indicator hinzugefügt;
    • Dimension::Fit(..) hinzugefügt, um die Option extend_beyond_screen zu ermöglichen, damit das Element größer als der Bildschirm sein kann;
    • Unterstützung für Auswahl und Dekoratoren hinzugefügt:
      • selectionColor;
      • selectionBackgroundColor;
      • selectionForegroundColor;
      • selectionStyle(style);
      • selectionStyleReset;
  • Bildschirm:
    • Funktion Box::IsEmpty(); hinzugefügt;
    • Unterstützung für Transparenz und Funktionen hinzugefügt:
      • Color::RGBA(r,g,b,a);
      • Color::HSVA(r,g,b,a);
      • Color::Blend(Color);
      • Color::IsOpaque();
  • Nutzung:
    • Unterstützung für beliebigen Adapter für ConstStringListRef hinzugefügt;
  • Build:
    • Unterstützung für den Bau mit CMake „unity/jumbo“ hinzugefügt;
  • Fehler behoben.

Auf dem Screenshot — die Utility rgb-tui vom Autor der Bibliothek.

Quelle: linux.org.ru

60GB SSD 8Gb DDR4