From 47c365998c84f59d522d8ee1fb9c73864f5fd91a Mon Sep 17 00:00:00 2001 From: Gediminas Jakutis Date: Sat, 19 May 2018 14:06:57 +0300 Subject: server: add an "about" dialog. --- VERSION | 1 + meson.build | 4 +++- src/server/genversion.sh | 9 +++++++++ src/server/gtk.c | 7 +++++++ src/server/gtklayout.ui | 41 +++++++++++++++++++++++++++++++++++++++++ src/server/meson.build | 9 +++++++++ 6 files changed, 70 insertions(+), 1 deletion(-) create mode 100644 VERSION create mode 100755 src/server/genversion.sh diff --git a/VERSION b/VERSION new file mode 100644 index 0000000..9459d4b --- /dev/null +++ b/VERSION @@ -0,0 +1 @@ +1.1 diff --git a/meson.build b/meson.build index cbef6cb..9d9a954 100644 --- a/meson.build +++ b/meson.build @@ -9,6 +9,8 @@ deps += dependency('ncurses') progname = 'coffeetemp' resource_dir = join_paths(get_option('datadir'), progname) +version_fallback = files('VERSION') + subdir('src') inc = include_directories('include') @@ -18,5 +20,5 @@ resource_dir_arg = 'DATA_DIR=' + '"' + join_paths(get_option('prefix'), resource add_project_arguments('-D', resource_dir_arg, language : 'c') add_project_link_arguments('-rdynamic', language : 'c') -destktop_application = executable(progname, sources, include_directories : inc, gui_app : true, install : true, dependencies : deps, extra_files : extra) +destktop_application = executable(progname, sources, version, include_directories : inc, gui_app : true, install : true, dependencies : deps, extra_files : extra) install_data(extra, install_dir : resource_dir) diff --git a/src/server/genversion.sh b/src/server/genversion.sh new file mode 100755 index 0000000..c4de2cd --- /dev/null +++ b/src/server/genversion.sh @@ -0,0 +1,9 @@ +#!/bin/sh + +versionstring=`git describe 2>/dev/null` + +if [[ -z $versionstring ]]; then + versionstring=`cat $1` +fi + +echo "const char * const version = \"$versionstring\";" > $2 diff --git a/src/server/gtk.c b/src/server/gtk.c index f48d1d9..0606270 100644 --- a/src/server/gtk.c +++ b/src/server/gtk.c @@ -323,3 +323,10 @@ void gtkui_dialog_done(int status) gtk_widget_set_sensitive(GTK_WIDGET(gtkui_flash.dialog_ok), 1); gtk_label_set_markup(GTK_LABEL(gtkui_flash.dialog_text), msg); } + +void gtkui_update_version(void *about) +{ + extern const char * const version; + + gtk_about_dialog_set_version(GTK_ABOUT_DIALOG(about), version); +} diff --git a/src/server/gtklayout.ui b/src/server/gtklayout.ui index e6d3f5a..bd62dc8 100644 --- a/src/server/gtklayout.ui +++ b/src/server/gtklayout.ui @@ -137,6 +137,8 @@ True True True + + @@ -277,4 +279,43 @@ + + False + False + center-on-parent + True + dialog + window + Coffeetemp + 1.2 + Stop scolding your tongue with hot coffee and/or tea like a pleb and start drinking it right like a patrician. + https://seriouss.am/ + Visit the Project Website + Copyright © 2018 Gediminas Jakutis + gtk-about + lgpl-2-1-only + + + + + False + vertical + 2 + + + False + end + + + False + False + 0 + + + + + + + + diff --git a/src/server/meson.build b/src/server/meson.build index 2b7af61..83335dc 100644 --- a/src/server/meson.build +++ b/src/server/meson.build @@ -17,5 +17,14 @@ dp_extra_filenames = [ 'gtklayout_flash.ui', ] +dp_version_filename = 'version.c' + +version_script = files('genversion.sh') + +version = custom_target('version', + input : version_fallback, + output : dp_version_filename, + command : [version_script, '@INPUT@', '@OUTPUT@']) + dp_sources = files(dp_filenames) dp_extra = files(dp_extra_filenames) -- cgit v1.2.3