Нашри GTK 3.99.0 ба анҷом расидани функсияҳои ба нақша гирифташуда барои GTK 4 ишора кард

нашр шудааст барориши таҷрибавии ниҳоии чаҳорчӯба GTK 3.99.0, ки тамоми хусусиятҳои ба нақша гирифташударо барои GTK 4 амалӣ мекунад. Филиали GTK 4 ҳамчун як қисми раванди нави рушд таҳия карда мешавад, ки кӯшиш мекунад таҳиягарони барномаро бо API-и устувор ва дастгирӣшаванда дар тӯли чанд сол таъмин кунад, ки онро бидуни тарси маҷбурӣ истифода бурдан мумкин аст. барномаҳоро ҳар шаш моҳ аз нав нависед, зеро барои тағирёбии API дар филиали навбатии GTK. Ба нақша гирифта шудааст, ки GTK 4 то охири сол бароварда шавад.

Аз ҳама назаррас тағйирот в GTK 4 шумо метавонед қайд кунед:

  • Усули ҷойгиркунии элементҳо дар асоси маҳдудиятҳо (тарҳбандии маҳдудият), ки дар он ҷойгиршавӣ ва андозаи унсурҳои кӯдак дар асоси масофа то сарҳадҳо ва андозаи дигар элементҳо муайян карда мешавад.
  • Рендерер дар асоси API графикии Vulkan, ки шейдерҳоро барои бисёре аз унсурҳои пуршиддати CSS, ки дар виджетҳои GTK истифода мешаванд, амалӣ мекунад.
  • Интегратсия ГКК (GTK Scene Kit) бо қобилияти намоиш додани саҳнаҳои графикӣ тавассути OpenGL ва Vulkan.
  • Ташкили намоиш аз нав дида баромада шуд - ба ҷои баромад ба буфер, ҳоло модели ба гиреҳҳои рендерӣ асосёфта истифода мешавад, ки дар он натиҷа дар шакли дарахти амалиётҳои сатҳи баланд ҷойгир карда шудааст, ки аз ҷониби GPU бо истифодаи OpenGL самаранок коркард карда мешавад. ва Вулкан.
  • Маблағҳо барои коркарди фасеҳи тағйироти фокуси вуруд.
  • Модели модернизатсияшудаи интиқоли рӯйдодҳо, ки эҳтиёҷоти зерравзанаро ҳангоми масири рӯйдодҳои воридотӣ аз байн мебарад. Зарурати татбиќи модели нав бо истифодаи фаъолтари эффектњои аниматсия алоќаманд аст, ки намоиши он бояд бидуни таѓйир додани сохтори элементњои намоён ва мувофиќан бидуни зерравзанаи суратгирї сурат гирад.
  • API GDK бо назардошти истифодаи протоколи Wayland ва консепсияҳои марбута аз нав тарҳрезӣ шудааст. Хусусиятҳои дар асоси X11 ва Wayland ба кӯчонида шуданд пуштибони алоҳида.
  • Тозакунии асосии API, аз ҷумла нест кардани синфҳои GtkMenu, GtkMenuBar ва GtkToolbar ба манфиати GMenu ва имконоти бар асоси менюҳои поповор анҷом дода шуд.
  • GtkTextView ва дигар виджетҳои вурудӣ дорои стеки дарунсохташудаи бекоркунӣ мебошанд.
  • Синфи нави GtkNative барои виджетҳо илова карда шуд, ки сатҳи намоишии худро доранд ва метавонанд дар сатҳи аввал, бидуни пайвастшавӣ ба виджетҳои волидайн кор кунанд.
  • Виҷетҳои нав илова карда шуданд, аз ҷумла GtkPicture, GtkText, GtkPasswordEntry, GtkListView, GtkGridView, GtkColumnView ва виҷети намоиши Emoji.
  • Барои таҳияи виджетҳо объекти нави GtkLayoutManager бо татбиқи системаи идоракунии тарҳбандии элементҳо вобаста ба андозаи майдони намоён ҷорӣ карда мешавад. GtkLayoutManager хосиятҳои кӯдакро дар контейнерҳои GTK ба монанди GtkBox ва GtkGrid иваз мекунад.
  • Коркарди рӯйдодҳо содда карда шудааст ва ҳоло танҳо барои вуруд истифода мешавад. Ҳодисаҳои боқимонда бо сигналҳои алоҳида иваз карда мешаванд, масалан, ба ҷои ҳодисаҳои баромад, сигнали "GdkSurface::render" ва ба ҷои ҳодисаҳои конфигуратсия "GdkSurface:: size-changed" пешниҳод карда мешавад.
  • Қабати нави абстраксияи GdkPaintable илова карда шуд, ки объектҳоеро ифода мекунад, ки онҳоро дар ҳама ҷо дар ҳама андоза бидуни зарурати ҷудо кардани қабатҳои тарҳрезӣ кашидан мумкин аст.
  • Бозгашти Broadway аз нав навишта шудааст, то ки баромади китобхонаи GTK дар равзанаи браузери веб намоиш дода шавад.
  • API-и марбут ба иҷрои амалиёти кашолакунӣ, аз ҷумла объектҳои алоҳидаи пешниҳодшудаи GdkDrag ва GdkDrop аз нав тарҳрезӣ шудааст.

Такмилҳо дар муқоиса бо версияи қаблии санҷишӣ:

  • Татбиқи кӯҳнаи API Accessibility барои одамони дорои маълулият хориҷ карда шуд ва бо версияи нав дар асоси мушаххасот иваз карда шуд ARIA ва виҷети GtkAccessible.
  • Дастгирии иловашуда барои тамғакоғазҳои таҳриршаванда (GtkEditableLabel).
  • Моделҳои нави рӯйхат барои намоиши хатчӯбҳо (GtkBookmarkList), сатрҳо (GtkStringList) ва блокҳои интихобӣ (GtkBitset) пешниҳод шудаанд.
  • Виҷети GtkTreeView қобилияти таҳрир кардани чашмакҳоро дорад.
  • Татбиқи ҳаракат дар GtkGridView ва GtkListView такмил дода шуд, дастгирии ҳаракати худкор ва васеъкунии худкор илова карда шуд.
  • GtkWidget коркарди амалҳои гуногунро ба таври назаррас суръат мебахшад.
  • Дастгирии иловашуда барои паймоиш ва филтркунии афзоянда ба GtkFilterListModel ва GtkSortListModel.
  • Инспектор дастгирии санҷиши моделҳои рӯйхат ва қобилияти паймоиши мустақим байни объектҳоро илова кардааст.
  • Дар GDK, таърихи паймоиш захира карда шуд, API GdkDevice тоза карда шуд ва ҷудошавии дастгоҳҳо ба усто ва ғулом қатъ карда шуд.
  • Барои macOS пуштибонии нави GDK илова карда шуд.
  • Бозгашти нави GDK дар асоси Кунҷ, байниқабатҳо барои тарҷума кардани зангҳои OpenGL ES ба OpenGL, Direct3D 9/11, Desktop GL ва Vulkan.

Манбаъ: opennet.ru

Илова Эзоҳ