diff options
author | hjk <[email protected]> | 2019-02-20 19:13:28 +0100 |
---|---|---|
committer | hjk <[email protected]> | 2019-02-21 13:20:16 +0000 |
commit | 9e965409d1cbe6270c6a994bfe41d61a154d1d77 (patch) | |
tree | c7099baa704c1d3b0ddf01250e6757b132394ebf /src/plugins/ios/iosdevice.cpp | |
parent | 317ab497936cc6c32da80bd0d3de58975bb308f1 (diff) |
Move IDeviceFactory closer to IDevice implementation
Except for the DesktopDevice, which is kind of special. Also try
a bit to make (and partially fail at doing so) naming and code
structure (#include, use of namespaces) more similar to each other.
Change-Id: I9fe266e706b72c14f59ff03ca1ae02dba3adcc71
Reviewed-by: Christian Kandeler <[email protected]>
Diffstat (limited to 'src/plugins/ios/iosdevice.cpp')
-rw-r--r-- | src/plugins/ios/iosdevice.cpp | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/plugins/ios/iosdevice.cpp b/src/plugins/ios/iosdevice.cpp index abb94ffe24e..53d956fa76a 100644 --- a/src/plugins/ios/iosdevice.cpp +++ b/src/plugins/ios/iosdevice.cpp @@ -547,5 +547,27 @@ IosDevice::ConstPtr IosKitAspect::device(Kit *kit) return res; } + +// Factory + +IosDeviceFactory::IosDeviceFactory() + : IDeviceFactory(Constants::IOS_DEVICE_ID) +{ + setObjectName(QLatin1String("IosDeviceFactory")); + setDisplayName(IosDevice::name()); + setCombinedIcon(":/ios/images/iosdevicesmall.png", + ":/ios/images/iosdevice.png"); + setConstructionFunction([] { return IDevice::Ptr(new IosDevice); }); +} + +bool IosDeviceFactory::canRestore(const QVariantMap &map) const +{ + QVariantMap vMap = map.value(QLatin1String(Constants::EXTRA_INFO_KEY)).toMap(); + if (vMap.isEmpty() + || vMap.value(QLatin1String("deviceName")).toString() == QLatin1String("*unknown*")) + return false; // transient device (probably generated during an activation) + return true; +} + } // namespace Internal } // namespace Ios |