vydání multiplatformního toolkit , který umožňuje vytvářet grafické rozhraní pro Linux, Windows, macOS, UNIX a mobilní platformy. wxWidgets 3.1 je pozicováno jako vývojová větev, ve které se vyvíjejí nové funkce pro další stabilní verzi 3.2.0. Ve srovnání s větví 3.0 má řadu nekompatibilit na úrovni API a není zaručena neměnnost ABI mezi mezivydáními 3.1.x.
Toolkit je napsán v jazyce C++ a šíří se pod svobodnou licencí , schválené Nadací ŠPO a organizací OSI. Licence je založena na LGPL a liší se povolením používat vlastní podmínky pro distribuci odvozených prací v binární podobě. Kromě vývoje programů v C/C++ wxWidgets poskytuje vazby pro většinu populárních programovacích jazyků, včetně , , a . Na rozdíl od jiných toolkitů, wxWidgets poskytuje aplikacím skutečně nativní vzhled a metody interakce pro cílový systém díky použití systémových API, místo napodobování GUI.
Hlavní novinky:
- Nový stavební systém založený na CMake. Stavební systém byl obohacen o podporu nových kompilátorů (MSVC 2019, g++ 10) a operačních systémů (macOS 10.14 a macOS 11 pro ARM);
- Nový experimentální port wxQt;
- Přepracována podpora OpenGL, zlepšeno využívání nových verzí OpenGL (3.2+);
- Byla přidána podpora událostí pro ovládací gesto, kreslené myší;
- Do wxFont a wxGraphicsContext byla přidána možnost zadat necelé hodnoty při určování velikosti písma a šířky kreslícího pera;
- V wxStaticBox byla implementována možnost přiřadit libovolné štítky oknům;
- Byla zlepšena podpora obrazovek s vysokou hustotou pixelů (High DPI);
- Byla přidána podpora pro kompresi LZMA a souborů ZIP 64;
- Byly představeny nové třídy: wxActivityIndicator, wxAddRemoveCtrl,
wxAppProgressIndicator, wxNativeWindow, wxPowerResourceBlocker,
wxSecretStore a wxTempFFile; - Byla přidána podpora zmrazení sloupců a řádků ve wxGrid;
- Byly představeny nové metody: wxDataViewToggleRenderer::ShowAsRadio(), wxDateTime::
GetWeekBasedYear(), wxDisplay::GetPPI(), wxGrid::SetCornerLabelValue(),
wxHtmlEasyPrinting::SetPromptMode(), wxJoystickEvent::GetButtonOrdinal(),
wxListBox::GetTopItem(), wxProcess::Activate(), wxTextEntry::ForceUpper(), wxStandardPaths::GetUserDir(),
wxToolbook::EnablePage(), wxUIActionSimulator::Select(); - Byly provedeny významné vylepšení ve třídách wxBusyInfo, wxDataViewCtrl,
wxNotificationMessage, wxStaticBox, wxStyledTextCtrl a wxUIActionSimulator; - Zlepšena bezpečnost při kompilaci díky možnosti deaktivace nebezpečných implicitních konverzí mezi řetězci typu wxString a «char*».
- Aktualizovány všechny dodávané externí knihovny. Přidána podpora pro WebKit 2 a GStreamer 1.7;
- Zavedena vylepšení spojená s podporou standardu C++11. Přidána podpora pro kompilaci s nástroji C++20.
- Velké množství oprav v portech wxGTK3 a wxOSX/Cocoa.
Zdroj: opennet.ru
