Rilis toolkit grafis wxWidgets 3.2.0

9 tahun setelah rilis cabang 3.0, rilis pertama dari cabang stabil baru dari toolkit lintas platform wxWidgets 3.2.0 disajikan, yang memungkinkan Anda membuat antarmuka grafis untuk Linux, Windows, macOS, UNIX, dan platform seluler. Dibandingkan dengan cabang 3.0, ada sejumlah ketidakcocokan di tingkat API. Toolkit ini ditulis dalam C++ dan didistribusikan di bawah Lisensi Perpustakaan wxWindows gratis, disetujui oleh Open Source Foundation dan organisasi OSI. Lisensi ini didasarkan pada LGPL dan dibedakan berdasarkan izinnya untuk menggunakan ketentuannya sendiri untuk mendistribusikan karya turunan dalam bentuk biner.

Selain mengembangkan program dalam C++, wxWidgets menyediakan binding untuk sebagian besar bahasa pemrograman populer, termasuk PHP, Python, Perl, dan Ruby. Tidak seperti toolkit lainnya, wxWidgets menyediakan aplikasi dengan tampilan dan nuansa asli untuk sistem target dengan menggunakan API sistem, bukan meniru GUI.

Inovasi utama:

  • Port eksperimental baru wxQt telah diterapkan, memungkinkan wxWidgets bekerja di atas kerangka Qt.
  • Port wxGTK menyediakan dukungan penuh untuk protokol Wayland.
  • Menambahkan dukungan untuk layar dengan kerapatan piksel tinggi (DPI Tinggi). Menambahkan kemampuan untuk menetapkan DPI berbeda untuk monitor berbeda dan mengubah DPI secara dinamis. API wxBitmapBundle baru telah diusulkan, yang memungkinkan Anda memanipulasi beberapa versi gambar bitmap, yang disajikan dalam resolusi berbeda, sebagai satu kesatuan.
  • Sistem pembangunan baru berdasarkan CMake telah diusulkan. Dukungan untuk kompiler baru (termasuk MSVS 2022, g++ 12 dan clang 14) dan sistem operasi telah ditambahkan ke sistem perakitan.
  • Dukungan OpenGL telah didesain ulang, penggunaan versi OpenGL baru (3.2+) telah ditingkatkan.
  • Menambahkan dukungan untuk kompresi LZMA dan file ZIP 64.
  • Perlindungan waktu kompilasi telah ditingkatkan, berkat kemampuan untuk menonaktifkan konversi implisit yang berbahaya antara string tipe wxString dan β€œchar*”.
  • Menambahkan dukungan acara untuk gerakan kontrol yang dimainkan menggunakan mouse.
  • Kelas wxFont dan wxGraphicsContext sekarang memiliki kemampuan untuk menentukan nilai non-integer saat menentukan ukuran font dan lebar pena.
  • Kelas wxStaticBox mengimplementasikan kemampuan untuk menetapkan label sembarang ke windows.
  • API wxWebRequest sekarang mendukung HTTPS dan HTTP/2.
  • Kelas wxGrid telah menambahkan dukungan untuk membekukan kolom dan baris.
  • Kelas baru yang diperkenalkan: wxActivityIndicator, wxAddRemoveCtrl, wxAppProgressIndicator, wxBitmapBundle, wxNativeWindow, wxPersistentComboBox, wxPowerResourceBlocker, wxSecretStore, wxTempFFile dan wxUILocale.
  • Penangan XRC baru telah diterapkan untuk semua kelas baru dan beberapa kelas yang sudah ada.
  • Metode baru yang diperkenalkan: wxDataViewToggleRenderer::ShowAsRadio(), wxDateTime::GetWeekBasedYear(), wxDisplay::GetPPI(), wxGrid::SetCornerLabelValue(), wxHtmlEasyPrinting::SetPromptMode(), wxJoystickEvent::GetButtonOrdinal(), wxListBox::Get TopItem(), wxProcess::Activate(), wxTextEntry::ForceUpper(), wxStandardPaths::GetUserDir(), wxToolbook::EnablePage(), wxUIActionSimulator::Select().
  • Peningkatan signifikan telah dilakukan pada kelas wxBusyInfo, wxDataViewCtrl, wxNotificationMessage, wxStaticBox, wxStyledTextCtrl, dan wxUIActionSimulator.
  • Dukungan untuk platform macOS telah ditingkatkan, termasuk kemampuan untuk menggunakan tema gelap dan menambahkan dukungan untuk perangkat yang menjalankan prosesor ARM.
  • Perbaikan telah dilakukan untuk mendukung standar C++11. Menambahkan dukungan untuk membangun dengan kompiler C++20.
  • Semua perpustakaan pihak ketiga yang disertakan telah diperbarui. Menambahkan dukungan untuk WebKit 2 dan GStreamer 1.7.

Sumber: opennet.ru

Tambah komentar