9 aastat pĂ€rast 3.0 versiooni ilmumist on vĂ€lja antud uus stabiilne versioon, mis on mĂ”eldud mitme platvormi graafikakomplekti, wxWidgets 3.2.0, arendamiseks, vĂ”imaldades luua graafilisi liideseid Linuxi, Windowsi, macOS, UNIXi ja mobiilsete platvormide jaoks. 3.0 versiooniga vĂ”rreldes on API tasandil mitmeid ĂŒhilduvusprobleeme. Komplekt on kirjutatud C++ keeles ja levitatakse wxWindows Library License avatud litsentsi alusel, mille on heaks kiitnud Open Source Initiative ja OSI organisatsioon. Luba pĂ”hineb LGPL-l ja lubab kasutada enda tingimusi tuletatud tööde jaotamiseks binaarses vormis.
Peale C++ programmide arendamise pakub wxWidgets sidemeid enamikule populaarsetest programmeerimiskeeltest, sealhulgas PHP, Python, Perl ja Ruby. Erinevalt teistest komplektidest pakub wxWidgets rakendusele tĂ”eliselt kohandatud vĂ€limust ja suhtlemismeetodeid sihtsĂŒsteemi jaoks, kasutades sĂŒsteemi API-sid, mitte GUI simuleerimist.
Peamised uuendused:
- Rakendatud on uus eksperimentaalne port wxQt, mis tagab wxWidgets töö Qt raamistikul.
- wxGTK port vĂ”imaldab tĂ€isĂŒheline toe Waylandi protokolli jaoks.
- Lisatud on tugi kĂ”rge pikslitihedusega ekraanidele (High DPI). Lisatud on vĂ”imalus mÀÀrata erinevad DPI-d erinevatele monitoridele ja dĂŒnaamiline DPI muutmine. Pakutud on uus API wxBitmapBundle, mis vĂ”imaldab ĂŒhe tervikuna hallata mitmeid rasterypilte, mis on esitatud erinevates lahutustes.
- Pakutud on uus CMake pĂ”hine ehitussĂŒsteem. Ehitusprotsessi on lisatud toetust uutele kompilaatoritele (sealhulgas MSVS 2022, g++ 12 ja clang 14) ja operatsioonisĂŒsteemidele.
- Parendatud on OpenGL toetust ja parandatud on uute OpenGL versioonide (3.2+) kasutamine.
- Lisatud on LZMA tihenduse ja ZIP 64 failide toetus.
- Tugevdatud on kaitset kompileerimise etapis, vĂ”imaldades ohtlike vaikimisi konversioonide keelamist wxString ja "char*" tĂŒĂŒpide vahel.
- Lisatud on toetust juhtimisĆŸestide sĂŒndmustele, mida esitatakse hiire abil.
- wxFont ja wxGraphicsContext klassidesse on lisatud vĂ”imalus mÀÀrata mitteĂŒmmarguseid vÀÀrtuseid fontide suuruse ja pliiatsi laiusena.
- wxStaticBox klassis on rakendatud vÔimalus mÀÀrata akendele suvalisi silte.
- wxWebRequest API-sse on lisatud HTTPS ja HTTP/2 toetus.
- wxGrid klassi on lisatud veergude ja ridade kĂŒlmutamise tugi.
- Esitluses on uued klassid: wxActivityIndicator, wxAddRemoveCtrl, wxAppProgressIndicator, wxBitmapBundle, wxNativeWindow, wxPersistentComboBox, wxPowerResourceBlocker, wxSecretStore, wxTempFFile ja wxUILocale.
- KÔigile uutele ja mÔnele olemasolevale klassile on rakendatud uued XRC töötlejad.
- Esitluses on uued meetodid: wxDataViewToggleRenderer::ShowAsRadio(), wxDateTime::GetWeekBasedYear(), wxDisplay::GetPPI(), wxGrid::SetCornerLabelValue(), wxHtmlEasyPrinting::SetPromptMode(), wxJoystickEvent::GetButtonOrdinal(), wxListBox::GetTopItem(), wxProcess::Activate(), wxTextEntry::ForceUpper(), wxStandardPaths::GetUserDir(), wxToolbook::EnablePage(), wxUIActionSimulator::Select().
- Olulisi parandusi on tehtud klassides wxBusyInfo, wxDataViewCtrl, wxNotificationMessage, wxStaticBox, wxStyledTextCtrl ja wxUIActionSimulator.
- Parandatud on macOS platvormi tugi, sealhulgas tumeda teema kasutamise vÔimalus ja toe lisamine ARM arhitektuuri seadmetele.
- C++11 standardi toe parandusi on rakendatud. C++20 kompilaatorite toemuudatused on lisatud.
- Kohandatud on kÔik paketi kolmanda osapoole teegid. WebKit 2 ja GStreamer 1.7 tugi on lisatud.
Allikas: opennet.ru
