Altı aylık geliştirme sürecinin ardından, grafiksel kullanıcı arayüzü oluşturmaya yönelik çok platformlu bir araç kitinin piyasaya sürülmesi yayınlandı - GTK 4.10.0. GTK 4, uygulama geliştiricilerine birkaç yıl boyunca, bir sonraki GTK'daki API değişiklikleri nedeniyle uygulamaları her altı ayda bir yeniden yazmak zorunda kalma korkusu olmadan kullanılabilecek istikrarlı ve desteklenen bir API sağlamaya çalışan yeni bir geliştirme sürecinin parçası olarak geliştiriliyor. dal.
GTK 4.10'daki en dikkate değer iyileştirmelerden bazıları şunlardır:
- Uygulamalardaki dosyaları seçmek için açılan bir iletişim kutusu uygulayan GtkFileChooserWidget widget'ı, dizin içeriklerini bir simgeler ağı biçiminde sunmaya yönelik bir mod uygular. Varsayılan olarak, dosya listesi şeklindeki klasik görünüm kullanılmaya devam ediyor ve panelin sağ tarafında simge moduna geçmek için ayrı bir düğme belirdi. simgeler:

- Renkleri, yazı tiplerini ve dosyaları seçmeye ve uyarıları görüntülemeye yönelik iletişim kutularının uygulanmasıyla yeni GtkColorDialog, GtkFontDialog, GtkFileDialog ve GtkAlertDialog sınıfları eklendi. Yeni seçenekler, eşzamansız modda (GIO eşzamansız) çalışan daha bütünsel ve dengeli bir API'ye geçişle öne çıkıyor. Yeni diyaloglarda, mümkün olduğunda ve mevcut olduğunda, yalıtılmış uygulamalardan kullanıcı ortamının kaynaklarına erişimi düzenlemek için kullanılan Freedesktop portalları (xdg-desktop-portal) kullanılır.
- Yazdırma iletişim kutularında kullanım için standart işleyiciler sağlayan yeni bir CPDB (Ortak Yazdırma İletişim Kutusu Arka Uç) eklendi. Daha önce kullanılan lpr yazdırma arka ucu kullanımdan kaldırıldı.
- GTK ile grafik alt sistemi arasında bir katman sağlayan GDK kütüphanesi, GdkTexture sınıfındaki dokuları yüklemek için kullanılan ve çeşitli formatları dönüştürmek için kullanılabilen GdkTextureDownloader yapısını sunmaktadır. OpenGL kullanılarak geliştirilmiş doku ölçeklendirme.
- OpenGL ve Vulkan aracılığıyla grafik sahneleri oluşturma yeteneği sağlayan GSK kütüphanesi (GTK Scene Kit), maskeli düğümleri ve ölçeklenebilir dokuların özel filtrelenmesini destekler.
- Wayland protokol uzantılarının yeni sürümleri için destek uygulandı. “xdg-aktivasyon” protokolünü kullanırken başlatma bildirimlerinin çıktısı ayarlandı. Yüksek piksel yoğunluklu ekranlarda imleç boyutuyla ilgili sorunlar çözüldü.
- GtkMountOperation sınıfı, X11 dışı ortamlarda çalışacak şekilde uyarlanmıştır.
- GTK kitaplığı çıktısını bir web tarayıcı penceresinde görüntülemenize olanak tanıyan Broadway arka ucu, kalıcı pencereler için destek ekledi.
- GtkFileLauncher sınıfı, gtk_show_uri'nin yerini alacak yeni bir eşzamansız API sunar.
- gtk-builder-tool yardımcı programı şablon işlemeyi geliştirdi.
- GtkSearchEntry widget'ı, alan boş olduğunda ve giriş odağı olmadığında gösterilen dolgu metni için destek ekledi.
- Belirli bir URI'yi görüntülemek için başlatılan uygulamayı belirlemek veya işleyici yoksa hata atmak için kullanılan, gtk_show_uri işlevinin yerine geçen GtkUriLauncher sınıfı eklendi.
- GtkStringSorter sınıfı, çeşitli "harmanlama" yöntemleri için destek ekleyerek karakterlerin anlamına göre (örneğin, bir aksan işareti olduğunda) eşleştirme ve sıralama yapmanıza olanak tanır.
- Gelecekteki GTK5 şubesinde desteklenmemesine karar verilen ve eşzamansız modda çalışan analoglarla değiştirilen API'lerin ve widget'ların büyük bir kısmı kullanımdan kaldırıldı:
- GtkDialog (GtkWindow'u kullanmalıdır).
- GtkTreeView (GtkListView ve GtkColumnView kullanılmalıdır) .
- GtkIconView (GtkGridView kullanılmalıdır).
- GtkComboBox (GtkDropDown kullanılmalıdır).
- GtkAppChooser (GtkDropDown kullanılmalıdır).
- GtkMessageDialog (GtkAlertDialog kullanılmalıdır).
- GtkColorChooser (GtkColorDialog ve GtkColorDialogButton kullanılmalıdır).
- GtkFontChooser (GtkFontDialog ve GtkFontDialogButton kullanılmalıdır).
- GtkFileChooser (GtkFileDialog kullanmalıdır).
- GtkInfoBar
- GtkEntryCompletion
- GtkStyleContext
- GtkVolumeButton
- GtkDurum Çubuğu
- GtkAsistanı
- GtkKilit Düğmesi
- gtk_widget_show/hide
- gtk_show_uri
- gtk_render_ ve gtk_snapshot_render_
- gtk_gesture_set_sequence_state
- GtkAccessible arayüzü, engelli kişiler için arayüz öğelerinin üçüncü taraf işleyicilerini bağlamanıza olanak tanıyan genel kategoriye aktarılmıştır. GtkAccessibleRange arayüzü eklendi.
- Platformda macOS Fare ile öğeleri sürükleyip bırakma (DND, Sürükle ve Bırak) özelliği desteklenmektedir.
- Platformda Windows Sistem ayarlarıyla entegrasyonu iyileştirildi.
- Hata ayıklama çıktı formatı birleştirildi.
- JPEG resim yükleyicisinin hafıza sınırı 1 GB'ye yükseltildi.
Kaynak: opennet.ru

