ExtensionSystem: Make API for revision in PluginSpec

Change-Id: Icdc6bfa565cf67faa829fd473f2890e4987bd261
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
Federico Guerinoni
2020-06-25 06:38:11 +02:00
parent 0238bff7d5
commit 5a091c3d98
3 changed files with 10 additions and 11 deletions

View File

@@ -70,16 +70,6 @@ PluginDetailsView::~PluginDetailsView()
delete m_ui; 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 Reads the given \a spec and displays its values
in this PluginDetailsView. in this PluginDetailsView.
@@ -87,7 +77,7 @@ static QString getSpecRevision(PluginSpec *spec)
void PluginDetailsView::update(PluginSpec *spec) void PluginDetailsView::update(PluginSpec *spec)
{ {
m_ui->name->setText(spec->name()); m_ui->name->setText(spec->name());
const QString revision = getSpecRevision(spec); const QString revision = spec->revision();
const QString versionString = spec->version() + (revision.isEmpty() ? QString() const QString versionString = spec->version() + (revision.isEmpty() ? QString()
: " (" + revision + ")"); : " (" + revision + ")");
m_ui->version->setText(versionString); m_ui->version->setText(versionString);

View File

@@ -288,6 +288,14 @@ QString PluginSpec::category() const
return d->category; return d->category;
} }
QString PluginSpec::revision() const
{
const QJsonValue revision = metaData().value("Revision");
if (revision.isString())
return revision.toString();
return QString();
}
/*! /*!
Returns a QRegularExpression matching the platforms this plugin works on. Returns a QRegularExpression matching the platforms this plugin works on.
An empty pattern implies all platforms. An empty pattern implies all platforms.

View File

@@ -92,6 +92,7 @@ public:
QString description() const; QString description() const;
QString url() const; QString url() const;
QString category() const; QString category() const;
QString revision() const;
QRegularExpression platformSpecification() const; QRegularExpression platformSpecification() const;
bool isAvailableForHostPlatform() const; bool isAvailableForHostPlatform() const;
bool isRequired() const; bool isRequired() const;