From 45f9c178e1f475bd7412b93b4e984336a4c2fa4a Mon Sep 17 00:00:00 2001 From: Christian Kandeler Date: Thu, 1 Aug 2019 14:30:10 +0200 Subject: ProjectExplorer::IDevice: Add a default display name Task-number: QTCREATORBUG-16281 Change-Id: Ieff929343b5dc3a84d9ecf5f4f0a032cb4ae4076 Reviewed-by: hjk --- src/plugins/android/androiddevice.cpp | 3 ++- src/plugins/baremetal/baremetaldevice.cpp | 6 ++++++ src/plugins/baremetal/baremetaldevice.h | 2 ++ .../baremetaldeviceconfigurationwizardpages.cpp | 7 +------ .../baremetal/baremetaldeviceconfigurationwizardpages.h | 2 -- src/plugins/ios/iosdevice.cpp | 4 ++-- src/plugins/ios/iossimulator.cpp | 3 ++- .../projectexplorer/devicesupport/desktopdevice.cpp | 3 ++- src/plugins/projectexplorer/devicesupport/idevice.cpp | 16 +++++++++++----- src/plugins/projectexplorer/devicesupport/idevice.h | 1 + src/plugins/qnx/qnxdevice.cpp | 1 + src/plugins/qnx/qnxdevicewizard.cpp | 1 - .../genericlinuxdeviceconfigurationwizard.cpp | 1 - src/plugins/remotelinux/linuxdevice.cpp | 2 +- src/plugins/webassembly/webassemblydevice.cpp | 2 +- src/plugins/winrt/winrtdevice.cpp | 2 +- 16 files changed, 33 insertions(+), 23 deletions(-) (limited to 'src/plugins') diff --git a/src/plugins/android/androiddevice.cpp b/src/plugins/android/androiddevice.cpp index 9c75cdaca1..ee79fd4f6a 100644 --- a/src/plugins/android/androiddevice.cpp +++ b/src/plugins/android/androiddevice.cpp @@ -49,7 +49,8 @@ AndroidDevice::AndroidDevice() { setupId(IDevice::AutoDetected, Constants::ANDROID_DEVICE_ID); setType(Constants::ANDROID_DEVICE_TYPE); - setDisplayName(QCoreApplication::translate("Android::Internal::AndroidDevice", "Run on Android")); + setDefaultDisplayName(QCoreApplication::translate("Android::Internal::AndroidDevice", + "Run on Android")); setDisplayType(QCoreApplication::translate("Android::Internal::AndroidDevice", "Android")); setMachineType(IDevice::Hardware); setDeviceState(DeviceReadyToUse); diff --git a/src/plugins/baremetal/baremetaldevice.cpp b/src/plugins/baremetal/baremetaldevice.cpp index d638cb30dd..3ae4f096df 100644 --- a/src/plugins/baremetal/baremetaldevice.cpp +++ b/src/plugins/baremetal/baremetaldevice.cpp @@ -53,6 +53,7 @@ const char gdbServerProviderIdKeyC[] = "GdbServerProviderId"; BareMetalDevice::BareMetalDevice() { setDisplayType(QCoreApplication::translate("BareMetal::Internal::BareMetalDevice", "Bare Metal")); + setDefaultDisplayName(defaultDisplayName()); } BareMetalDevice::~BareMetalDevice() @@ -61,6 +62,11 @@ BareMetalDevice::~BareMetalDevice() provider->unregisterDevice(this); } +QString BareMetalDevice::defaultDisplayName() +{ + return QCoreApplication::translate("BareMetal::Internal::BareMetalDevice", "Bare Metal Device"); +} + QString BareMetalDevice::gdbServerProviderId() const { return m_gdbServerProviderId; diff --git a/src/plugins/baremetal/baremetaldevice.h b/src/plugins/baremetal/baremetaldevice.h index 31ac572adc..ef83035046 100644 --- a/src/plugins/baremetal/baremetaldevice.h +++ b/src/plugins/baremetal/baremetaldevice.h @@ -45,6 +45,8 @@ public: static Ptr create() { return Ptr(new BareMetalDevice); } ~BareMetalDevice() final; + static QString defaultDisplayName(); + ProjectExplorer::IDeviceWidget *createWidget() final; Utils::OsType osType() const final; diff --git a/src/plugins/baremetal/baremetaldeviceconfigurationwizardpages.cpp b/src/plugins/baremetal/baremetaldeviceconfigurationwizardpages.cpp index 4e0e69b4f8..53634ec239 100644 --- a/src/plugins/baremetal/baremetaldeviceconfigurationwizardpages.cpp +++ b/src/plugins/baremetal/baremetaldeviceconfigurationwizardpages.cpp @@ -62,7 +62,7 @@ BareMetalDeviceConfigurationWizardSetupPage::BareMetalDeviceConfigurationWizardS void BareMetalDeviceConfigurationWizardSetupPage::initializePage() { - m_nameLineEdit->setText(defaultConfigurationName()); + m_nameLineEdit->setText(BareMetalDevice::defaultDisplayName()); } bool BareMetalDeviceConfigurationWizardSetupPage::isComplete() const @@ -80,10 +80,5 @@ QString BareMetalDeviceConfigurationWizardSetupPage::gdbServerProviderId() const return m_gdbServerProviderChooser->currentProviderId(); } -QString BareMetalDeviceConfigurationWizardSetupPage::defaultConfigurationName() const -{ - return tr("Bare Metal Device"); -} - } // namespace Internal } // namespace BareMetal diff --git a/src/plugins/baremetal/baremetaldeviceconfigurationwizardpages.h b/src/plugins/baremetal/baremetaldeviceconfigurationwizardpages.h index 27ac808108..05f16ba290 100644 --- a/src/plugins/baremetal/baremetaldeviceconfigurationwizardpages.h +++ b/src/plugins/baremetal/baremetaldeviceconfigurationwizardpages.h @@ -51,8 +51,6 @@ public: QString configurationName() const; QString gdbServerProviderId() const; - virtual QString defaultConfigurationName() const; - private: QLineEdit *m_nameLineEdit = nullptr; GdbServerProviderChooser *m_gdbServerProviderChooser = nullptr; diff --git a/src/plugins/ios/iosdevice.cpp b/src/plugins/ios/iosdevice.cpp index 922cf5009a..314e1de88c 100644 --- a/src/plugins/ios/iosdevice.cpp +++ b/src/plugins/ios/iosdevice.cpp @@ -83,7 +83,7 @@ IosDevice::IosDevice() { setupId(IDevice::AutoDetected, Constants::IOS_DEVICE_ID); setType(Constants::IOS_DEVICE_TYPE); - setDisplayName(IosDevice::name()); + setDefaultDisplayName(IosDevice::name()); setDisplayType(QCoreApplication::translate("Ios::Internal::IosDevice", "iOS")); setMachineType(IDevice::Hardware); setDeviceState(DeviceDisconnected); @@ -98,7 +98,7 @@ IosDevice::IosDevice(const QString &uid) { setupId(IDevice::AutoDetected, Core::Id(Constants::IOS_DEVICE_ID).withSuffix(uid)); setType(Constants::IOS_DEVICE_TYPE); - setDisplayName(IosDevice::name()); + setDefaultDisplayName(IosDevice::name()); setDisplayType(QCoreApplication::translate("Ios::Internal::IosDevice", "iOS")); setMachineType(IDevice::Hardware); setDeviceState(DeviceDisconnected); diff --git a/src/plugins/ios/iossimulator.cpp b/src/plugins/ios/iossimulator.cpp index 4f63e8facc..4b88838d1f 100644 --- a/src/plugins/ios/iossimulator.cpp +++ b/src/plugins/ios/iossimulator.cpp @@ -50,7 +50,8 @@ IosSimulator::IosSimulator(Core::Id id) setupId(IDevice::AutoDetected, id); setType(Constants::IOS_SIMULATOR_TYPE); setMachineType(IDevice::Emulator); - setDisplayName(QCoreApplication::translate("Ios::Internal::IosSimulator", "iOS Simulator")); + setDefaultDisplayName(QCoreApplication::translate("Ios::Internal::IosSimulator", + "iOS Simulator")); setDisplayType(QCoreApplication::translate("Ios::Internal::IosSimulator", "iOS Simulator")); setDeviceState(DeviceReadyToUse); } diff --git a/src/plugins/projectexplorer/devicesupport/desktopdevice.cpp b/src/plugins/projectexplorer/devicesupport/desktopdevice.cpp index f343ed6479..daf67aa3f6 100644 --- a/src/plugins/projectexplorer/devicesupport/desktopdevice.cpp +++ b/src/plugins/projectexplorer/devicesupport/desktopdevice.cpp @@ -54,7 +54,8 @@ DesktopDevice::DesktopDevice() { setupId(IDevice::AutoDetected, DESKTOP_DEVICE_ID); setType(DESKTOP_DEVICE_TYPE); - setDisplayName(QCoreApplication::translate("ProjectExplorer::DesktopDevice", "Local PC")); + setDefaultDisplayName(QCoreApplication::translate("ProjectExplorer::DesktopDevice", + "Local PC")); setDisplayType(QCoreApplication::translate("ProjectExplorer::DesktopDevice", "Desktop")); setDeviceState(IDevice::DeviceStateUnknown); diff --git a/src/plugins/projectexplorer/devicesupport/idevice.cpp b/src/plugins/projectexplorer/devicesupport/idevice.cpp index a5fd595ae4..f117edaaf2 100644 --- a/src/plugins/projectexplorer/devicesupport/idevice.cpp +++ b/src/plugins/projectexplorer/devicesupport/idevice.cpp @@ -34,6 +34,7 @@ #include "../runconfiguration.h" #include +#include #include #include #include @@ -138,7 +139,7 @@ class IDevicePrivate public: IDevicePrivate() = default; - QString displayName; + Utils::DisplayName displayName; QString displayType; Core::Id type; IDevice::Origin origin = IDevice::AutoDetected; @@ -197,12 +198,17 @@ IDevice::~IDevice() = default; QString IDevice::displayName() const { - return d->displayName; + return d->displayName.value(); } void IDevice::setDisplayName(const QString &name) { - d->displayName = name; + d->displayName.setValue(name); +} + +void IDevice::setDefaultDisplayName(const QString &name) +{ + d->displayName.setDefaultValue(name); } QString IDevice::displayType() const @@ -349,7 +355,7 @@ Core::Id IDevice::idFromMap(const QVariantMap &map) void IDevice::fromMap(const QVariantMap &map) { d->type = typeFromMap(map); - d->displayName = map.value(QLatin1String(DisplayNameKey)).toString(); + d->displayName.fromMap(map, DisplayNameKey); d->id = Core::Id::fromSetting(map.value(QLatin1String(IdKey))); if (!d->id.isValid()) d->id = newId(); @@ -394,7 +400,7 @@ void IDevice::fromMap(const QVariantMap &map) QVariantMap IDevice::toMap() const { QVariantMap map; - map.insert(QLatin1String(DisplayNameKey), d->displayName); + d->displayName.toMap(map, DisplayNameKey); map.insert(QLatin1String(TypeKey), d->type.toString()); map.insert(QLatin1String(IdKey), d->id.toSetting()); map.insert(QLatin1String(OriginKey), d->origin); diff --git a/src/plugins/projectexplorer/devicesupport/idevice.h b/src/plugins/projectexplorer/devicesupport/idevice.h index b0e0be9a87..ee421d9cad 100644 --- a/src/plugins/projectexplorer/devicesupport/idevice.h +++ b/src/plugins/projectexplorer/devicesupport/idevice.h @@ -134,6 +134,7 @@ public: QString displayName() const; void setDisplayName(const QString &name); + void setDefaultDisplayName(const QString &name); // Provide some information on the device suitable for formated // output, e.g. in tool tips. Get a list of name value pairs. diff --git a/src/plugins/qnx/qnxdevice.cpp b/src/plugins/qnx/qnxdevice.cpp index 55293f0ebd..6f511997b6 100644 --- a/src/plugins/qnx/qnxdevice.cpp +++ b/src/plugins/qnx/qnxdevice.cpp @@ -83,6 +83,7 @@ class QnxPortsGatheringMethod : public PortsGatheringMethod QnxDevice::QnxDevice() { setDisplayType(tr("QNX")); + setDefaultDisplayName(tr("QNX Device")); addDeviceAction({tr("Deploy Qt libraries..."), [](const IDevice::Ptr &device, QWidget *parent) { QnxDeployQtLibrariesDialog dialog(device, parent); dialog.exec(); diff --git a/src/plugins/qnx/qnxdevicewizard.cpp b/src/plugins/qnx/qnxdevicewizard.cpp index 89fbb06c64..c0e64a5390 100644 --- a/src/plugins/qnx/qnxdevicewizard.cpp +++ b/src/plugins/qnx/qnxdevicewizard.cpp @@ -54,7 +54,6 @@ QnxDeviceWizard::QnxDeviceWizard(QWidget *parent) : sshParams.timeout = 10; m_device = QnxDevice::create(); m_device->setupId(IDevice::ManuallyAdded); - m_device->setDisplayName(tr("QNX Device")); m_device->setType(Constants::QNX_QNX_OS_TYPE); m_device->setMachineType(IDevice::Hardware); m_device->setSshParameters(sshParams); diff --git a/src/plugins/remotelinux/genericlinuxdeviceconfigurationwizard.cpp b/src/plugins/remotelinux/genericlinuxdeviceconfigurationwizard.cpp index 56cbd99ccd..913097a335 100644 --- a/src/plugins/remotelinux/genericlinuxdeviceconfigurationwizard.cpp +++ b/src/plugins/remotelinux/genericlinuxdeviceconfigurationwizard.cpp @@ -64,7 +64,6 @@ GenericLinuxDeviceConfigurationWizard::GenericLinuxDeviceConfigurationWizard(QWi d->finalPage.setCommitPage(true); d->device = LinuxDevice::create(); d->device->setupId(IDevice::ManuallyAdded, Core::Id()); - d->device->setDisplayName(tr("Generic Linux Device")); d->device->setType(Constants::GenericLinuxOsType); d->device->setMachineType(IDevice::Hardware); d->device->setFreePorts(Utils::PortList::fromString(QLatin1String("10000-10100"))); diff --git a/src/plugins/remotelinux/linuxdevice.cpp b/src/plugins/remotelinux/linuxdevice.cpp index 6753665c66..00461cca74 100644 --- a/src/plugins/remotelinux/linuxdevice.cpp +++ b/src/plugins/remotelinux/linuxdevice.cpp @@ -186,7 +186,7 @@ Utils::OsType LinuxDevice::osType() const LinuxDevice::LinuxDevice() { setDisplayType(tr("Generic Linux")); - + setDefaultDisplayName(tr("Generic Linux Device")); addDeviceAction({tr("Deploy Public Key..."), [](const IDevice::Ptr &device, QWidget *parent) { if (auto d = PublicKeyDeploymentDialog::createDialog(device, parent)) { d->exec(); diff --git a/src/plugins/webassembly/webassemblydevice.cpp b/src/plugins/webassembly/webassemblydevice.cpp index bb723db658..6f3404990f 100644 --- a/src/plugins/webassembly/webassemblydevice.cpp +++ b/src/plugins/webassembly/webassemblydevice.cpp @@ -34,7 +34,7 @@ WebAssemblyDevice::WebAssemblyDevice() setupId(IDevice::AutoDetected, Constants::WEBASSEMBLY_DEVICE_DEVICE_ID); setType(Constants::WEBASSEMBLY_DEVICE_TYPE); const QString displayNameAndType = tr("Web Browser"); - setDisplayName(displayNameAndType); + setDefaultDisplayName(displayNameAndType); setDisplayType(displayNameAndType); setDeviceState(IDevice::DeviceStateUnknown); setMachineType(IDevice::Hardware); diff --git a/src/plugins/winrt/winrtdevice.cpp b/src/plugins/winrt/winrtdevice.cpp index f537aa5f57..90438f704c 100644 --- a/src/plugins/winrt/winrtdevice.cpp +++ b/src/plugins/winrt/winrtdevice.cpp @@ -353,7 +353,7 @@ void WinRtDeviceFactory::parseRunnerOutput(const QByteArray &output) const device->setDeviceId(deviceId); device->setType(deviceType); device->setMachineType(machineType); - device->setDisplayName(name); + device->setDefaultDisplayName(name); deviceManager->addDevice(ProjectExplorer::IDevice::ConstPtr(device)); qCDebug(winrtDeviceLog) << __FUNCTION__ << "Added device" << name << "(internal name:" << internalName << ")"; -- cgit v1.2.1