GTK 3.96, mwepụta nnwale nke GTK 4, ebipụtara

Ọnwa 10 gachara nke gara aga nnwale ntọhapụ ọkọnọ GTK 3.96, Ntọhapụ nnwale ọhụrụ nke ntọhapụ kwụsiri ike nke na-abịanụ nke GTK 4. A na-emepụta alaka GTK 4 dị ka akụkụ nke usoro mmepe ọhụrụ nke na-anwa inye ndị na-emepụta ngwa ngwa API kwụsiri ike ma kwadoo ruo ọtụtụ afọ nke enwere ike iji na-enweghị egwu. nke inwe idegharị ngwa ahụ kwa ọnwa isii n'ihi mgbanwe API na ngalaba GTK na-esote. Ruo mgbe GTK 4 ga-emeziwanye nke ọma, a na-atụ aro ka a na-eji alaka ụlọ ọrụ na-ewu ngwa enyere ndị ọrụ GTK 3.24.

Main gbanwee na GTK 3.96:

  • Na API GSK (GTK Scene Kit), nke na-enye nsụgharị nke eserese eserese site na OpenGL na Vulkan, emela ọrụ na njehie, nke dị mfe ịchọpụta ekele maka ngwa nbibi ọhụrụ gtk4-node-editor, nke na-enye gị ohere ibu ma gosipụta ya. inye ọnụ n'ụdị usoro (enwere ike ịchekwa na ọnọdụ nyocha GTK onye nleba anya), ma tụlekwa nsonaazụ nsonaazụ mgbe ị na-eji azụ azụ dị iche iche;

    GTK 3.96, mwepụta nnwale nke GTK 4, ebipụtara

  • Emeela ikike mgbanwe 3D na ọkwa nke na-enye gị ohere ịmepụta mmetụta animation dị ka cube na-atụgharị;

    GTK 3.96, mwepụta nnwale nke GTK 4, ebipụtara

  • Ezigbo edegharịrị Broadway GDK backend emebere iji wepụta mmepụta ọba akwụkwọ GTK na windo ihe nchọgharị weebụ. Mmejuputa Broadway ochie adabaghị n'ime usoro ntụgharị a tụrụ aro na GTK 4 (kama mmepụta na ihe nchekwa, ọ na-ejizi ihe nlere dabere na nodes na-enye, ebe mmepụta na-esite n'ụdị osisi nke arụmọrụ dị elu, GPU na-ahazi nke ọma site na iji OpenGL na Vulkan).
    Nhọrọ Broadway ọhụrụ a na-atụgharị ọnụ ka ọ bụrụ ọnụ DOM nwere ụdị CSS maka ịmegharị interface na ihe nchọgharị ahụ. A na-ahazi steeti ihuenyo ọhụrụ ọ bụla dị ka mgbanwe na osisi DOM n'ihe metụtara steeti gara aga, nke na-ebelata nha data a na-ebufe na onye ahịa dịpụrụ adịpụ. A na-eme mgbanwe mgbanwe 3D na mmetụta eserese site na ihe mgbanwe CSS;

  • GDK na-aga n'ihu na-emejuputa API ndị e jiri ụkpụrụ Wayland n'uche, na-ehichapụ API ndị dabeere na X11 ma ọ bụ bugharịa ha na azụ azụ X11 dị iche. Enwere ọganihu na ọrụ ahụ iji pụọ na iji ebe ụmụaka na-emekọ ihe na nhazi ụwa. E wepụrụ nkwado maka GDK_SURFACE_SUBSURFACE na GDK;
  • Mweghachi nke koodu jikọtara na ịrụ ọrụ ịdọrọ-na-dobe gara n'ihu, gụnyere ihe GdkDrag na GdkDrop dị iche a tụrụ aro;
  • A na-eme ka njikwa mmemme dị mfe ma ejiri ya naanị maka ntinye. A na-eji akara ngosi dị iche iche dochie ihe ndị ọzọ fọdụrụnụ, dịka ọmụmaatụ, kama ịmepụta ihe omume, a na-atụ aro akara "GdkSurface :: render", kama nhazi ihe omume - "GdkSurface :: size-gbanwere", kama ịme ihe omume - "GdkSurface: : mapped", kama gdk_event_handler_set () - "GdkSurface :: omume";
  • GDK backend maka Wayland agbakwunyela nkwado maka oghere ọnụ ụzọ maka ịnweta ntọala GtkSettings. Iji na-arụ ọrụ na ụzọ ntinye, nkwado maka ederede-input-unstable-v3 protocol ndọtị ka atụpụtala;
  • Maka mmepe nke wijetị, a na-ebute ihe ọhụrụ GtkLayoutManager na mmejuputa usoro maka ịchịkwa nhazi nke ihe na-adabere na nhazi nke ebe a na-ahụ anya. GtkLayoutManager na-edochi ihe ụmụaka n'ime akpa GTK dị ka GtkBox na GtkGrid. A na-atụ aro ọtụtụ ndị njikwa okirikiri nhọrọ ukwuu: GtkBinLayout maka arịa dị mfe nwere otu mmewere ụmụaka, GtkBoxLayout maka ihe ụmụaka jikọtara ọnụ, GtkGridLayout maka ịhazi ihe ụmụaka na grid, GtkFixedLayout maka ịtọ ntọala n'enweghị ihe mgbochi nke ihe ụmụaka, GtkCustom maka ịtụgharị ihe ọdịnala, GtkCustom ndị na-elekọta;
  • Agbakwunyela ihe ndị a na-enweta n'ihu ọha maka ngosipụta ihu akwụkwọ nke ihe ụmụaka na GtkAssistant, GtkStack na GtkNotebook wijetị, nke a na-ebufe akụrụngwa ụmụaka ndị a na-abụghị nhazi. Ebe ọ bụ na agbanweela ihe ụmụaka niile dị ugbu a ka ọ bụrụ akụrụngwa oge niile, akụrụngwa okirikiri nhọrọ ukwuu, ma ọ bụ bugharịa na ihe ibe, nkwado maka akụrụngwa ụmụaka ewepụla kpamkpam na GtkContainer;
  • Atụgharịla isi ọrụ GtkEntry na wijetị GtkText ọhụrụ, nke gụnyekwara ihe nrụzigharị GtkEditable emelitere. Emezigharịrị obere ọkwa ntinye data niile dị ka mmejuputa GtkEditable dabere na wijetị GtkText ọhụrụ;
  • agbakwunyere wijetị GtkPasswordEntry ọhụrụ maka ụdị ntinye okwuntughe;
  • GtkWidgets agbakwunyela ikike ịgbanwe ihe ụmụaka site na iji usoro mgbanwe akara akọwapụtara site na CSS ma ọ bụ arụmụka gtk_widget_allocate na GskTransform. etinyerelarị njirimara akọwapụtara na wijetị GtkFixed;
  • Ụdị usoro ọgbọ ọhụrụ agbakwunyere: GtkMapListModel, GtkSliceListModel, GtkSortListModel, GtkSelectionModel na GtkSingleSelection. N'ọdịnihu anyị na-eme atụmatụ ịgbakwunye nkwado maka ụdị ndepụta na GtkListView;
  • GtkBuilder agbakwunyela ikike ịtọ ihe onwunwe na mpaghara (inline), kama iji njikọ site na njirimara;
  • Iwu agbakwunyere na gtk4-builder-tool iji tọghata faịlụ UI site na GTK 3 gaa na GTK 4;
  • Akwụsịla nkwado maka isiokwu isi, menus tabular na igbe ngwakọta. Ewepụla ngwaọrụ GtkInvisible.

    isi: opennet.ru

Tinye a comment