GTK の新しいユーザー インターフェイス言語である Blueprint を導入しました

GNOME Maps アプリケーションの開発者である James Westman は、GTK ライブラリを使用してインターフェイスを構築するために設計された新しいマークアップ言語 Blueprint を導入しました。 ブループリント マークアップを GTK UI ファイルに変換するコンパイラ コードは Python で記述され、LGPLv3 ライセンスに基づいて配布されます。

プロジェクトを作成する理由は、GTK で使用される UI インターフェイス記述ファイルを XML 形式にバインドするためです。これはオーバーロードされており、マークアップを手動で作成または編集するには不便です。 ブループリント形式は、情報の明確な表現が特徴であり、その読みやすい構文のおかげで、インターフェイス要素の変更を作成、編集、評価する際に、専用のビジュアル インターフェイス エディタを使用せずに作業を行うことができます。

同時に、Blueprint は GTK への変更を必要とせず、GTK ウィジェット モデルを完全に複製し、マークアップを GtkBuilder の標準 XML 形式にコンパイルするアドオンとして位置付けられます。 ブループリントの機能は GtkBuilder と完全に一致していますが、情報の表示方法のみが異なります。 プロジェクトをブループリントに移行するには、コードを変更せずに、ビルド スクリプトにブループリント コンパイラー呼び出しを追加するだけです。 Gtk 4.0を使用。 テンプレート MyAppWindow : Gtk.ApplicationWindow { title: _("私のアプリのタイトル"); [タイトルバー] HeaderBar header_bar {} ラベル { スタイル ["見出し"] ラベル: _("Hello, world!"); } }

ブループリントの導入 - GTK のユーザー インターフェイスを構築するための新しい言語

標準 GTK XML 形式へのコンパイラーに加えて、GNOME Builder 統合開発環境用のブループリントをサポートするプラグインも開発中です。 ブループリント用に別の LSP サーバー (言語サーバー プロトコル) が開発されています。これは、Visual Studio Code などの LSP をサポートするコード エディターでの強調表示、エラー分析、ヒントの表示、およびコード補完に使用できます。

ブループリントの開発計画には、GTK4 で提供される Gtk.Expression クラスを使用して実装されるリアクティブ プログラミング要素のマークアップへの追加が含まれます。 提案された方法は、JavaScript Web インターフェイスの開発者にとってより馴染みのあるもので、データが変更されるたびにユーザー インターフェイスを強制的に更新する必要がなく、インターフェイスのプレゼンテーションと関連するデータ モデルの自動同期が可能になります。

出所: オープンネット.ru

コメントを追加します