Efter 9 Är sedan lanseringen av version 3.0, presenteras den första stabila versionen av det plattformsoberoende verktyget wxWidgets 3.2.0, som möjliggör skapandet av grafiska grÀnssnitt för Linux, Windows, macOS, UNIX och mobila plattformar. JÀmfört med version 3.0 finns det flera inkompatibiliteter pÄ API-nivÄ. Verktyget Àr skrivet i C++ och distribueras under den fria wxWindows Library License, som har godkÀnts av Free Software Foundation och OSI. Licensen Àr baserad pÄ LGPL och skiljer sig genom att tillÄta anvÀndning av egna villkor för distribution av hÀrledda verk i binÀr form.
Förutom utvecklingen av program pÄ C++ erbjuder wxWidgets bindningar för de flesta populÀra programmeringssprÄk, inklusive PHP, Python, Perl och Ruby. Till skillnad frÄn andra verktygserier ger wxWidgets applikationen ett verkligt inhemskt utseende och interaktionsmetoder för det mÄloperativsystemet, tack vare anvÀndningen av system-API:er istÀllet för att efterlikna GUI.
Huvudsakliga nyheter:
- En ny experimentell port av wxQt har implementerats, vilket möjliggör anvÀndning av wxWidgets ovanpÄ Qt-ramverket.
- I porten wxGTK har fullstÀndig support för Wayland-protokollet sÀkerstÀllts.
- Stöd för skÀrmar med hög pixeltÀthet (High DPI) har lagts till. Möjligheten att tilldela olika DPI för olika skÀrmar och dynamiskt Àndra DPI har införts. En ny API wxBitmapBundle har föreslagits, vilket möjliggör manipulering av flera varianter av rasterbilder som presenteras vid olika upplösningar som en enhet.
- Ett nytt byggsystem baserat pÄ CMake har föreslagits. Byggsystemet har fÄtt stöd för nya kompilatorer (inklusive MSVS 2022, g++ 12 och clang 14) och operativsystem.
- Stödet för OpenGL har omarbetats, med förbÀttrad anvÀndning av nya versioner av OpenGL (3.2+).
- Stöd för LZMA-komprimering och ZIP 64-filer har lagts till.
- Skyddet vid kompilering har stÀrkts genom möjligheten att inaktivera farliga implicita konversioner mellan strÀngar av typerna wxString och 'char*'.
- Stöd för hÀndelser för styrande gester, som utförs med mus, har lagts till.
- I klasserna wxFont och wxGraphicsContext har möjligheten att ange icke-heltaliga vÀrden vid bestÀmning av teckensnittsstorlekar och bredden pÄ penslar lagts till.
- I klassen wxStaticBox har möjligheten att tilldela godtyckliga etiketter till fönster implementerats.
- I API:et wxWebRequest har stöd för HTTPS och HTTP/2 lagts till.
- wxGrid-klassen har fÄtt stöd för att frysa kolumner och rader.
- Nya klasser har presenterats: wxActivityIndicator, wxAddRemoveCtrl, wxAppProgressIndicator, wxBitmapBundle, wxNativeWindow, wxPersistentComboBox, wxPowerResourceBlocker, wxSecretStore, wxTempFFile och wxUILocale.
- Nya hÀndelsehanterare har implementerats för alla nya och vissa befintliga klasser i XRC.
- Nya metoder har presenterats: wxDataViewToggleRenderer::ShowAsRadio(), wxDateTime::GetWeekBasedYear(), wxDisplay::GetPPI(), wxGrid::SetCornerLabelValue(), wxHtmlEasyPrinting::SetPromptMode(), wxJoystickEvent::GetButtonOrdinal(), wxListBox::GetTopItem(), wxProcess::Activate(), wxTextEntry::ForceUpper(), wxStandardPaths::GetUserDir(), wxToolbook::EnablePage(), wxUIActionSimulator::Select().
- Betydande förbÀttringar har gjorts i klasserna wxBusyInfo, wxDataViewCtrl, wxNotificationMessage, wxStaticBox, wxStyledTextCtrl och wxUIActionSimulator.
- Stödet för macOS-plattformen har förbÀttrats, inklusive möjlighet att anvÀnda mörkt lÀge och stöd för enheter med ARM-processorer.
- FörbÀttringar relaterade till stöd för C++11-standarden har införts. Stöd för kompilatorer för C++20 har lagts till.
- Alla tredjepartsbibliotek i paketet har uppdaterats. Stöd för WebKit 2 och GStreamer 1.7 har lagts till.
KĂ€lla: opennet.ru
