Vrystelling van wxWidgets 3.2.0 grafiese gereedskapstel

9 jaar na die vrystelling van die 3.0-tak is die eerste vrystelling van 'n nuwe stabiele tak van die kruisplatform-gereedskapstel wxWidgets 3.2.0 aangebied, wat jou toelaat om grafiese koppelvlakke vir Linux, Windows, macOS, UNIX en mobiele platforms te skep. In vergelyking met die 3.0-tak, is daar 'n aantal onverenigbaarhede op die API-vlak. Die gereedskapstel is in C++ geskryf en word versprei onder die gratis wxWindows-biblioteeklisensie, goedgekeur deur die Open Source Foundation en die OSI-organisasie. Die lisensie is gebaseer op die LGPL en word gekenmerk deur sy toestemming om sy eie terme te gebruik om afgeleide werke in binêre vorm te versprei.

Benewens die ontwikkeling van programme in C++, bied wxWidgets bindings vir die gewildste programmeertale, insluitend PHP, Python, Perl en Ruby. Anders as ander gereedskapstelle, bied wxWidgets 'n toepassing met 'n werklik inheemse voorkoms en gevoel vir die teikenstelsel deur stelsel-API's te gebruik eerder as om die GUI na te boots.

Belangrikste innovasies:

  • 'n Nuwe eksperimentele poort van wxQt is geïmplementeer, waardeur wxWidgets bo-op die Qt-raamwerk kan werk.
  • Die wxGTK-poort bied volledige ondersteuning vir die Wayland-protokol.
  • Bygevoeg ondersteuning vir skerms met hoë pixeldigtheid (hoë DPI). Bygevoeg die vermoë om verskillende DPI's vir verskillende monitors toe te wys en DPI dinamies te verander. 'n Nuwe wxBitmapBundle API is voorgestel, wat jou toelaat om verskeie weergawes van 'n bitmap-beeld, wat in verskillende resolusies aangebied word, as een geheel te manipuleer.
  • 'n Nuwe boustelsel gebaseer op CMake is voorgestel. Ondersteuning vir nuwe samestellers (insluitend MSVS 2022, g++ 12 en clang 14) en bedryfstelsels is by die samestellingstelsel gevoeg.
  • OpenGL-ondersteuning is herontwerp, die gebruik van nuwe OpenGL-weergawes (3.2+) is verbeter.
  • Bygevoeg ondersteuning vir LZMA-kompressie en ZIP 64-lêers.
  • Samestellingtydbeskerming is verbeter, danksy die vermoë om gevaarlike implisiete omskakelings tussen stringe van die wxString- en "char*"-tipes uit te skakel.
  • Bygevoeg gebeurtenisondersteuning vir beheergebare wat met die muis gespeel word.
  • Die wxFont- en wxGraphicsContext-klasse het nou die vermoë om nie-heelgetalwaardes te spesifiseer wanneer lettergroottes en penwydtes gedefinieer word.
  • Die wxStaticBox-klas implementeer die vermoë om arbitrêre etikette aan vensters toe te ken.
  • Die wxWebRequest API ondersteun nou HTTPS en HTTP/2.
  • Die wxGrid-klas het ondersteuning bygevoeg vir die vries van kolomme en rye.
  • Nuwe klasse bekendgestel: wxActivityIndicator, wxAddRemoveCtrl, wxAppProgressIndicator, wxBitmapBundle, wxNativeWindow, wxPersistentComboBox, wxPowerResourceBlocker, wxSecretStore, wxTempFFile en wxUILocale.
  • Nuwe XRC-hanteerders is geïmplementeer vir alle nuwe klasse en sommige bestaande klasse.
  • Nuwe metodes wat bekendgestel is: wxDataViewToggleRenderer::ShowAsRadio(), wxDateTime::GetWeekBasedYear(), wxDisplay::GetPPI(), wxGrid::SetCornerLabelValue(), wxHtmlEasyPrinting::SetPrompt:Button(GetPrompt:Button), wxL : GetTop Item (), wxProcess::Activate(), wxTextEntry::ForceUpper(), wxStandardPaths::GetUserDir(), wxToolbook::EnablePage(), wxUIActionSimulator::Select().
  • Beduidende verbeterings is aangebring aan die wxBusyInfo-, wxDataViewCtrl-, wxNotificationMessage-, wxStaticBox-, wxStyledTextCtrl- en wxUIActionSimulator-klasse.
  • Ondersteuning vir die macOS-platform is verbeter, insluitend die vermoë om 'n donker tema te gebruik en bykomende ondersteuning vir toestelle wat ARM-verwerkers gebruik.
  • Verbeterings is aangebring om die C++11-standaard te ondersteun. Bygevoeg ondersteuning vir samestelling deur C++20 samestellers.
  • Alle ingesluit derdeparty-biblioteke is opgedateer. Bygevoeg ondersteuning vir WebKit 2 en GStreamer 1.7.

Bron: opennet.ru

Voeg 'n opmerking