From 397f225fa83d82367455ae0e95d0b60c45d88ef7 Mon Sep 17 00:00:00 2001 From: Nikolay Brovko Date: Fri, 24 Jan 2020 15:56:58 +0300 Subject: [PATCH] use resources instead of direct ui-file loading --- data/meson.build | 4 ++++ data/org.yggtk.yggtk.gresource.xml | 6 ++++++ main.ui => data/ui/main.ui | 0 main.vala | 2 +- meson.build | 9 ++++++++- 5 files changed, 19 insertions(+), 2 deletions(-) create mode 100644 data/meson.build create mode 100644 data/org.yggtk.yggtk.gresource.xml rename main.ui => data/ui/main.ui (100%) diff --git a/data/meson.build b/data/meson.build new file mode 100644 index 0000000..d60cca7 --- /dev/null +++ b/data/meson.build @@ -0,0 +1,4 @@ +yggtk_resources = gnome.compile_resources( + 'yggtk-resources', + 'org.yggtk.yggtk.gresource.xml' +) diff --git a/data/org.yggtk.yggtk.gresource.xml b/data/org.yggtk.yggtk.gresource.xml new file mode 100644 index 0000000..34f0cf2 --- /dev/null +++ b/data/org.yggtk.yggtk.gresource.xml @@ -0,0 +1,6 @@ + + + + ui/main.ui + + diff --git a/main.ui b/data/ui/main.ui similarity index 100% rename from main.ui rename to data/ui/main.ui diff --git a/main.vala b/main.vala index e16fe30..6d8a939 100644 --- a/main.vala +++ b/main.vala @@ -22,7 +22,7 @@ int main (string[] args) { try { var builder = new Builder (); - builder.add_from_file ("main.ui"); + builder.add_from_resource ("/org/yggtk/yggtk/ui/main.ui"); builder.connect_signals (null); var window = builder.get_object ("window") as Window; var browse = builder.get_object ("browse") as Button; diff --git a/meson.build b/meson.build index 3bb0adf..d2d4918 100644 --- a/meson.build +++ b/meson.build @@ -5,14 +5,21 @@ project( ) pkg = import('pkgconfig') +gnome = import('gnome') + +subdir('data') yggtk = executable( meson.project_name(), [ 'main.vala', - ], + ] + yggtk_resources, dependencies: [ dependency('gtk+-3.0'), dependency('json-glib-1.0'), + ], + vala_args: [ + '--gresources', + join_paths(meson.source_root(), 'data', 'org.yggtk.yggtk.gresource.xml'), ] )