GTK üçün yeni istifadəçi interfeysi dili olan Blueprint təqdim edildi

GNOME Maps proqramının tərtibatçısı Ceyms Vestman GTK kitabxanasından istifadə edərək interfeyslərin qurulması üçün yeni işarələmə dilini, Blueprint-i təqdim etdi. Blueprint işarələməsini GTK ui fayllarına çevirmək üçün tərtibçi kodu Python-da yazılmışdır və LGPLv3 lisenziyası altında paylanmışdır.

Layihənin yaradılmasının səbəbi GTK-da istifadə olunan interfeys təsvirinin ui-fayllarının həddindən artıq yüklənmiş və işarələməni əl ilə yazmaq və ya redaktə etmək üçün əlverişli olmayan XML formatına bağlanmasıdır. Blueprint formatı məlumatın vizual təqdimatı ilə seçilir və oxunaqlı sintaksisi sayəsində interfeys elementlərində dəyişikliklərin yaradılması, redaktəsi və qiymətləndirilməsi zamanı xüsusi vizual interfeys redaktorlarından istifadə etmədən bunu etməyə imkan verir.

Eyni zamanda, Blueprint GTK-da heç bir dəyişiklik tələb etmir, o, GTK vidcet modelini tamamilə təkrarlayır və işarələməni GtkBuilder üçün standart XML formatında tərtib edən əlavə kimi yerləşdirilib. Blueprint-in funksionallığı GtkBuilder ilə tamamilə eynidir, yalnız məlumatın təqdim olunma üsulu fərqlidir. Layihəni Blueprint-ə tərcümə etmək üçün kodu dəyişdirmədən tərtib skriptinə sadəcə olaraq plan tərtibatçısına zəng əlavə edin. GTK 4.0 istifadə edərək; şablon MyAppWindow : Gtk.ApplicationWindow { başlıq: _("Mənim Proqram Başlığım"); [başlıq çubuğu] HeaderBar header_bar {} Label { styles ["heading"] label: _("Salam, dünya!"); } }

GTK üçün yeni istifadəçi interfeysi dili olan Blueprint təqdim edildi

Standart GTK XML formatına uyğun tərtibçi ilə yanaşı, GNOME Builder inteqrasiya olunmuş inkişaf mühiti üçün Blueprint dəstəyi ilə plagin də hazırlanmaqdadır. Blueprint üçün ayrıca LSP (Dil Server Protokolu) serveri hazırlanır ki, bu serverdən LSP-ni, o cümlədən Visual Studio Kodunu dəstəkləyən kod redaktorlarında işıqlandırma, səhv təhlili, işarə və kodu tamamlamaq üçün istifadə edilə bilər.

Blueprint-in inkişaf planlarına GTK4-də təqdim olunan Gtk.Expression sinfindən istifadə etməklə həyata keçirilən işarələməyə reaktiv proqramlaşdırma elementlərinin əlavə edilməsi daxildir. Təklif olunan metod JavaScript veb-interfeysi tərtibatçılarına daha tanışdır və hər bir məlumat dəyişikliyindən sonra istifadəçi interfeysi yeniləməsini məcbur etmədən interfeys görünüşünün əlaqəli məlumat modeli ilə avtomatik sinxronlaşdırılmasına nail olmağa imkan verir.

Mənbə: opennet.ru

Добавить комментарий