diff options
Diffstat (limited to 'src')
-rwxr-xr-x | src/server/genversion.sh | 9 | ||||
-rw-r--r-- | src/server/gtk.c | 7 | ||||
-rw-r--r-- | src/server/gtklayout.ui | 41 | ||||
-rw-r--r-- | src/server/meson.build | 9 |
4 files changed, 66 insertions, 0 deletions
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 @@ <property name="use_underline">True</property> <property name="use_stock">True</property> <property name="always_show_image">True</property> + <signal name="activate" handler="gtk_widget_set_visible" object="about" swapped="yes"/> + <signal name="activate" handler="gtkui_update_version" object="about" swapped="yes"/> </object> </child> </object> @@ -277,4 +279,43 @@ </object> </child> </object> + <object class="GtkAboutDialog" id="about"> + <property name="can_focus">False</property> + <property name="resizable">False</property> + <property name="window_position">center-on-parent</property> + <property name="destroy_with_parent">True</property> + <property name="type_hint">dialog</property> + <property name="transient_for">window</property> + <property name="program_name">Coffeetemp</property> + <property name="version">1.2</property> + <property name="comments" translatable="yes">Stop scolding your tongue with hot coffee and/or tea like a pleb and start drinking it right like a patrician.</property> + <property name="website">https://seriouss.am/</property> + <property name="website_label" translatable="yes">Visit the Project Website</property> + <property name="authors">Copyright © 2018 Gediminas Jakutis</property> + <property name="logo_icon_name">gtk-about</property> + <property name="license_type">lgpl-2-1-only</property> + <signal name="delete-event" handler="gtk_widget_hide_on_delete" swapped="no"/> + <signal name="response" handler="gtk_widget_hide" swapped="no"/> + <child internal-child="vbox"> + <object class="GtkBox"> + <property name="can_focus">False</property> + <property name="orientation">vertical</property> + <property name="spacing">2</property> + <child internal-child="action_area"> + <object class="GtkButtonBox"> + <property name="can_focus">False</property> + <property name="layout_style">end</property> + </object> + <packing> + <property name="expand">False</property> + <property name="fill">False</property> + <property name="position">0</property> + </packing> + </child> + <child> + <placeholder/> + </child> + </object> + </child> + </object> </interface> 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) |