Udgivelse af wxWidgets 3.2.0 grafiske værktøjssæt

9 år efter udgivelsen af ​​3.0-grenen blev den første udgivelse af en ny stabil gren af ​​cross-platform-værktøjssættet wxWidgets 3.2.0 præsenteret, som giver dig mulighed for at skabe grafiske grænseflader til Linux, Windows, macOS, UNIX og mobile platforme. Sammenlignet med 3.0-grenen er der en række inkompatibiliteter på API-niveau. Værktøjssættet er skrevet i C++ og distribueres under den gratis wxWindows Library License, godkendt af Open Source Foundation og OSI-organisationen. Licensen er baseret på LGPL og er kendetegnet ved sin tilladelse til at bruge sine egne vilkår til at distribuere afledte værker i binær form.

Udover at udvikle programmer i C++, leverer wxWidgets bindinger til de fleste populære programmeringssprog, inklusive PHP, Python, Perl og Ruby. I modsætning til andre værktøjssæt giver wxWidgets en applikation med et virkelig indbygget udseende og fornemmelse for målsystemet ved at bruge system-API'er i stedet for at efterligne GUI'en.

Vigtigste innovationer:

  • En ny eksperimentel port af wxQt er blevet implementeret, hvilket gør det muligt for wxWidgets at arbejde oven på Qt-rammen.
  • WxGTK-porten giver fuld understøttelse af Wayland-protokollen.
  • Tilføjet understøttelse af skærme med høj pixeltæthed (High DPI). Tilføjet muligheden for at tildele forskellige DPI'er til forskellige skærme og dynamisk ændre DPI. En ny wxBitmapBundle API er blevet foreslået, som giver dig mulighed for at manipulere flere versioner af et bitmapbillede, præsenteret i forskellige opløsninger, som en helhed.
  • Et nyt byggesystem baseret på CMake er blevet foreslået. Understøttelse af nye compilere (inklusive MSVS 2022, g++ 12 og clang 14) og operativsystemer er blevet tilføjet til montagesystemet.
  • OpenGL-understøttelse er blevet omdesignet, brugen af ​​nye OpenGL-versioner (3.2+) er blevet forbedret.
  • Tilføjet understøttelse af LZMA-komprimering og ZIP 64-filer.
  • Kompileringstidsbeskyttelsen er blevet forbedret, takket være evnen til at deaktivere farlige implicitte konverteringer mellem strenge af typen wxString og "char*".
  • Tilføjet begivenhedsunderstøttelse til kontrolbevægelser afspillet med musen.
  • Klasserne wxFont og wxGraphicsContext har nu mulighed for at angive ikke-heltalsværdier, når de definerer skriftstørrelser og pennebredder.
  • Klassen wxStaticBox implementerer evnen til at tildele vilkårlige etiketter til vinduer.
  • wxWebRequest API'et understøtter nu HTTPS og HTTP/2.
  • WxGrid-klassen har tilføjet understøttelse af frysning af kolonner og rækker.
  • Nye klasser introduceret: wxActivityIndicator, wxAddRemoveCtrl, wxAppProgressIndicator, wxBitmapBundle, wxNativeWindow, wxPersistentComboBox, wxPowerResourceBlocker, wxSecretStore, wxTempFFile og wxUILocale.
  • Nye XRC-handlere er blevet implementeret for alle nye klasser og nogle eksisterende klasser.
  • Nye metoder introduceret: wxDataViewToggleRenderer::ShowAsRadio(), wxDateTime::GetWeekBasedYear(), wxDisplay::GetPPI(), wxGrid::SetCornerLabelValue(), wxHtmlEasyPrinting::SetPrompt:Joystick(GentPrint), wxHtmlEasyPrinting::SetPrompt:Joystick(GX), wL ox::Få TopItem (), wxProcess::Activate(), wxTextEntry::ForceUpper(), wxStandardPaths::GetUserDir(), wxToolbook::EnablePage(), wxUIActionSimulator::Select().
  • Der er foretaget væsentlige forbedringer af klasserne wxBusyInfo, wxDataViewCtrl, wxNotificationMessage, wxStaticBox, wxStyledTextCtrl og wxUIActionSimulator.
  • Understøttelse af macOS-platformen er blevet forbedret, herunder muligheden for at bruge et mørkt tema og tilføjet understøttelse af enheder, der kører ARM-processorer.
  • Der er foretaget forbedringer for at understøtte C++11-standarden. Tilføjet støtte til bygning med C++20-kompilere.
  • Alle inkluderede tredjepartsbiblioteker er blevet opdateret. Tilføjet support til WebKit 2 og GStreamer 1.7.

Kilde: opennet.ru

Tilføj en kommentar