تتوفر مجموعة أدوات الرسومات GTK 4.6

بعد أربعة أشهر من التطوير، تم نشر إصدار مجموعة أدوات متعددة المنصات لإنشاء واجهة مستخدم رسومية - GTK 4.6.0. يتم تطوير GTK 4 كجزء من عملية تطوير جديدة تحاول تزويد مطوري التطبيقات بواجهة برمجة تطبيقات مستقرة ومدعومة لعدة سنوات يمكن استخدامها دون الخوف من الاضطرار إلى إعادة كتابة التطبيقات كل ستة أشهر بسبب تغييرات واجهة برمجة التطبيقات في GTK التالية فرع.

تتضمن بعض أبرز التحسينات في GTK 4.6 ما يلي:

  • تمت إزالة محرك العرض القديم المستند إلى OpenGL، واستبداله بمحرك عرض NGL الجديد، والذي تم توفيره افتراضيًا منذ GTK 4.2، والذي يوفر أداءً أفضل. تمت إعادة تسمية NGL إلى GL. تمت إعادة كتابة كود تحميل النسيج، وتم تحسين دعم تنسيقات الصور ومساحات الألوان.
  • تمت إعادة صياغة التعليمات البرمجية المرتبطة بحساب أحجام العناصر وتخطيط عناصر واجهة المستخدم بشكل كبير. في السابق، كانت خصائص GtkWidget::halign وGtkWidget::valign تعتمد على حجم عنصر واجهة المستخدم الافتراضي عند وضع العناصر، والذي، عند تحديد حجم واحد فقط في وضع ملء المساحة، قد يؤدي إلى شغل العنصر لمساحة إضافية. يقدم GTK 4.6 القدرة على قياس الحجم المفقود بالنسبة لبعضها البعض (على سبيل المثال، إذا تم تحديد عرض، يمكن أن يأخذ الموضع في الاعتبار الارتفاع المتاح)، مما يسمح للأدوات بأن تكون أرق دون أن تشغل مساحة غير ضرورية.
    تتوفر مجموعة أدوات الرسومات GTK 4.6
    تتوفر مجموعة أدوات الرسومات GTK 4.6
  • تتمتع أداة GtkBox بالقدرة على حساب الحجم الفردي للعناصر الفرعية. في حين تم توزيع المساحة سابقًا بالتساوي بين عناصر واجهة المستخدم الفرعية بناءً على حجمها الافتراضي، فإن GTK 4.6 يأخذ الآن الحجم الفعلي للأطفال في الاعتبار عند الإخراج.
  • تتضمن أداة GtkLabel دعمًا لالتفاف النص على عدد عشوائي من الأسطر، مما يسمح لك بإنشاء تسميات ضيقة تشغل المساحة الرأسية المتاحة.
  • أضافت فئة GtkWindow القدرة على ضبط الحد الأدنى للحجم إلى نسبة العرض إلى الارتفاع، مما يسمح لك بتغيير حجم النافذة بشكل تعسفي دون الخوف من أن تكون صغيرة جدًا. تمت إضافة خاصية "Window.titlebar".
  • تمت إضافة تحذير جديد بشأن عدم تطابق الحجم إذا قامت الأداة بإرجاع حجم غير صحيح. Gtk-CRITICAL **: 00:48:33.319: gtk_widget_measure: فشل التأكيد "for_size >= الحد الأدنى للحجم المقابل": 23 >= 42
  • يدعم عنصر واجهة المستخدم GtkTextView الآن علامات التبويب المحاذاة إلى اليمين أو المحاذاة إلى المنتصف. تمت إضافة دعم لتحويل النص واعتبارات ارتفاع الخط. تحسين التمرير إلى عملية التسمية المحددة. تحسين التعامل مع التراجع عن التغييرات. تم حل المشكلات عند لصق النص من الحافظة واختيار مكان عرض واجهة لصق الرموز التعبيرية.
  • توفر أداة GtkMenuButton القدرة على تحديد العناصر الفرعية الخاصة بها.
  • تم تسريع الترجمة المسبقة للقالب في GtkBuilder.
  • تمت إضافة إشارة التنشيط لتنشيط أدوات GtkComboBox وGtkDropDown.
  • تمت إضافة خاصية show-arrow إلى عنصر واجهة المستخدم GtkDropDown للتحكم في ما إذا كان سيتم عرض السهم أم لا.
    تتوفر مجموعة أدوات الرسومات GTK 4.6
  • تمت إضافة سمة علامة الاستخدام إلى GtkPopoverMenu لاستخدام علامة Pango في نص القائمة.
  • يدعم نظام الأنماط خصائص CSS Font-variant-caps لعرض الأحرف الكبيرة الصغيرة وتحويل النص لتحويل النص.
  • تمت إضافة واجهة GtkSymbolicPaintable للتحكم في لون أيقونات الرموز.
  • تمت إضافة دعم لتتبع عمليات السحب والإفلات إلى واجهة الفحص، وتم عرض وحدة الإدخال الحالية، وتمت إضافة عارض محتوى الحافظة، وتم تنفيذ رسم بياني لتصور gtk_widget_measure()، والقدرة على تسجيل الأحداث تم اعطائها. تمت إضافة دعم لوضع السحب والإفلات إلى الأداة المساعدة لمحرر عقدة gtk4.
  • بالنسبة إلى Wayland، تم تنفيذ إعداد لتنشيط وضع التباين العالي. تمت إضافة دعم لبروتوكول wl_seat v7.
  • تمت إضافة إعداد gtk-hint-font-metrics لجعل عرض النص أقرب إلى سلوك GTK3.
  • بالنسبة للأنظمة المستندة إلى X11، تم إضافة دعم لإيماءات التحكم بلوحة اللمس (عند استخدام XInput 2.4) وتحسين سلوك سحب عنوان النافذة.
  • قامت مكتبة GDK، التي توفر طبقة بين GTK والنظام الفرعي للرسومات، بتحسين عملية التحقق من إصدارات OpenGL وOpenGL ES. تمت إضافة دعم لمساحة الألوان HSL. عند تحميل الأنسجة ومعالجة تنسيقات الصور، تشارك المكتبات libpng وlibjpeg وlibtiff بشكل مباشر. تم نقل رمز تهيئة EGL إلى الجانب الأمامي. تمت إضافة واجهات برمجة التطبيقات الجديدة: gdk_texture_new_from_bytes، وgdk_texture_new_from_filename، وgdk_texture_download_float، وgdk_texture_save_to_png_bytes، وgdk_texture_save_to_tiff، وgdk_texture_save_to_tiff_bytes، وgdk_display_create_gl_context.
  • تمت إعادة تسمية الفرع "الرئيسي" في مستودع Git إلى "الرئيسي".

المصدر: opennet.ru

إضافة تعليق