forked from qt-creator/qt-creator
Allow plugins to specify a "revision" to show in addition to the version
To be used for the version control revision the plugin was built from. Invent a QTC_PLUGIN_REVISION replacement string for the plugin .json.in which can be set by the build process. Task-number: QTCREATORBUG-19951 Change-Id: Id5fd64b5506383e0b7749bcfd34d178baf8fe7af Reviewed-by: Christian Kandeler <christian.kandeler@qt.io> Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
This commit is contained in:
@@ -32,6 +32,8 @@
|
||||
#include <utils/algorithm.h>
|
||||
|
||||
#include <QDir>
|
||||
#include <QJsonObject>
|
||||
#include <QJsonValue>
|
||||
#include <QRegExp>
|
||||
|
||||
/*!
|
||||
@@ -65,6 +67,16 @@ PluginDetailsView::~PluginDetailsView()
|
||||
delete m_ui;
|
||||
}
|
||||
|
||||
// TODO: make API in PluginSpec
|
||||
static QString getSpecRevision(PluginSpec *spec)
|
||||
{
|
||||
const QJsonObject metaData = spec->metaData();
|
||||
const QJsonValue revision = metaData.value("Revision");
|
||||
if (revision.isString())
|
||||
return revision.toString();
|
||||
return QString();
|
||||
}
|
||||
|
||||
/*!
|
||||
Reads the given \a spec and displays its values
|
||||
in this PluginDetailsView.
|
||||
@@ -72,7 +84,10 @@ PluginDetailsView::~PluginDetailsView()
|
||||
void PluginDetailsView::update(PluginSpec *spec)
|
||||
{
|
||||
m_ui->name->setText(spec->name());
|
||||
m_ui->version->setText(spec->version());
|
||||
const QString revision = getSpecRevision(spec);
|
||||
const QString versionString = spec->version() + (revision.isEmpty() ? QString()
|
||||
: " (" + revision + ")");
|
||||
m_ui->version->setText(versionString);
|
||||
m_ui->compatVersion->setText(spec->compatVersion());
|
||||
m_ui->vendor->setText(spec->vendor());
|
||||
const QString link = QString::fromLatin1("<a href=\"%1\">%1</a>").arg(spec->url());
|
||||
|
||||
Reference in New Issue
Block a user