可用的 GTK 4.6 圖形工具包

經過四個月的開發,用於創建圖形使用者介面的多平台工具包已經發布——GTK 4.6.0。 GTK 4 正在作為新開發流程的一部分進行開發,該流程試圖為應用程式開發人員提供穩定且受支援的API,可以使用多年,而不必擔心由於下一個GTK 中的API 更改而必須每六個月重寫一次應用程式分支。

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 中新增了 use-markup 屬性,以在選單文字中使用 Pango 標記。
  • 樣式系統支援用於顯示小寫大寫字母的 CSS 屬性 font-variant-caps 和用於轉換文字的 text-transform 屬性。
  • 新增了 GtkSymbolicPaintable 介面來控制符號圖示的顏色。
  • 檢查介面中新增了對追蹤拖放操作的支持,顯示了當前輸入模組,新增了剪貼簿內容檢視器,實現了用於視覺化 gtk_widget_measure() 的圖形,並能夠記錄事件已提供。 在 gtk4-node-editor 實用程式中新增了對拖放模式的支援。
  • 對於 Wayland,已實施一項設定來啟動高對比模式。 新增了對 wl_seat v7 協定的支援。
  • 新增了 gtk-hint-font-metrics 設定以使文字渲染更接近 GTK3 行為。
  • 對於基於 X11 的系統,新增了對觸控板控製手勢的支援(使用 XInput 2.4 時)並改進了視窗標題拖曳行為。
  • GDK 函式庫在 GTK 和圖形子系統之間提供了一個層,改進了對 OpenGL 和 OpenGL ES 版本的檢查。 新增了對 HSL 色彩空間的支援。 載入紋理和處理影像格式時,直接涉及libpng、libjpeg和libtiff庫。 EGL 初始化程式碼已移至前端。 新增了新的 API: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_b_text_swate_piff_pper_pop_texture_saveconk_text。
  • Git 儲存庫中的「master」分支已重新命名為「main」。

來源: opennet.ru

添加評論