Display git revision in about dialog.

This commit is contained in:
Florian Geyer
2015-07-18 09:05:26 +02:00
parent 65e8732eeb
commit 3efc8f457a
8 changed files with 235 additions and 0 deletions

View File

@@ -17,6 +17,17 @@ include_directories(${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR})
configure_file(config-keepassx.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-keepassx.h)
include(GetGitRevisionDescription)
get_git_head_revision(GIT_REFSPEC GIT_HEAD)
git_describe(GIT_DESCRIBE --long)
if (NOT GIT_HEAD OR NOT GIT_DESCRIBE)
set(GIT_HEAD "")
set(GIT_DESCRIBE "")
endif()
configure_file(version.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/version.h @ONLY)
set(keepassx_SOURCES
autotype/AutoType.cpp
autotype/AutoTypeAction.cpp

View File

@@ -19,6 +19,7 @@
#include "ui_AboutDialog.h"
#include "config-keepassx.h"
#include "version.h"
#include "core/FilePath.h"
AboutDialog::AboutDialog(QWidget* parent)
@@ -35,6 +36,19 @@ AboutDialog::AboutDialog(QWidget* parent)
m_ui->iconLabel->setPixmap(filePath()->applicationIcon().pixmap(48));
QString commitHash;
if (!QString(GIT_HEAD).isEmpty()) {
commitHash = GIT_HEAD;
}
else if (!QString(DIST_HASH).contains("Format")) {
commitHash = DIST_HASH;
}
if (!commitHash.isEmpty()) {
QString labelGit = commitHash;
m_ui->label_git->setText(tr("Revision").append(": ").append(labelGit));
}
setAttribute(Qt::WA_DeleteOnClose);
connect(m_ui->buttonBox, SIGNAL(rejected()), SLOT(close()));
}

View File

@@ -54,6 +54,16 @@
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="label_git">
<property name="text">
<string/>
</property>
<property name="textInteractionFlags">
<set>Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse</set>
</property>
</widget>
</item>
<item>
<widget class="QDialogButtonBox" name="buttonBox">
<property name="standardButtons">

5
src/version.h.cmake Normal file
View File

@@ -0,0 +1,5 @@
#define GIT_HEAD "@GIT_HEAD@"
#define GIT_DESCRIBE "@GIT_DESCRIBE@"
#define DIST_HASH "$Format:%H$"
#define DIST_DATE "$Format:%at$"