Keluaran kit alat grafik wxWidgets 3.2.0

9 tahun selepas keluaran cawangan 3.0, keluaran pertama cawangan stabil baharu kit alat merentas platform wxWidgets 3.2.0 telah dibentangkan, yang membolehkan anda mencipta antara muka grafik untuk Linux, Windows, macOS, UNIX dan platform mudah alih. Berbanding dengan cawangan 3.0, terdapat beberapa ketidakserasian di peringkat API. Kit alat ini ditulis dalam C++ dan diedarkan di bawah Lesen Perpustakaan wxWindows percuma, yang diluluskan oleh Yayasan Perisian Percuma dan organisasi OSI. Lesen adalah berdasarkan LGPL dan dibezakan dengan kebenarannya untuk menggunakan istilahnya sendiri untuk mengedarkan karya terbitan dalam bentuk binari.

Selain membangunkan atur cara dalam C++, wxWidgets menyediakan pengikatan untuk kebanyakan bahasa pengaturcaraan popular, termasuk PHP, Python, Perl dan Ruby. Tidak seperti toolkit lain, wxWidgets menyediakan aplikasi dengan rupa dan rasa asli untuk sistem sasaran dengan menggunakan API sistem dan bukannya meniru GUI.

Inovasi utama:

  • Port percubaan baharu wxQt telah dilaksanakan, membenarkan wxWidgets berfungsi di atas rangka kerja Qt.
  • Port wxGTK menyediakan sokongan penuh untuk protokol Wayland.
  • Menambah sokongan untuk skrin dengan ketumpatan piksel tinggi (DPI Tinggi). Menambah keupayaan untuk menetapkan DPI yang berbeza untuk monitor yang berbeza dan menukar DPI secara dinamik. API wxBitmapBundle baharu telah dicadangkan, yang membolehkan anda memanipulasi beberapa versi imej peta bit, dibentangkan dalam resolusi berbeza, secara keseluruhan.
  • Sistem binaan baharu berdasarkan CMake telah dicadangkan. Sokongan untuk penyusun baharu (termasuk MSVS 2022, g++ 12 dan clang 14) dan sistem pengendalian telah ditambahkan pada sistem pemasangan.
  • Sokongan OpenGL telah direka bentuk semula, penggunaan versi OpenGL baharu (3.2+) telah dipertingkatkan.
  • Menambah sokongan untuk pemampatan LZMA dan fail ZIP 64.
  • Perlindungan masa kompilasi telah dipertingkatkan, berkat keupayaan untuk melumpuhkan penukaran tersirat yang berbahaya antara rentetan jenis wxString dan "char*".
  • Menambahkan sokongan acara untuk gerak isyarat kawalan yang dimainkan menggunakan tetikus.
  • Kelas wxFont dan wxGraphicsContext kini mempunyai keupayaan untuk menentukan nilai bukan integer semasa menentukan saiz fon dan lebar pen.
  • Kelas wxStaticBox melaksanakan keupayaan untuk memberikan label sewenang-wenangnya kepada tingkap.
  • API wxWebRequest kini menyokong HTTPS dan HTTP/2.
  • Kelas wxGrid telah menambah sokongan untuk membekukan lajur dan baris.
  • Kelas baharu diperkenalkan: wxActivityIndicator, wxAddRemoveCtrl, wxAppProgressIndicator, wxBitmapBundle, wxNativeWindow, wxPersistentComboBox, wxPowerResourceBlocker, wxSecretStore, wxTempUIFFile dan w.
  • Pengendali XRC baharu telah dilaksanakan untuk semua kelas baharu dan beberapa kelas sedia ada.
  • Kaedah baharu yang diperkenalkan: wxDataViewToggleRenderer::ShowAsRadio(), wxDateTime::GetWeekBasedYear(), wxDisplay::GetPPI(), wxGrid::SetCornerLabelValue(), wxHtmlEasyPrinting:(SetPromptEasyPrinting:(SetPromptEasyPrinting):(SetPromptEasyMode) wxListBox::Dapatkan TopItem (), wxProcess::Activate(), wxTextEntry::ForceUpper(), wxStandardPaths::GetUserDir(), wxToolbook::EnablePage(), wxUIActionSimulator::Select().
  • Penambahbaikan ketara telah dibuat pada kelas wxBusyInfo, wxDataViewCtrl, wxNotificationMessage, wxStaticBox, wxStyledTextCtrl dan wxUIActionSimulator.
  • Sokongan untuk platform macOS telah dipertingkatkan, termasuk keupayaan untuk menggunakan tema gelap dan sokongan tambahan untuk peranti yang menjalankan pemproses ARM.
  • Penambahbaikan telah dibuat untuk menyokong standard C++11. Menambah sokongan untuk membina dengan pengkompil C++20.
  • Semua perpustakaan pihak ketiga yang disertakan telah dikemas kini. Menambah sokongan untuk WebKit 2 dan GStreamer 1.7.

Sumber: opennet.ru

Tambah komen