GTK 3.96, tukunga whakamatautau o GTK 4, i whakaputaina

10 marama i muri mai o mua tuku whakamatautau i tukuna GTK 3.96, he whakaputanga whakamatautau hou mo te putanga pumau o GTK 4. Kei te whakawhanakehia te peka GTK 4 hei waahanga o te tukanga whanaketanga hou e ngana ana ki te whakarato ki nga kaiwhakawhanake tono he API pumau me te tautoko mo etahi tau ka taea te whakamahi me te kore wehi. me tuhi ano i te tono ia ono marama na te huringa API i te peka GTK e whai ake nei. Kia tae ra ano ki te tino whakapumautanga o te GTK 4, e taunaki ana kia hanga tonu nga tono e tukuna ana ki nga kaiwhakamahi ma te whakamahi i te peka. GTK 3.24.

Main huringa i roto i te GTK 3.96:

  • I roto i te API GSK (GTK Scene Kit), e whakarato ana i nga whakaahua whakairoiro ma OpenGL me Vulkan, kua mahia nga mahi i runga i nga hapa, kua ngawari ake te tautuhi he mihi ki te taputapu patuiro hou gtk4-node-editor, e taea ai e koe te uta me te whakaatu te whakaputa node i roto i te whakatakotoranga raupapa (ka taea te tiaki i roto i te aratau tirotiro a te Kaitirotiro GTK), me te whakataurite hoki i nga hua whakaputa i te wa e whakamahi ana i nga tuara rereke;

    GTK 3.96, tukunga whakamatautau o GTK 4, i whakaputaina

  • Kua kawea mai nga kaha panoni 3D ki te taumata e taea ai e koe te hanga i nga paanga pakiwaituhi penei i te mataono hurihuri;

    GTK 3.96, tukunga whakamatautau o GTK 4, i whakaputaina

  • Katoa tuhia ano Ko te tuara o Broadway GDK i hangaia hei whakaputa i te putanga whare pukapuka GTK ki te matapihi tirotiro tukutuku. Ko te whakatinanatanga o Broadway tawhito kaore i uru ki nga tikanga whakaputa i whakaarohia i roto i te GTK 4 (hei utu mo te whakaputa ki te kaitarai, ka whakamahia e ia he tauira i runga i nga waahanga tuku, kei reira te whakaputanga i te ahua o te rakau o nga mahi taumata tiketike, he pai te tukatuka e te GPU ma te whakamahi i te OpenGL me te Vulkan).
    Ko te kōwhiringa Broadway hou ka huri i nga pona tuku ki roto i nga pona DOM me nga momo CSS mo te whakaputa i te atanga ki te tirotiro. Ka tukatukahia ia ahua mata hou hei huringa i te rakau DOM e pa ana ki te ahua o mua, e whakaiti ana i te rahi o nga raraunga ka tukuna ki te kiritaki mamao. Ko nga huringa 3D me nga paanga whakairoiro ka whakatinanahia ma te taonga whakarereke CSS;

  • Kei te whakatinana tonu a GDK i nga API i hangaia me te whakaaro o te kawa Wayland, me te horoi i nga API-a-X11 me te neke atu ranei ki tetahi tuara X11 motuhake. Kei te ahu whakamua te mahi ki te neke atu i te whakamahi i nga papa o nga tamariki me nga taunga o te ao. Kua tangohia te tautoko mo GDK_SURFACE_SUBSURFACE mai i te GDK;
  • I haere tonu te whakahou i te waehere e pa ana ki te mahi Tō-me-Maurutia, tae atu ki nga taonga GdkDrag me GdkDrop motuhake kua whakaarohia;
  • Kua whakangwarihia te whakahaere takahanga, ka whakamahia inaianei mo te whakaurunga. Ko nga takahanga e toe ana ka whakakapihia ki nga tohu motuhake, hei tauira, hei utu mo nga takahanga whakaputa, ko te tohu "GdkSurface::render" ka whakaarohia, hei utu mo nga kaupapa whirihoranga - "GdkSurface:: rahi-hurihia", hei utu mo te mapi takahanga - "GdkSurface: :mahere”, hei utu mo te gdk_event_handler_set() - "GdkSurface:: takahanga";
  • Kua taapirihia e te GDK te tuara mo Wayland te tautoko mo te atanga tomokanga mo te uru ki nga tautuhinga GtkSettings. Hei mahi me nga tikanga whakauru, kua whakaarohia te tautoko mo te toronga kawa-whakauru-kore-v3;
  • Mo te whanaketanga o nga widget, ka whakauruhia he ahanoa GtkLayoutManager hou me te whakatinanatanga o te punaha hei whakahaere i te whakatakotoranga o nga huānga i runga i te whakatakotoranga o te waahi ka kitea. Ka whakakapi a GtkLayoutManager i nga taonga tamariki i roto i nga ipu GTK penei i a GtkBox me GtkGrid. He maha nga kaiwhakahaere tahora kua rite: GtkBinLayout mo nga ipu ngawari me te huānga tamaiti kotahi, GtkBoxLayout mo nga huānga tamariki kua whakararangitia, GtkGridLayout mo te whakahāngai i nga huānga tamariki ki te matiti, GtkFixedLayout mo te tuunga noa o nga huānga tamariki, GtkCustomLayout i runga i te whakamaoritanga_whakaahua. nga kaikawe;
  • Ko nga taonga e waatea ana ki te whanui mo te whakaaturanga wharangi o nga huānga tamariki kua taapirihia ki nga widget GtkAssistant, GtkStack me GtkNotebook, ka whakawhitia ki reira nga ahuatanga tamariki kore-Tahora e pa ana ki enei widget. I te mea kua hurihia nga taonga tamariki katoa ki nga ahuatanga o ia wa, nga ahuatanga tahora, kua nekehia ranei ki nga taonga wharangi, kua tangohia katoatia te tautoko mo nga taonga tamariki mai i te GtkContainer;
  • Kua nukuhia te mahinga matua GtkEntry ki tetahi widget GtkText hou, kei roto hoki he atanga whakatika GtkEditable kua whakareia. Kua hanga ano nga karaehe urunga raraunga o mua hei whakatinanatanga GtkEditable i runga i te widget GtkText hou;
  • I taapirihia he widget GtkPasswordEntry hou mo nga puka whakauru kupuhipa;
  • Kua taapirihia e GtkWidgets te kaha ki te huri i nga huānga tamariki ma te whakamahi i nga tikanga huringa raina kua tohua ma te CSS me te tohenga gtk_widget_allocate ki GskTransform. Ko te waahanga kua tohua kua tonohia ki te widget GtkFixed;
  • Kua taapirihia nga tauira whakatipuranga rarangi hou: GtkMapListModel, GtkSliceListModel, GtkSortListModel, GtkSelectionModel me GtkSingleSelection. I te wa kei te heke mai ka whakamahere matou ki te taapiri tautoko mo nga tauira rarangi ki GtkListView;
  • Kua tāpirihia e GtkBuilder te kaha ki te tautuhi i ngā āhuatanga ahanoa i te rohe (rōraina), kaua e whakamahi hononga mā te pūtāutu;
  • He tono taapiri ki te gtk4-builder-tool ki te huri i nga konae UI mai i te GTK 3 ki te GTK 4;
  • Ko te tautoko mo nga kaupapa matua, nga tahua ripanga, me nga pouaka paheko kua whakamutua. Kua tangohia te widget GtkInvisible.

    Source: opennet.ru

Tāpiri i te kōrero