wxWidgets 3.2.0 grafik araç setinin piyasaya sürülmesi

9 şubesinin piyasaya sürülmesinden 3.0 yıl sonra, Linux, Windows, macOS, UNIX ve mobil platformlar için grafik arayüzler oluşturmanıza olanak tanıyan çapraz platform araç seti wxWidgets 3.2.0'ın yeni kararlı şubesinin ilk sürümü sunuldu. 3.0 şubesiyle karşılaştırıldığında API düzeyinde bir takım uyumsuzluklar var. Araç seti C++ dilinde yazılmıştır ve Açık Kaynak Vakfı ve OSI kuruluşu tarafından onaylanan ücretsiz wxWindows Kütüphane Lisansı altında dağıtılmaktadır. Lisans, LGPL'yi temel alır ve türev çalışmaları ikili biçimde dağıtmak için kendi koşullarını kullanma izniyle diğerlerinden ayrılır.

wxWidgets, C++ dilinde programlar geliştirmenin yanı sıra PHP, Python, Perl ve Ruby dahil olmak üzere en popüler programlama dilleri için bağlamalar sağlar. Diğer araç takımlarından farklı olarak wxWidgets, GUI'yi taklit etmek yerine sistem API'lerini kullanarak hedef sistem için gerçekten yerel bir görünüm ve his sağlayan bir uygulama sağlar.

Ana yenilikler:

  • wxWidgets'ın Qt çerçevesi üzerinde çalışmasına olanak tanıyan yeni bir deneysel wxQt bağlantı noktası uygulandı.
  • wxGTK bağlantı noktası Wayland protokolü için tam destek sağlar.
  • Yüksek piksel yoğunluğuna (Yüksek DPI) sahip ekranlar için destek eklendi. Farklı monitörler için farklı DPI'lar atama ve DPI'yı dinamik olarak değiştirme yeteneği eklendi. Farklı çözünürlüklerde sunulan bir bitmap görüntüsünün çeşitli versiyonlarını bir bütün olarak değiştirmenize olanak tanıyan yeni bir wxBitmapBundle API'si önerildi.
  • CMake'e dayalı yeni bir yapı sistemi önerildi. Montaj sistemine yeni derleyiciler (MSVS 2022, g++ 12 ve clang 14 dahil) ve işletim sistemleri desteği eklendi.
  • OpenGL desteği yeniden tasarlandı, yeni OpenGL sürümlerinin (3.2+) kullanımı iyileştirildi.
  • LZMA sıkıştırma ve ZIP 64 dosyaları için destek eklendi.
  • wxString ve "char*" türlerinin dizeleri arasındaki tehlikeli örtülü dönüşümleri devre dışı bırakma yeteneği sayesinde derleme zamanı koruması geliştirildi.
  • Fare kullanılarak oynanan kontrol hareketleri için olay desteği eklendi.
  • wxFont ve wxGraphicsContext sınıfları artık yazı tipi boyutlarını ve kalem genişliklerini tanımlarken tam sayı olmayan değerleri belirtme yeteneğine sahip.
  • wxStaticBox sınıfı, pencerelere rastgele etiketler atama yeteneğini uygular.
  • wxWebRequest API artık HTTPS ve HTTP/2'yi desteklemektedir.
  • wxGrid sınıfı, sütunları ve satırları dondurmak için destek ekledi.
  • Yeni sınıflar tanıtıldı: wxActivityIndicator, wxAddRemoveCtrl, wxAppProgressIndicator, wxBitmapBundle, wxNativeWindow, wxPersistentComboBox, wxPowerResourceBlocker, wxSecretStore, wxTempFFile ve wxUILocale.
  • Tüm yeni sınıflar ve bazı mevcut sınıflar için yeni XRC işleyicileri uygulandı.
  • Yeni yöntemler tanıtıldı: 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().
  • wxBusyInfo, wxDataViewCtrl, wxNotificationMessage, wxStaticBox, wxStyledTextCtrl ve wxUIActionSimulator sınıflarında önemli iyileştirmeler yapıldı.
  • Karanlık bir tema kullanma yeteneği ve ARM işlemcileri çalıştıran cihazlar için eklenen destek de dahil olmak üzere macOS platformu desteği iyileştirildi.
  • C++11 standardını desteklemek için iyileştirmeler yapıldı. C++20 derleyicileriyle derleme desteği eklendi.
  • Dahil edilen tüm üçüncü taraf kitaplıkları güncellendi. WebKit 2 ve GStreamer 1.7 için destek eklendi.

Kaynak: opennet.ru

Yorum ekle