WxWidgets 3.2.0 graafisen työkalupakin julkaisu

9 vuotta 3.0-haaran julkaisun jälkeen esiteltiin ensimmäinen versio uudesta vakaasta haarasta cross-platform toolkit wxWidgets 3.2.0, jonka avulla voit luoda graafisia käyttöliittymiä Linux-, Windows-, macOS-, UNIX- ja mobiilialustoille. Verrattuna 3.0-haaraan, API-tasolla on useita yhteensopimattomia. Työkalusarja on kirjoitettu C++-kielellä ja sitä jaetaan Open Source Foundationin ja OSI-organisaation hyväksymän ilmaisen wxWindows Library License -lisenssin alla. Lisenssi perustuu LGPL:ään ja erottuu luvalla käyttää omia ehtojaan johdannaisten teosten levittämiseen binäärimuodossa.

C++-ohjelmien kehittämisen lisäksi wxWidgets tarjoaa sidoksia suosituimpiin ohjelmointikieliin, mukaan lukien PHP, Python, Perl ja Ruby. Toisin kuin muut työkalupakkit, wxWidgets tarjoaa sovelluksen, jolla on todella natiivi ulkoasu kohdejärjestelmälle käyttämällä järjestelmän sovellusliittymiä graafisen käyttöliittymän jäljittelemisen sijaan.

Tärkeimmät innovaatiot:

  • Uusi kokeellinen wxQt-portti on otettu käyttöön, jolloin wxWidgetit voivat toimia Qt-kehyksen päällä.
  • wxGTK-portti tarjoaa täyden tuen Wayland-protokollalle.
  • Lisätty tuki näytöille, joissa on korkea pikselitiheys (High DPI). Lisätty mahdollisuus määrittää eri DPI:t eri näytöille ja muuttaa dynaamisesti DPI:tä. On ehdotettu uutta wxBitmapBundle API:ta, jonka avulla voit käsitellä bittikarttakuvan useita eri resoluutioilla esitettyjä versioita yhtenä kokonaisuutena.
  • Uutta CMake-pohjaista rakennusjärjestelmää on ehdotettu. Kokoonpanojärjestelmään on lisätty tuki uusille kääntäjille (mukaan lukien MSVS 2022, g++ 12 ja clang 14) ja käyttöjärjestelmille.
  • OpenGL-tuki on suunniteltu uudelleen, uusien OpenGL-versioiden (3.2+) käyttöä on parannettu.
  • Lisätty tuki LZMA-pakkaukselle ja ZIP 64 -tiedostoille.
  • Käännösaikasuojausta on parannettu, koska vaaralliset implisiittiset muunnokset wxString- ja "char*"-tyyppisten merkkijonojen välillä voidaan poistaa käytöstä.
  • Lisätty tapahtumatuki hiirellä toistetuille ohjauseleille.
  • wxFont- ja wxGraphicsContext-luokilla on nyt mahdollisuus määrittää ei-kokonaislukuarvoja määriteltäessä kirjasinkokoja ja kynän leveyksiä.
  • WxStaticBox-luokka toteuttaa mahdollisuuden määrittää mielivaltaisia ​​​​tunnisteita ikkunoihin.
  • wxWebRequest API tukee nyt HTTPS:ää ja HTTP/2:ta.
  • WxGrid-luokka on lisännyt tuen sarakkeiden ja rivien lukitsemiseen.
  • Uudet luokat käyttöön: wxActivityIndicator, wxAddRemoveCtrl, wxAppProgressIndicator, wxBitmapBundle, wxNativeWindow, wxPersistentComboBox, wxPowerResourceBlocker, wxSecretStore, wxTempFFile ja wxUILocale.
  • Uudet XRC-käsittelijät on otettu käyttöön kaikkiin uusiin luokkiin ja joihinkin olemassa oleviin luokkiin.
  • Uusia menetelmiä esitelty: wxDataViewToggleRenderer::ShowAsRadio(), wxDateTime::GetWeekBasedYear(), wxDisplay::GetPPI(), wxGrid::SetCornerLabelValue(), wxHtmlEasyPrinting::SetPromptXOyGet), wx ListBox::Get TopItem (), wxProcess::Activate(), wxTextEntry::ForceUpper(), wxStandardPaths::GetUserDir(), wxToolbook::EnablePage(), wxUIActionSimulator::Select().
  • Luokkiin wxBusyInfo, wxDataViewCtrl, wxNotificationMessage, wxStaticBox, wxStyledTextCtrl ja wxUIActionSimulator on tehty merkittäviä parannuksia.
  • MacOS-alustan tukea on parannettu, mukaan lukien mahdollisuus käyttää tummaa teemaa ja lisätty tuki ARM-suorittimia käyttäville laitteille.
  • C++11-standardin tukemiseksi on tehty parannuksia. Lisätty tuki rakentamiseen C++20-kääntäjillä.
  • Kaikki mukana olevat kolmannen osapuolen kirjastot on päivitetty. Lisätty tuki WebKit 2:lle ja GStreamer 1.7:lle.

Lähde: opennet.ru

Lisää kommentti