udgivelse af en tværplatforms toolkit , der gør det muligt at skabe grafiske brugerflader til Linux, Windows, macOS, UNIX og mobile platforme. wxWidgets 3.1 positioneres som en gren for udviklere, hvor nye muligheder udvikles til den næste stabile version 3.2.0. Sammenlignet med gren 3.0 er der en række API-inkompatibiliteter, og ABI's uændrethed mellem de mellemste versioner 3.1.x garanteres ikke.
Toolkit er skrevet i C++ og distribueres under en fri licens , godkendt af Free Software Foundation og OSI. Licensen er baseret på LGPL og adskiller sig ved at tillade brug af egne vilkår for distribution af afledte værker i binær form. Udover udviklingen af programmer i C/C++ tilbyder wxWidgets bindinger til de fleste populære programmeringssprog, herunder , , og . I modsætning til andre toolkits giver wxWidgets applikationen et virkelig autentisk udseende og interaktionsmetoder til det målrettede system, takket være brugen af system-API'er frem for simulering af GUI.
Hovednyhederne:
- Nyt build-system baseret på CMake. Build-systemet har fået tilføjet support til nye compilere (MSVC 2019, g++ 10) og operativsystemer (macOS 10.14 og macOS 11 for ARM);
- Ny eksperimentel wxQt-port;
- Støtten til OpenGL er blevet redesignet, og brugen af nye versioner af OpenGL (3.2+) er forbedret;
- Der er tilføjet begivenhedsstøtte til kontrolgestusser, der udføres med musen;
- I wxFont og wxGraphicsContext er muligheden for at angive ikke-heltal værdier ved angivelse af skrifttype størrelser og pensel bredde blevet tilføjet;
- I wxStaticBox er det muligt at tildele vilkårlige etiketter til vinduer;
- Støtten til skærme med høj pixel densitet (High DPI) er blevet forbedret;
- Der er tilføjet støtte til LZMA-komprimering og ZIP 64-filer;
- Nye klasser er blevet introduceret: wxActivityIndicator, wxAddRemoveCtrl,
wxAppProgressIndicator, wxNativeWindow, wxPowerResourceBlocker,
wxSecretStore og wxTempFFile; - Støtten til fastgørelse af kolonner og rækker i wxGrid er blevet tilføjet;
- Nye metoder er blevet præsenteret: wxDataViewToggleRenderer::ShowAsRadio(), wxDateTime::
GetWeekBasedYear(), wxDisplay::GetPPI(), wxGrid::SetCornerLabelValue(),
wxHtmlEasyPrinting::SetPromptMode(), wxJoystickEvent::GetButtonOrdinal(),
wxListBox::GetTopItem(), wxProcess::Activate(), wxTextEntry::ForceUpper(), wxStandardPaths::GetUserDir(),
wxToolbook::EnablePage(), wxUIActionSimulator::Select(); - Der er blevet foretaget betydelige forbedringer i klasserne wxBusyInfo, wxDataViewCtrl,
wxNotificationMessage, wxStaticBox, wxStyledTextCtrl og wxUIActionSimulator; - Sikkerheden er forbedret under kompilering ved at muliggøre deaktivering af farlige implicitte konverteringer mellem strenge med typerne wxString og «char*».
- Alle medfølgende tredjepartsbiblioteker er blevet opdateret. Støtte til WebKit 2 og GStreamer 1.7 er tilføjet.
- Forbedringer relateret til understøttelse af C++11-standarden er blevet implementeret. Understøttelse af kompilatorbygning med C++20 er tilføjet.
- Et stort antal rettelser er lavet i wxGTK3 og wxOSX/Cocoa-portene.
Kilde: opennet.ru
