Vydání grafické sady wxWidgets 3.2.0

9 let po vydání větve 3.0 bylo představeno první vydání nové stabilní větve multiplatformní sady nástrojů wxWidgets 3.2.0, která umožňuje vytvářet grafická rozhraní pro Linux, Windows, macOS, UNIX a mobilní platformy. Oproti větvi 3.0 je na úrovni API řada nekompatibilit. Sada nástrojů je napsána v C++ a je distribuována pod bezplatnou licencí wxWindows Library License, schválenou Open Source Foundation a organizací OSI. Licence je založena na LGPL a vyznačuje se povolením používat vlastní podmínky k distribuci odvozených děl v binární formě.

Kromě vývoje programů v C++ poskytuje wxWidgets vazby pro většinu oblíbených programovacích jazyků, včetně PHP, Python, Perl a Ruby. Na rozdíl od jiných sad nástrojů poskytuje wxWidgets aplikaci se skutečně nativním vzhledem a chováním pro cílový systém pomocí systémových rozhraní API namísto napodobování GUI.

Hlavní inovace:

  • Byl implementován nový experimentální port wxQt, který umožňuje wxWidgets pracovat nad rámcem Qt.
  • Port wxGTK poskytuje plnou podporu protokolu Wayland.
  • Přidána podpora pro obrazovky s vysokou hustotou pixelů (High DPI). Přidána možnost přiřadit různá DPI pro různé monitory a dynamicky měnit DPI. Bylo navrženo nové wxBitmapBundle API, které vám umožňuje manipulovat s několika verzemi bitmapového obrázku, prezentovaného v různých rozlišeních, jako s jedním celkem.
  • Byl navržen nový systém sestavení založený na CMake. Do systému sestavení byla přidána podpora nových kompilátorů (včetně MSVS 2022, g++ 12 a clang 14) a operačních systémů.
  • Byla přepracována podpora OpenGL, vylepšeno použití nových verzí OpenGL (3.2+).
  • Přidána podpora pro kompresi LZMA a soubory ZIP 64.
  • Ochrana během kompilace byla vylepšena díky možnosti zakázat nebezpečné implicitní konverze mezi řetězci typu wxString a „char*“.
  • Přidána podpora událostí pro ovládací gesta hraná pomocí myši.
  • Třídy wxFont a wxGraphicsContext nyní mají možnost určit neceločíselné hodnoty při definování velikostí písem a šířek per.
  • Třída wxStaticBox implementuje možnost přiřadit oknům libovolné štítky.
  • WxWebRequest API nyní podporuje HTTPS a HTTP/2.
  • Třída wxGrid přidala podporu pro zmrazení sloupců a řádků.
  • Zavedeny nové třídy: wxActivityIndicator, wxAddRemoveCtrl, wxAppProgressIndicator, wxBitmapBundle, wxNativeWindow, wxPersistentComboBox, wxPowerResourceBlocker, wxSecretStore, wxTempFFile a wxUILocale.
  • Pro všechny nové třídy a některé stávající třídy byly implementovány nové ovladače XRC.
  • Zavedeny nové metody: wxDataViewToggleRenderer::ShowAsRadio(), wxDateTime::GetWeekBasedYear(), wxDisplay::GetPPI(), wxGrid::SetCornerLabelValue(), wxHtmlEasyPrinting::SetPrompt:ListMode:Gistox, wx ::Získej TopItem (), wxProcess::Activate(), wxTextEntry::ForceUpper(), wxStandardPaths::GetUserDir(), wxToolbook::EnablePage(), wxUIActionSimulator::Select().
  • Významná vylepšení byla provedena u tříd wxBusyInfo, wxDataViewCtrl, wxNotificationMessage, wxStaticBox, wxStyledTextCtrl a wxUIActionSimulator.
  • Byla vylepšena podpora platformy macOS, včetně možnosti používat tmavé téma a přidána podpora pro zařízení s procesory ARM.
  • Byla provedena vylepšení pro podporu standardu C++11. Přidána podpora pro vytváření s kompilátory C++20.
  • Všechny zahrnuté knihovny třetích stran byly aktualizovány. Přidána podpora pro WebKit 2 a GStreamer 1.7.

Zdroj: opennet.ru

Přidat komentář