forked from qt-creator/qt-creator
Simplify IDeviceFactory use
With a 1:1 mapping of factory and created device types, the signatures of the device factory methods are much simpler, and yield even in the cases where a factory created more than one device type (WinRt and Qdb) less code after duplication of the factory. Change-Id: I1c6279a88e8483001e5603cfe1922029243be610 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
@@ -36,25 +36,18 @@ namespace Android {
|
||||
namespace Internal {
|
||||
|
||||
AndroidDeviceFactory::AndroidDeviceFactory()
|
||||
: ProjectExplorer::IDeviceFactory(Constants::ANDROID_DEVICE_TYPE)
|
||||
{
|
||||
setObjectName(QLatin1String("AndroidDeviceFactory"));
|
||||
}
|
||||
|
||||
QString AndroidDeviceFactory::displayNameForId(Core::Id type) const
|
||||
QString AndroidDeviceFactory::displayName() const
|
||||
{
|
||||
if (type == Constants::ANDROID_DEVICE_TYPE)
|
||||
return tr("Android Device");
|
||||
return QString();
|
||||
return tr("Android Device");
|
||||
}
|
||||
|
||||
QList<Core::Id> AndroidDeviceFactory::availableCreationIds() const
|
||||
QIcon AndroidDeviceFactory::icon() const
|
||||
{
|
||||
return QList<Core::Id>() << Core::Id(Constants::ANDROID_DEVICE_TYPE);
|
||||
}
|
||||
|
||||
QIcon AndroidDeviceFactory::iconForId(Core::Id type) const
|
||||
{
|
||||
Q_UNUSED(type)
|
||||
using namespace Utils;
|
||||
static const QIcon icon =
|
||||
Icon::combinedIcon({Icon({{":/android/images/androiddevicesmall.png",
|
||||
@@ -69,15 +62,14 @@ bool AndroidDeviceFactory::canCreate() const
|
||||
return false;
|
||||
}
|
||||
|
||||
ProjectExplorer::IDevice::Ptr AndroidDeviceFactory::create(Core::Id id) const
|
||||
ProjectExplorer::IDevice::Ptr AndroidDeviceFactory::create() const
|
||||
{
|
||||
Q_UNUSED(id)
|
||||
return ProjectExplorer::IDevice::Ptr();
|
||||
}
|
||||
|
||||
bool AndroidDeviceFactory::canRestore(const QVariantMap &map) const
|
||||
{
|
||||
return ProjectExplorer::IDevice::typeFromMap(map) == Constants::ANDROID_DEVICE_TYPE;
|
||||
return ProjectExplorer::IDevice::typeFromMap(map) == deviceType();
|
||||
}
|
||||
|
||||
ProjectExplorer::IDevice::Ptr AndroidDeviceFactory::restore(const QVariantMap &map) const
|
||||
|
||||
@@ -36,12 +36,11 @@ class AndroidDeviceFactory : public ProjectExplorer::IDeviceFactory
|
||||
public:
|
||||
AndroidDeviceFactory();
|
||||
|
||||
QString displayNameForId(Core::Id type) const override;
|
||||
QList<Core::Id> availableCreationIds() const override;
|
||||
QIcon iconForId(Core::Id type) const override;
|
||||
QString displayName() const override;
|
||||
QIcon icon() const override;
|
||||
|
||||
bool canCreate() const override;
|
||||
ProjectExplorer::IDevice::Ptr create(Core::Id id) const override;
|
||||
ProjectExplorer::IDevice::Ptr create() const override;
|
||||
bool canRestore(const QVariantMap &map) const override;
|
||||
ProjectExplorer::IDevice::Ptr restore(const QVariantMap &map) const override;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user