forked from qt-creator/qt-creator
QtSupport et al: Use more data members in QtVersionFactories
Same pattern as for the project configuration factories. Change-Id: Ia2f85eb2d787965f7a49be3bfe0be20c3f2aed8a Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
@@ -39,16 +39,8 @@ AndroidQtVersionFactory::AndroidQtVersionFactory(QObject *parent)
|
|||||||
: QtSupport::QtVersionFactory(parent)
|
: QtSupport::QtVersionFactory(parent)
|
||||||
{
|
{
|
||||||
setQtVersionCreator([] { return new AndroidQtVersion; });
|
setQtVersionCreator([] { return new AndroidQtVersion; });
|
||||||
}
|
setSupportedType(Constants::ANDROIDQT);
|
||||||
|
setPriority(90);
|
||||||
bool AndroidQtVersionFactory::canRestore(const QString &type)
|
|
||||||
{
|
|
||||||
return type == QLatin1String(Constants::ANDROIDQT);
|
|
||||||
}
|
|
||||||
|
|
||||||
int AndroidQtVersionFactory::priority() const
|
|
||||||
{
|
|
||||||
return 90;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
QtSupport::BaseQtVersion *AndroidQtVersionFactory::create(const Utils::FileName &qmakePath, ProFileEvaluator *evaluator, bool isAutoDetected, const QString &autoDetectionSource)
|
QtSupport::BaseQtVersion *AndroidQtVersionFactory::create(const Utils::FileName &qmakePath, ProFileEvaluator *evaluator, bool isAutoDetected, const QString &autoDetectionSource)
|
||||||
|
@@ -35,9 +35,6 @@ class AndroidQtVersionFactory : public QtSupport::QtVersionFactory
|
|||||||
public:
|
public:
|
||||||
explicit AndroidQtVersionFactory(QObject *parent = nullptr);
|
explicit AndroidQtVersionFactory(QObject *parent = nullptr);
|
||||||
|
|
||||||
bool canRestore(const QString &type) override;
|
|
||||||
|
|
||||||
int priority() const override;
|
|
||||||
QtSupport::BaseQtVersion *create(const Utils::FileName &qmakePath, ProFileEvaluator *evaluator,
|
QtSupport::BaseQtVersion *create(const Utils::FileName &qmakePath, ProFileEvaluator *evaluator,
|
||||||
bool isAutoDetected = false, const QString &autoDetectionSource = QString()) override;
|
bool isAutoDetected = false, const QString &autoDetectionSource = QString()) override;
|
||||||
};
|
};
|
||||||
|
@@ -38,16 +38,8 @@ IosQtVersionFactory::IosQtVersionFactory(QObject *parent)
|
|||||||
: QtSupport::QtVersionFactory(parent)
|
: QtSupport::QtVersionFactory(parent)
|
||||||
{
|
{
|
||||||
setQtVersionCreator([] { return new IosQtVersion; });
|
setQtVersionCreator([] { return new IosQtVersion; });
|
||||||
}
|
setSupportedType(Constants::IOSQT);
|
||||||
|
setPriority(90);
|
||||||
bool IosQtVersionFactory::canRestore(const QString &type)
|
|
||||||
{
|
|
||||||
return type == QLatin1String(Constants::IOSQT);
|
|
||||||
}
|
|
||||||
|
|
||||||
int IosQtVersionFactory::priority() const
|
|
||||||
{
|
|
||||||
return 90;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
QtSupport::BaseQtVersion *IosQtVersionFactory::create(const Utils::FileName &qmakePath,
|
QtSupport::BaseQtVersion *IosQtVersionFactory::create(const Utils::FileName &qmakePath,
|
||||||
|
@@ -35,9 +35,6 @@ class IosQtVersionFactory : public QtSupport::QtVersionFactory
|
|||||||
public:
|
public:
|
||||||
explicit IosQtVersionFactory(QObject *parent = nullptr);
|
explicit IosQtVersionFactory(QObject *parent = nullptr);
|
||||||
|
|
||||||
bool canRestore(const QString &type) override;
|
|
||||||
|
|
||||||
int priority() const override;
|
|
||||||
QtSupport::BaseQtVersion *create(const Utils::FileName &qmakePath, ProFileEvaluator *evaluator,
|
QtSupport::BaseQtVersion *create(const Utils::FileName &qmakePath, ProFileEvaluator *evaluator,
|
||||||
bool isAutoDetected = false,
|
bool isAutoDetected = false,
|
||||||
const QString &autoDetectionSource = QString()) override;
|
const QString &autoDetectionSource = QString()) override;
|
||||||
|
@@ -40,18 +40,8 @@ QnxQtVersionFactory::QnxQtVersionFactory(QObject *parent) :
|
|||||||
QtSupport::QtVersionFactory(parent)
|
QtSupport::QtVersionFactory(parent)
|
||||||
{
|
{
|
||||||
setQtVersionCreator([] { return new QnxQtVersion; });
|
setQtVersionCreator([] { return new QnxQtVersion; });
|
||||||
}
|
setSupportedType(Constants::QNX_QNX_QT);
|
||||||
|
setPriority(50);
|
||||||
QnxQtVersionFactory::~QnxQtVersionFactory() = default;
|
|
||||||
|
|
||||||
bool QnxQtVersionFactory::canRestore(const QString &type)
|
|
||||||
{
|
|
||||||
return type == QLatin1String(Constants::QNX_QNX_QT);
|
|
||||||
}
|
|
||||||
|
|
||||||
int QnxQtVersionFactory::priority() const
|
|
||||||
{
|
|
||||||
return 50;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
QtSupport::BaseQtVersion *QnxQtVersionFactory::create(const Utils::FileName &qmakePath,
|
QtSupport::BaseQtVersion *QnxQtVersionFactory::create(const Utils::FileName &qmakePath,
|
||||||
|
@@ -35,11 +35,7 @@ class QnxQtVersionFactory : public QtSupport::QtVersionFactory
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
public:
|
public:
|
||||||
explicit QnxQtVersionFactory(QObject *parent = nullptr);
|
explicit QnxQtVersionFactory(QObject *parent = nullptr);
|
||||||
~QnxQtVersionFactory() override;
|
|
||||||
|
|
||||||
bool canRestore(const QString &type) override;
|
|
||||||
|
|
||||||
int priority() const override;
|
|
||||||
QtSupport::BaseQtVersion *create(const Utils::FileName &qmakePath,
|
QtSupport::BaseQtVersion *create(const Utils::FileName &qmakePath,
|
||||||
ProFileEvaluator *evaluator,
|
ProFileEvaluator *evaluator,
|
||||||
bool isAutoDetected = false,
|
bool isAutoDetected = false,
|
||||||
|
@@ -36,19 +36,8 @@ DesktopQtVersionFactory::DesktopQtVersionFactory(QObject *parent)
|
|||||||
: QtVersionFactory(parent)
|
: QtVersionFactory(parent)
|
||||||
{
|
{
|
||||||
setQtVersionCreator([] { return new DesktopQtVersion; });
|
setQtVersionCreator([] { return new DesktopQtVersion; });
|
||||||
}
|
setSupportedType(Constants::DESKTOPQT);
|
||||||
|
setPriority(0); // Lowest of all, we want to be the fallback
|
||||||
DesktopQtVersionFactory::~DesktopQtVersionFactory() = default;
|
|
||||||
|
|
||||||
bool DesktopQtVersionFactory::canRestore(const QString &type)
|
|
||||||
{
|
|
||||||
return type == QLatin1String(Constants::DESKTOPQT);
|
|
||||||
}
|
|
||||||
|
|
||||||
int DesktopQtVersionFactory::priority() const
|
|
||||||
{
|
|
||||||
// Lowest of all, we want to be the fallback
|
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
BaseQtVersion *DesktopQtVersionFactory::create(const Utils::FileName &qmakePath, ProFileEvaluator *evaluator, bool isAutoDetected, const QString &autoDetectionSource)
|
BaseQtVersion *DesktopQtVersionFactory::create(const Utils::FileName &qmakePath, ProFileEvaluator *evaluator, bool isAutoDetected, const QString &autoDetectionSource)
|
||||||
|
@@ -34,11 +34,7 @@ class DesktopQtVersionFactory : public QtVersionFactory
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
explicit DesktopQtVersionFactory(QObject *parent = nullptr);
|
explicit DesktopQtVersionFactory(QObject *parent = nullptr);
|
||||||
~DesktopQtVersionFactory() override;
|
|
||||||
|
|
||||||
bool canRestore(const QString &type) override;
|
|
||||||
|
|
||||||
int priority() const override;
|
|
||||||
BaseQtVersion *create(const Utils::FileName &qmakePath, ProFileEvaluator *evaluator,
|
BaseQtVersion *create(const Utils::FileName &qmakePath, ProFileEvaluator *evaluator,
|
||||||
bool isAutoDetected = false, const QString &autoDetectionSource = QString()) override;
|
bool isAutoDetected = false, const QString &autoDetectionSource = QString()) override;
|
||||||
};
|
};
|
||||||
|
@@ -56,6 +56,11 @@ const QList<QtVersionFactory *> QtVersionFactory::allQtVersionFactories()
|
|||||||
return g_qtVersionFactories;
|
return g_qtVersionFactories;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool QtVersionFactory::canRestore(const QString &type)
|
||||||
|
{
|
||||||
|
return type == m_supportedType;
|
||||||
|
}
|
||||||
|
|
||||||
BaseQtVersion *QtVersionFactory::restore(const QString &type, const QVariantMap &data)
|
BaseQtVersion *QtVersionFactory::restore(const QString &type, const QVariantMap &data)
|
||||||
{
|
{
|
||||||
QTC_ASSERT(canRestore(type), return nullptr);
|
QTC_ASSERT(canRestore(type), return nullptr);
|
||||||
@@ -104,3 +109,13 @@ void QtVersionFactory::setQtVersionCreator(const std::function<BaseQtVersion *()
|
|||||||
{
|
{
|
||||||
m_creator = creator;
|
m_creator = creator;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void QtVersionFactory::setSupportedType(const QString &type)
|
||||||
|
{
|
||||||
|
m_supportedType = type;
|
||||||
|
}
|
||||||
|
|
||||||
|
void QtVersionFactory::setPriority(int priority)
|
||||||
|
{
|
||||||
|
m_priority = priority;
|
||||||
|
}
|
||||||
|
@@ -51,13 +51,13 @@ public:
|
|||||||
|
|
||||||
static const QList<QtVersionFactory *> allQtVersionFactories();
|
static const QList<QtVersionFactory *> allQtVersionFactories();
|
||||||
|
|
||||||
virtual bool canRestore(const QString &type) = 0;
|
bool canRestore(const QString &type);
|
||||||
BaseQtVersion *restore(const QString &type, const QVariantMap &data);
|
BaseQtVersion *restore(const QString &type, const QVariantMap &data);
|
||||||
|
|
||||||
/// factories with higher priority are asked first to identify
|
/// factories with higher priority are asked first to identify
|
||||||
/// a qtversion, the priority of the desktop factory is 0 and
|
/// a qtversion, the priority of the desktop factory is 0 and
|
||||||
/// the desktop factory claims to handle all paths
|
/// the desktop factory claims to handle all paths
|
||||||
virtual int priority() const = 0;
|
int priority() const { return m_priority; }
|
||||||
virtual BaseQtVersion *create(const Utils::FileName &qmakePath,
|
virtual BaseQtVersion *create(const Utils::FileName &qmakePath,
|
||||||
ProFileEvaluator *evaluator,
|
ProFileEvaluator *evaluator,
|
||||||
bool isAutoDetected = false,
|
bool isAutoDetected = false,
|
||||||
@@ -69,9 +69,13 @@ public:
|
|||||||
|
|
||||||
protected:
|
protected:
|
||||||
void setQtVersionCreator(const std::function<BaseQtVersion *()> &creator);
|
void setQtVersionCreator(const std::function<BaseQtVersion *()> &creator);
|
||||||
|
void setSupportedType(const QString &type);
|
||||||
|
void setPriority(int priority);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
std::function<BaseQtVersion *()> m_creator;
|
std::function<BaseQtVersion *()> m_creator;
|
||||||
|
QString m_supportedType;
|
||||||
|
int m_priority = 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace QtSupport
|
} // namespace QtSupport
|
||||||
|
@@ -37,18 +37,8 @@ EmbeddedLinuxQtVersionFactory::EmbeddedLinuxQtVersionFactory(QObject *parent)
|
|||||||
: QtSupport::QtVersionFactory(parent)
|
: QtSupport::QtVersionFactory(parent)
|
||||||
{
|
{
|
||||||
setQtVersionCreator([] { return new EmbeddedLinuxQtVersion; });
|
setQtVersionCreator([] { return new EmbeddedLinuxQtVersion; });
|
||||||
}
|
setSupportedType(RemoteLinux::Constants::EMBEDDED_LINUX_QT);
|
||||||
|
setPriority(10);
|
||||||
EmbeddedLinuxQtVersionFactory::~EmbeddedLinuxQtVersionFactory() = default;
|
|
||||||
|
|
||||||
bool EmbeddedLinuxQtVersionFactory::canRestore(const QString &type)
|
|
||||||
{
|
|
||||||
return type == QLatin1String(RemoteLinux::Constants::EMBEDDED_LINUX_QT);
|
|
||||||
}
|
|
||||||
|
|
||||||
int EmbeddedLinuxQtVersionFactory::priority() const
|
|
||||||
{
|
|
||||||
return 10;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
QtSupport::BaseQtVersion *EmbeddedLinuxQtVersionFactory::create(const Utils::FileName &qmakePath,
|
QtSupport::BaseQtVersion *EmbeddedLinuxQtVersionFactory::create(const Utils::FileName &qmakePath,
|
||||||
|
@@ -34,11 +34,7 @@ class EmbeddedLinuxQtVersionFactory : public QtSupport::QtVersionFactory
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
explicit EmbeddedLinuxQtVersionFactory(QObject *parent = nullptr);
|
explicit EmbeddedLinuxQtVersionFactory(QObject *parent = nullptr);
|
||||||
~EmbeddedLinuxQtVersionFactory() override;
|
|
||||||
|
|
||||||
bool canRestore(const QString &type) override;
|
|
||||||
|
|
||||||
int priority() const override;
|
|
||||||
QtSupport::BaseQtVersion *create(const Utils::FileName &qmakePath, ProFileEvaluator *evaluator,
|
QtSupport::BaseQtVersion *create(const Utils::FileName &qmakePath, ProFileEvaluator *evaluator,
|
||||||
bool isAutoDetected = false,
|
bool isAutoDetected = false,
|
||||||
const QString &autoDetectionSource = QString()) override;
|
const QString &autoDetectionSource = QString()) override;
|
||||||
|
@@ -39,20 +39,8 @@ WinRtQtVersionFactory::WinRtQtVersionFactory(QObject *parent)
|
|||||||
: QtSupport::QtVersionFactory(parent)
|
: QtSupport::QtVersionFactory(parent)
|
||||||
{
|
{
|
||||||
setQtVersionCreator([] { return new WinRtQtVersion; });
|
setQtVersionCreator([] { return new WinRtQtVersion; });
|
||||||
}
|
setSupportedType(Constants::WINRT_WINRTQT);
|
||||||
|
setPriority(10);
|
||||||
WinRtQtVersionFactory::~WinRtQtVersionFactory()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
bool WinRtQtVersionFactory::canRestore(const QString &type)
|
|
||||||
{
|
|
||||||
return type == QLatin1String(Constants::WINRT_WINRTQT);
|
|
||||||
}
|
|
||||||
|
|
||||||
int WinRtQtVersionFactory::priority() const
|
|
||||||
{
|
|
||||||
return 10;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
QtSupport::BaseQtVersion *WinRtQtVersionFactory::create(const Utils::FileName &qmakePath,
|
QtSupport::BaseQtVersion *WinRtQtVersionFactory::create(const Utils::FileName &qmakePath,
|
||||||
@@ -76,16 +64,8 @@ WinRtPhoneQtVersionFactory::WinRtPhoneQtVersionFactory(QObject *parent)
|
|||||||
: QtSupport::QtVersionFactory(parent)
|
: QtSupport::QtVersionFactory(parent)
|
||||||
{
|
{
|
||||||
setQtVersionCreator([] { return new WinRtPhoneQtVersion; });
|
setQtVersionCreator([] { return new WinRtPhoneQtVersion; });
|
||||||
}
|
setSupportedType(Constants::WINRT_WINPHONEQT);
|
||||||
|
setPriority(10);
|
||||||
bool WinRtPhoneQtVersionFactory::canRestore(const QString &type)
|
|
||||||
{
|
|
||||||
return type == QLatin1String(Constants::WINRT_WINPHONEQT);
|
|
||||||
}
|
|
||||||
|
|
||||||
int WinRtPhoneQtVersionFactory::priority() const
|
|
||||||
{
|
|
||||||
return 10;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
QtSupport::BaseQtVersion *WinRtPhoneQtVersionFactory::create(const Utils::FileName &qmakePath,
|
QtSupport::BaseQtVersion *WinRtPhoneQtVersionFactory::create(const Utils::FileName &qmakePath,
|
||||||
|
@@ -34,11 +34,7 @@ class WinRtQtVersionFactory : public QtSupport::QtVersionFactory
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
explicit WinRtQtVersionFactory(QObject *parent = nullptr);
|
explicit WinRtQtVersionFactory(QObject *parent = nullptr);
|
||||||
~WinRtQtVersionFactory();
|
|
||||||
|
|
||||||
bool canRestore(const QString &type);
|
|
||||||
|
|
||||||
int priority() const;
|
|
||||||
QtSupport::BaseQtVersion *create(const Utils::FileName &qmakePath, ProFileEvaluator *evaluator,
|
QtSupport::BaseQtVersion *create(const Utils::FileName &qmakePath, ProFileEvaluator *evaluator,
|
||||||
bool isAutoDetected = false, const QString &autoDetectionSource = QString());
|
bool isAutoDetected = false, const QString &autoDetectionSource = QString());
|
||||||
};
|
};
|
||||||
@@ -48,9 +44,6 @@ class WinRtPhoneQtVersionFactory : public QtSupport::QtVersionFactory
|
|||||||
public:
|
public:
|
||||||
explicit WinRtPhoneQtVersionFactory(QObject *parent = nullptr);
|
explicit WinRtPhoneQtVersionFactory(QObject *parent = nullptr);
|
||||||
|
|
||||||
bool canRestore(const QString &type);
|
|
||||||
|
|
||||||
int priority() const;
|
|
||||||
QtSupport::BaseQtVersion *create(const Utils::FileName &qmakePath, ProFileEvaluator *evaluator,
|
QtSupport::BaseQtVersion *create(const Utils::FileName &qmakePath, ProFileEvaluator *evaluator,
|
||||||
bool isAutoDetected = false, const QString &autoDetectionSource = QString());
|
bool isAutoDetected = false, const QString &autoDetectionSource = QString());
|
||||||
};
|
};
|
||||||
|
Reference in New Issue
Block a user