Introduce Blueprint, una nova lingua d'interfaccia d'utilizatore per GTK

James Westman, sviluppatore di l'applicazione GNOME Maps, hà introduttu una nova lingua di marcatura, Blueprint, pensata per custruisce interfacce cù a biblioteca GTK. U codice compilatore per cunvertisce u marcatu Blueprint in i schedarii GTK UI hè scrittu in Python è distribuitu sottu a licenza LGPLv3.

U mutivu di creà u prugettu hè u vinaculu di i schedarii di descrizzione di l'interfaccia UI utilizati in GTK à u formatu XML, chì hè sovraccaricatu è micca cunvene per scrive o edità markup manualmente. U furmatu Blueprint hè distinatu da a so presentazione chjara di l'infurmazioni è, grazia à a so sintassi leggibile, permette di fà senza l'usu di editori di l'interfaccia visuale specializati quandu creanu, edità è valutà cambiamenti in elementi di l'interfaccia.

À u listessu tempu, Blueprint ùn hà micca bisognu di cambiamenti à GTK, replica cumplettamente u mudellu di widget GTK è hè posizionatu cum'è un add-on chì compile markup in u formatu XML standard per GtkBuilder. A funziunalità di Blueprint hè cumplettamente coherente cù GtkBuilder, solu u metudu di prisentà l'infurmazioni difiere. Per migrà un prughjettu à Blueprint, basta aghjunghje una chjama di compilatore di blueprint à u script di creazione senza cambià u codice. usendu Gtk 4.0; template MyAppWindow : Gtk.ApplicationWindow { title: _("Tìtulu di u mo App"); [titlebar] HeaderBar header_bar {} Label { stili ["heading"] label: _("Hello, world!"); } }

Blueprint introduttu - una nova lingua per custruisce interfacce d'utilizatori per GTK

In più di u compilatore in u furmatu standard GTK XML, un plugin cù supportu Blueprint per l'ambiente di sviluppu integratu GNOME Builder hè ancu in sviluppu. Un servitore LSP separatu (Language Server Protocol) hè sviluppatu per Blueprint, chì pò esse usatu per mette in risaltu, analisi d'errore, affissà suggerimenti è cumpiimentu di codice in editori di codice chì supportanu LSP, cumpresu Visual Studio Code.

I piani di sviluppu di Blueprint includenu l'aghjunzione di elementi di prugrammazione reattiva à u marcatu, implementatu cù a classa Gtk.Expression furnita in GTK4. U metudu prupostu hè più familiar à i sviluppatori di l'interfacce web JavaScript è permette a sincronizazione automatica di a presentazione di l'interfaccia cù u mudellu di dati assuciatu, senza a necessità di aghjurnà in forza l'interfaccia d'utilizatore dopu ogni cambiamentu di dati.

Source: opennet.ru

Add a comment