FTXUI 6.0.0 ΠΈ 6.0.1

28 ΠΌΠ°Ρ€Ρ‚Π°, послС Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ»ΡƒΡ‚ΠΎΡ€Π° Π»Π΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, ΡΠΎΡΡ‚ΠΎΡΠ»ΠΈΡΡŒ выпуски 6.0.0 ΠΈ 6.0.1 кроссплатформСнной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ FTXUI, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΠΎΠΉ для создания Π½Π° C++ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ с тСкстовым интСрфСйсом ΠΈ распространяСмой ΠΏΠΎ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠΈ MIT.

ВозмоТности Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ:

  • Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ ΡΡ‚ΠΈΠ»ΡŒ, Π½Π°ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅ React JS;
  • простой ΠΈ элСгантный ΡΡ‚ΠΈΠ»ΡŒ (ΠΏΠΎ мнСнию Π°Π²Ρ‚ΠΎΡ€Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ);
  • ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° событий ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹ ΠΈ Β«ΠΌΡ‹ΡˆΠΈΒ»;
  • ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° UTF8 ΠΈ Unicode;
  • ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° True Color;
  • ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° измСнСния стиля курсора;
  • ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΉ;
  • ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° рисования;
  • отсутствиС сторонних зависимостСй;
  • ΠΊΡ€ΠΎΡΡΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Π½Π½ΠΎΡΡ‚ΡŒ (Linux/MacOS, WebAssembly, Windows).

Бписок измСнСний:

  • Component:
    • Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π½Π΅ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π°, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ большСС количСство клавиш;
    • Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ScreenInteractive::ForceHandleCtrlC(false), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρƒ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ стандартный ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Ctrl+C;
    • Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ события Mouse::WheelLeft ΠΈ Mouse::WheelRight;
    • Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° Event::DebugString();
    • Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Ρ€Π΅ΠΆΠΈΠΌΠ° вставки Input ΠΈ опция InputOption::insert;
    • Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° опция DropdownOption для настройки Π²Ρ‹ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅Π³ΠΎ списка;
    • Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° выдСлСния ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ScreenInteractive::GetSelection() ΠΈ ScreenInteractive::SelectionChange(…);
    • Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ScreenInteractive::FullscreenPrimaryScreen(), ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ полноэкранный ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Π½Π° основном экранС, Π° Π½Π΅ Π½Π° Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½ΠΎΠΌ;
    • Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ComponentBase::Index(), позволящая ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ индСкс ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° Π² Π΅Π³ΠΎ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅;
    • Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° EntryState::index, позволящая ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ индСкс ΠΏΡƒΠ½ΠΊΡ‚Π° мСню;
    • Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° SliderOption::on_change, позволящая ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ измСнСния значСния ΠΏΠΎΠ»Π·ΡƒΠ½ΠΊΠ°;
  • DOM:
    • Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π΄Π΅ΠΊΠΎΡ€Π°Ρ‚ΠΎΡ€ курсива;
    • Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ hscroll_indicator;
    • Dimension::Fit(..) Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° опция extend_beyond_screen, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ элСмСнту ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ большС экрана;
    • Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° выдСлСния ΠΈ Π΄Π΅ΠΊΠΎΡ€Π°Ρ‚ΠΎΡ€Ρ‹:
      • selectionColor;
      • selectionBackgroundColor;
      • selectionForegroundColor;
      • selectionStyle(style);
      • selectionStyleReset;
  • Screen:
    • Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° функция Box::IsEmpty();
    • Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Ρ‹ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° прозрачности ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:;
      • Color::RGBA(r,g,b,a);
      • Color::HSVA(r,g,b,a);
      • Color::Blend(Color);
      • Color::IsOpaque();
  • Util:
    • Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ³ΠΎ Π°Π΄Π°ΠΏΡ‚Π΅Ρ€Π° для ConstStringListRef;
  • Build:
    • Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° сборки с CMake Β«unity/jumboΒ»;
  • Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½Ρ‹ ошибки.

На ΡΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚Π΅ β€” ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π° rgb-tui ΠΎΡ‚ Π°Π²Ρ‚ΠΎΡ€Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: linux.org.ru

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ