GTK 3.96، د GTK 4 تجربوي خپرونه، خپره شوه

10 میاشتې وروسته د تیر وخت د ازموینې خوشې کول وړاندې شوی GTK 3.96، د GTK 4 د راتلونکي مستحکم خوشې کولو نوې تجربه لرونکې خپرونه. د GTK 4 څانګه د نوي پراختیا پروسې برخې په توګه رامینځته کیږي چې هڅه کوي د غوښتنلیک پراختیا کونکو ته د څو کلونو لپاره مستحکم او ملاتړ شوي API چمتو کړي چې پرته له ویرې کارول کیدی شي. په راتلونکي GTK څانګه کې د API بدلولو له امله په هرو شپږو میاشتو کې غوښتنلیک بیا لیکلو ته اړتیا لري. تر هغه چې GTK 4 په بشپړ ډول ثبات نه وي، دا سپارښتنه کیږي چې کاروونکو ته وړاندیز شوي غوښتنلیکونه د څانګې په کارولو سره جوړ شي. GTK 3.24.

اصلي بدل کړئ په GTK 3.96 کې:

  • په API کې GSK (GTK Scene Kit)، کوم چې د OpenGL او Vulkan له لارې د ګرافیک صحنو رینډینګ چمتو کوي، په غلطیو کار شوی، کوم چې د نوي ډیبګ کولو وسیلې gtk4-node-editor څخه مننه پیژندل اسانه شوي، کوم چې تاسو ته اجازه درکوي پورته او ښکاره کړئ. د رینډرینګ نوډ په سیریل شوي شکل کې (د تفتیش حالت GTK انسپکټر کې خوندي کیدی شي) ، او همدارنګه د رینډرینګ پایلې پرتله کړئ کله چې مختلف بیکینډونه کاروئ؛

    GTK 3.96، د GTK 4 تجربوي خپرونه، خپره شوه

  • د 3D بدلون وړتیاوې یوې کچې ته راوړل شوي چې تاسو ته اجازه درکوي د حرکت اغیزې رامینځته کړئ لکه د څرخیدونکي کیوب؛

    GTK 3.96، د GTK 4 تجربوي خپرونه، خپره شوه

  • په بشپړ ډول بیا لیکل شوی د براډوی GDK بیکینډ د ویب براوزر کړکۍ کې د GTK کتابتون محصول وړاندې کولو لپاره ډیزاین شوی. د زاړه براډوی پلي کول په GTK 4 کې وړاندیز شوي رینډینګ میتودونو کې مناسب نه و (د بفر ته د محصول پرځای ، دا اوس د رینډر نوډونو پراساس ماډل کاروي ، چیرې چې محصول د لوړې کچې عملیاتو د ونې په شکل کې جوړ شوی ، د OpenGL او Vulkan په کارولو سره د GPU لخوا په مؤثره توګه پروسس شوی).
    د براډوی نوی اختیار په براوزر کې د انٹرفیس وړاندې کولو لپاره د CSS سټایلونو سره رینډر نوډونه DOM نوډونو ته بدلوي. د سکرین هر نوی حالت د تیر حالت په پرتله د DOM ونې کې د بدلون په توګه پروسس کیږي، کوم چې د لیرې پیرودونکي ته لیږدول شوي ډاټا اندازه کموي. د 3D بدلونونه او ګرافیک اغیزې د CSS لیږد ملکیت له لارې پلي کیږي؛

  • GDK د ویلینډ پروتوکول سره په ذهن کې ډیزاین شوي APIs پلي کولو ته دوام ورکوي ، او د X11-based APIs پاکوي یا یې جلا X11 پس منظر ته لیږدوي. په کار کې پرمختګ شتون لري ترڅو د ماشومانو د سطحو او نړیوالو همغږۍ څخه کار واخیستل شي. د GDK_SURFACE_SUBSURFACE لپاره ملاتړ له GDK څخه لرې شوی؛
  • د ډریګ او ډراپ عملیاتو ترسره کولو پورې اړوند د کوډ بیاکتنه دوام لري ، په شمول د وړاندیز شوي جلا GdkDrag او GdkDrop توکي؛
  • د پیښو اداره کول ساده شوي او اوس یوازې د ننوتلو لپاره کارول کیږي. پاتې پیښې د جلا سیګنالونو سره ځای په ځای شوي ، د مثال په توګه ، د محصول پیښو پرځای ، سیګنال "GdkSurface::render" وړاندیز شوی ، د ترتیب کولو پیښو پرځای - "GdkSurface::size-changed" ، د پیښو نقشه کولو پرځای - "GdkSurface: :mapped"، پرځای د gdk_event_handler_set() - "GdkSurface::event"؛
  • د وایلینډ لپاره د GDK بیکینډ د GtkSettings ترتیباتو ته لاسرسي لپاره د پورټل انٹرفیس لپاره ملاتړ اضافه کړی. د ان پټ میتودونو سره کار کولو لپاره، د متن-انپوټ-غیر مستحکم-v3 پروتوکول توسیع لپاره ملاتړ وړاندیز شوی؛
  • د ویجټونو د پراختیا لپاره، د GtkLayoutManager نوی څیز د یو سیسټم پلي کولو سره معرفي کیږي چې د لید ساحې ترتیب پورې اړه لري د عناصرو ترتیب کنټرول لپاره. GtkLayoutManager د ماشومانو ملکیتونه په GTK کانټینرونو کې بدلوي لکه GtkBox او GtkGrid. څو چمتو شوي ترتیب مدیران وړاندیز شوي دي: د ساده کانټینرونو لپاره GtkBinLayout د یو ماشوم عنصر سره، GtkBoxLayout د ماشوم عناصرو لپاره په خطي توګه ترتیب شوي، GtkGridLayout د ماشومانو عناصر په گرډ کې تنظیم کولو لپاره، GtkFixedLayout د ماشومانو عناصرو د خپلمنځي موقعیت لپاره GtkFixedLayout، د دودیزو عناصرو لپاره د GtkFixedLayout د اندازې پر بنسټ د لیږدونې عناصرو لپاره. سمبالونکي
  • په GtkAssistant، GtkStack او GtkNotebook ویجټونو کې د ماشومانو د عناصرو د مخ ښودلو لپاره په عامه توګه د لاسرسي وړ شیان اضافه شوي، کوم چې د دې ویجټونو غیر ترتیب پورې اړوند ماشوم ملکیتونه لیږدول کیږي. له هغه وخته چې د ماشوم ټول موجود ملکیتونه په منظم ملکیتونو، ترتیب ملکیتونو کې بدل شوي، یا د پاڼې څیزونو ته لیږدول شوي، د ماشومانو د ملکیتونو ملاتړ په بشپړه توګه د GtkContainer څخه لیرې شوی؛
  • د اصلي GtkEntry فعالیت نوي GtkText ویجټ ته لیږدول شوی، کوم چې د GtkEditable د ترمیم وړ انټرفیس هم شامل دی. د ټولو موجوده ډیټا ان پټ فرعي کلاسونه د نوي GtkText ویجټ پراساس د GtkEditable تطبیقاتو په توګه بیا جوړ شوي؛
  • د پټنوم د ننوتلو فورمو لپاره نوی GtkPasswordEntry ویجټ اضافه شوی؛
  • GtkWidgets د CSS یا gtk_widget_allocate دلیل GskTransform ته د خطي بدلون میتودونو په کارولو سره د ماشومانو عناصرو بدلولو وړتیا اضافه کړې. مشخص شوی خصوصیت لا دمخه په GtkFixed ویجټ کې پلي شوی؛
  • د نوي لیست نسل ماډلونه اضافه شوي: GtkMapListModel، GtkSliceListModel، GtkSortListModel، GtkSelectionModel او GtkSingleSelection. په راتلونکي کې موږ پلان لرو چې GtkListView ته د لیست ماډلونو لپاره ملاتړ اضافه کړو؛
  • GtkBuilder د پیژندونکي لخوا د لینکونو کارولو پرځای په ځایی ډول (انلاین) د اعتراض ملکیتونو تنظیم کولو وړتیا اضافه کړې؛
  • د GTK 4 څخه GTK 3 ته د UI فایلونو بدلولو لپاره gtk4-builder-tool ته کمانډ اضافه شوی؛
  • د کلیدي موضوعاتو، جدول مینو، او کمبو بکسونو لپاره ملاتړ بند شوی دی. د GtkInvisible ویجیټ لرې شوی.

    سرچینه: opennet.ru

Add a comment