forked from qt-creator/qt-creator
FeatureProvider: Remove Feature and FeatureSet
Use Core::Id for Feature and QSet<Core::Id> for FeatureSet. Change-Id: I12341036bd9eaa82589d92bd3f7d21f2e6b737bd Reviewed-by: Niels Weber <niels.weber@theqtcompany.com> Reviewed-by: Tim Jenssen <tim.jenssen@theqtcompany.com>
This commit is contained in:
@@ -52,92 +52,7 @@
|
||||
\sa QtSupport::QtVersionManager
|
||||
*/
|
||||
|
||||
|
||||
/*!
|
||||
\fn IFeatureProvider::IFeatureProvider()
|
||||
\internal
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn IFeatureProvider::~IFeatureProvider()
|
||||
\internal
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn FetureSet IFeatureProvider::availableFeatures(const QString &platform) const
|
||||
Returns available features provided by this manager.
|
||||
\sa FeatureProvider::Features
|
||||
*/
|
||||
|
||||
/*!
|
||||
\class Core::Feature
|
||||
|
||||
\brief The Feature class describes a single feature to be used in
|
||||
Core::FeatureProvider::Features.
|
||||
|
||||
\sa Core::FeaturesSet
|
||||
\sa Core::IWizard
|
||||
\sa QtSupport::QtVersionManager
|
||||
*/
|
||||
|
||||
/*!
|
||||
\class Core::FeatureSet
|
||||
|
||||
\brief The FeatureSet class is a set of available or required feature sets.
|
||||
|
||||
This class behaves similarly to QFlags. However, instead of enums, Features
|
||||
relies on string ids and is therefore extendable.
|
||||
|
||||
\sa Core::Feature
|
||||
\sa Core::IWizard
|
||||
\sa QtSupport::QtVersionManager
|
||||
*/
|
||||
|
||||
|
||||
/*!
|
||||
\fn bool FeatureSet::contains(const Feature &feature) const
|
||||
|
||||
Returns true if \a feature is available.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn bool FeatureSet::contains(const FeatureSet &features) const
|
||||
|
||||
Returns true if all \a features are available.
|
||||
*/
|
||||
|
||||
Core::Feature Core::Feature::versionedFeature(const QByteArray &prefix, int major, int minor)
|
||||
{
|
||||
if (major < 0)
|
||||
return Feature::fromName(prefix);
|
||||
|
||||
QByteArray result = prefix + '.';
|
||||
result += QString::number(major).toLatin1();
|
||||
|
||||
if (minor < 0)
|
||||
return Feature::fromName(result);
|
||||
return Feature::fromName(result + '.' + QString::number(minor).toLatin1());
|
||||
}
|
||||
|
||||
Core::FeatureSet Core::FeatureSet::versionedFeatures(const QByteArray &prefix, int major, int minor)
|
||||
{
|
||||
FeatureSet result;
|
||||
result |= Feature::fromName(prefix);
|
||||
|
||||
if (major < 0)
|
||||
return result;
|
||||
|
||||
const QByteArray majorStr = QString::number(major).toLatin1();
|
||||
const QByteArray featureMajor = prefix + majorStr;
|
||||
const QByteArray featureDotMajor = prefix + '.' + majorStr;
|
||||
|
||||
result |= Feature::fromName(featureMajor) | Feature::fromName(featureDotMajor);
|
||||
|
||||
for (int i = 0; i <= minor; ++i) {
|
||||
const QByteArray minorStr = QString::number(i).toLatin1();
|
||||
result |= Feature::fromName(featureMajor + '.' + minorStr)
|
||||
| Feature::fromName(featureDotMajor + '.' + minorStr);
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user