Выпуск графічнага тулкіта wxWidgets 3.2.0

Праз 9 гадоў з моманту выхаду галінкі 3.0 прадстаўлены першы выпуск новай стабільнай галіны кросплатформавага тулкіта wxWidgets 3.2.0, які дазваляе ствараць графічныя інтэрфейсы для Linux, Windows, macOS, UNIX і мабільных платформаў. У параўнанні з галінкай 3.0 назіраецца шэраг несумяшчальнасцяў на ўзроўні API. Тулкіт напісаны на мове З++ і распаўсюджваецца пад вольнай ліцэнзіяй wxWindows Library License, ухваленай Фондам ВПЗ і арганізацыяй OSI. Ліцэнзія заснавана на LGPL і адрозніваецца дазволам выкарыстання ўласных умоў для распаўсюджвання вытворных работ у бінарнай форме.

Акрамя распрацоўкі праграм на З++ wxWidgets падае біндынгі для большасці папулярных моў праграмавання, у тым ліку для PHP, Python, Perl і Ruby. У адрозненне ад іншых тулкітаў, wxWidgets забяспечвае для прыкладання па-сапраўднаму роднай для мэтавай сістэмы знешні выгляд і метады ўзаемадзеяння, дзякуючы выкарыстанню сістэмных API, а не імітацыі GUI.

Асноўныя навіны:

  • Рэалізаваны новы эксперыментальны порт wxQt, які забяспечвае працу wxWidgets па-над фрэймворкам Qt.
  • У порце wxGTK забяспечана паўнавартасная падтрымка пратакола Wayland.
  • Дададзена падтрымка экранаў з высокай шчыльнасцю пікселяў (High DPI). Дададзена магчымасць прызначэння розных DPI для розных манітораў і дынамічнай змены DPI. Прапанаваны новы API wxBitmapBundle, які дазваляе як адным цэлым маніпуляваць некалькімі варыянтамі растравага малюнка, прадстаўленых у розных дазволах.
  • Прапанавана новая зборачная сістэма на базе CMake. У зборачную сістэму дададзеная падтрымка новых кампілятараў (уключаючы MSVS 2022, g++ 12 і clang 14) і аперацыйных сістэм.
  • Перапрацавана падтрымка OpenGL, палепшана выкарыстанне новых версій OpenGL (3.2+).
  • Дададзена падтрымка сціску LZMA і файлаў ZIP 64.
  • Узмоцнена абарона на этапе кампіляцыі, дзякуючы магчымасці адключэння небяспечных няяўных пераўтварэнняў паміж радкамі з тыпамі wxString і «char*».
  • Дададзена падтрымка падзей для кіраўнікоў жэстаў, якія прайграваюцца пры дапамозе мышы.
  • У класах wxFont і wxGraphicsContext дададзена магчымасць указання няцэлых значэнняў пры вызначэнні памеру шрыфтоў і шырыні светлавога пяра.
  • У класе wxStaticBox рэалізавана магчымасць прызначэння адвольных пазнак вокнам.
  • У API wxWebRequest дададзена падтрымка HTTPS і HTTP/2.
  • У класе wxGrid дададзена падтрымка замарозкі слупкоў і радкоў.
  • Прадстаўлены новыя класы: wxActivityIndicator, wxAddRemoveCtrl, wxAppProgressIndicator, wxBitmapBundle, wxNativeWindow, wxPersistentComboBox, wxPowerResourceBlocker, wxSecretStore, wxTempFFile і wxUILocale.
  • Для ўсіх новых і некаторых існуючых класаў рэалізаваны новыя апрацоўшчыкі XRC.
  • Прадстаўлены новыя метады: wxDataViewToggleRenderer::ShowAsRadio(), wxDateTime:: GetWeekBasedYear(), wxDisplay::GetPPI(), wxGrid::SetCornerLabelValue(), wxHtmlEasyPrinting::Set (), wxListBox::GetTopItem (), wxProcess::Activate(), wxTextEntry::ForceUpper(), wxStandardPaths::GetUserDir(), wxToolbook::EnablePage(), wxUIActionSimulator::Select().
  • Унесены значныя паляпшэнні ў класы wxBusyInfo, wxDataViewCtrl, wxNotificationMessage, wxStaticBox, wxStyledTextCtrl і wxUIActionSimulator.
  • Палепшана падтрымка платформы macOS, у тым ліку рэалізавана магчымасць выкарыстання цёмнай тэмы афармлення і дададзена падтрымка прылад на працэсарах ARM.
  • Унесены паляпшэнні, звязаныя з падтрымкай стандарту C++11. Дададзена падтрымка зборкі кампілятарамі C++20.
  • Абноўлены усе ўваходныя ў камплект іншыя бібліятэкі. Дададзена падтрымка WebKit 2 і GStreamer 1.7.

Крыніца: opennet.ru

Дадаць каментар