Kynnt Blueprint, nýtt notendaviðmótstungumál fyrir GTK

James Westman, þróunaraðili GNOME Maps forritsins, kynnti nýtt merkimál, Blueprint, hannað til að byggja upp viðmót með því að nota GTK bókasafnið. Þjálfarakóðinn til að breyta Blueprint merkingu í GTK UI skrár er skrifaður í Python og dreift undir LGPLv3 leyfinu.

Ástæðan fyrir því að búa til verkefnið er binding UI viðmótslýsingarskrár sem notaðar eru í GTK við XML sniðið, sem er of mikið og ekki þægilegt til að skrifa eða breyta merkingu handvirkt. Teikningasniðið einkennist af skýrri framsetningu upplýsinga og, þökk sé læsilegri setningafræði, gerir það mögulegt að gera það án þess að nota sérhæfða sjónviðmótsritstjóra þegar búið er til, breyta og meta breytingar á viðmótsþáttum.

Á sama tíma þarf Blueprint ekki breytingar á GTK, endurtekur algjörlega GTK græjulíkanið og er staðsett sem viðbót sem safnar saman álagningu í staðlað XML snið fyrir GtkBuilder. Virkni Blueprint er í fullu samræmi við GtkBuilder, aðeins aðferðin við að kynna upplýsingar er mismunandi. Til að flytja verkefni yfir í Blueprint skaltu bara bæta við blueprint-compiler kalli við smíðahandritið án þess að breyta kóðanum. með Gtk 4.0; sniðmát MyAppWindow : Gtk.ApplicationWindow { title: _("App Titill minn"); [titlebar] HeaderBar header_bar {} Label { styles ["heading"] merki: _("Halló, heimur!"); } }

Teikning kynnt - nýtt tungumál til að byggja upp notendaviðmót fyrir GTK

Til viðbótar við þýðandann í staðlaða GTK XML sniðinu, er viðbót með Blueprint stuðningi fyrir GNOME Builder samþætt þróunarumhverfi einnig í þróun. Verið er að þróa sérstakan LSP þjón (Language Server Protocol) fyrir Blueprint, sem hægt er að nota til að auðkenna, villugreiningu, sýna vísbendingar og klára kóða í kóðaritum sem styðja LSP, þar á meðal Visual Studio Code.

Þróunaráætlanir teikningar fela í sér að viðbrögðum forritunarþáttum er bætt við merkið, útfært með því að nota Gtk.Expression flokkinn sem fylgir GTK4. Fyrirhuguð aðferð er þekktari fyrir þróunaraðila JavaScript vefviðmóta og gerir ráð fyrir sjálfvirkri samstillingu viðmótskynningarinnar við tilheyrandi gagnalíkan, án þess að þurfa að uppfæra notendaviðmótið af krafti eftir hverja gagnabreytingu.

Heimild: opennet.ru

Bæta við athugasemd