summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@digia.com>2013-09-16 11:12:31 +0200
committerChristian Kandeler <christian.kandeler@digia.com>2013-09-17 13:36:08 +0200
commit2a3ef09473d0af1f8bb2ffa89fd737913341d688 (patch)
tree3e9e03b669f660804d412e2103539d1f0b171550 /src
parent0b5639f7358a14d9b5eb2b6db6b6671bd8853e8c (diff)
downloadqt-creator-2a3ef09473d0af1f8bb2ffa89fd737913341d688.tar.gz
Device support: Make IDevice::executeAction non-const.
Presumably this function is currently const because no current implementation actually changes device properties, but there is no reason why that should not be allowed. Change-Id: I80e4355be70e40bca9df5e1287a1d1d3f60c6534 Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
Diffstat (limited to 'src')
-rw-r--r--src/plugins/android/androiddevice.cpp2
-rw-r--r--src/plugins/android/androiddevice.h2
-rw-r--r--src/plugins/projectexplorer/devicesupport/desktopdevice.cpp2
-rw-r--r--src/plugins/projectexplorer/devicesupport/desktopdevice.h2
-rw-r--r--src/plugins/projectexplorer/devicesupport/devicemanager.cpp2
-rw-r--r--src/plugins/projectexplorer/devicesupport/devicesettingswidget.cpp5
-rw-r--r--src/plugins/projectexplorer/devicesupport/idevice.h2
-rw-r--r--src/plugins/qnx/blackberrydeviceconfiguration.cpp2
-rw-r--r--src/plugins/qnx/blackberrydeviceconfiguration.h2
-rw-r--r--src/plugins/remotelinux/linuxdevice.cpp2
-rw-r--r--src/plugins/remotelinux/linuxdevice.h2
11 files changed, 14 insertions, 11 deletions
diff --git a/src/plugins/android/androiddevice.cpp b/src/plugins/android/androiddevice.cpp
index 64cc451eee..374b4ad3a1 100644
--- a/src/plugins/android/androiddevice.cpp
+++ b/src/plugins/android/androiddevice.cpp
@@ -78,7 +78,7 @@ QString AndroidDevice::displayNameForActionId(Core::Id actionId) const
return QString();
}
-void AndroidDevice::executeAction(Core::Id actionId, QWidget *parent) const
+void AndroidDevice::executeAction(Core::Id actionId, QWidget *parent)
{
Q_UNUSED(actionId)
Q_UNUSED(parent)
diff --git a/src/plugins/android/androiddevice.h b/src/plugins/android/androiddevice.h
index a89d6357d3..eda23a5dac 100644
--- a/src/plugins/android/androiddevice.h
+++ b/src/plugins/android/androiddevice.h
@@ -45,7 +45,7 @@ public:
ProjectExplorer::IDeviceWidget *createWidget();
QList<Core::Id> actionIds() const;
QString displayNameForActionId(Core::Id actionId) const;
- void executeAction(Core::Id actionId, QWidget *parent = 0) const;
+ void executeAction(Core::Id actionId, QWidget *parent = 0);
bool canAutoDetectPorts() const;
ProjectExplorer::IDevice::Ptr clone() const;
diff --git a/src/plugins/projectexplorer/devicesupport/desktopdevice.cpp b/src/plugins/projectexplorer/devicesupport/desktopdevice.cpp
index 90c6aa8f20..7c9481cf3f 100644
--- a/src/plugins/projectexplorer/devicesupport/desktopdevice.cpp
+++ b/src/plugins/projectexplorer/devicesupport/desktopdevice.cpp
@@ -88,7 +88,7 @@ QString DesktopDevice::displayNameForActionId(Core::Id actionId) const
return QString();
}
-void DesktopDevice::executeAction(Core::Id actionId, QWidget *parent) const
+void DesktopDevice::executeAction(Core::Id actionId, QWidget *parent)
{
Q_UNUSED(actionId);
Q_UNUSED(parent);
diff --git a/src/plugins/projectexplorer/devicesupport/desktopdevice.h b/src/plugins/projectexplorer/devicesupport/desktopdevice.h
index d737ceeea7..7ddd35bacc 100644
--- a/src/plugins/projectexplorer/devicesupport/desktopdevice.h
+++ b/src/plugins/projectexplorer/devicesupport/desktopdevice.h
@@ -49,7 +49,7 @@ public:
IDeviceWidget *createWidget();
QList<Core::Id> actionIds() const;
QString displayNameForActionId(Core::Id actionId) const;
- void executeAction(Core::Id actionId, QWidget *parent = 0) const;
+ void executeAction(Core::Id actionId, QWidget *parent = 0);
bool canAutoDetectPorts() const;
bool canCreateProcessModel() const;
DeviceProcessList *createProcessListModel(QObject *parent) const;
diff --git a/src/plugins/projectexplorer/devicesupport/devicemanager.cpp b/src/plugins/projectexplorer/devicesupport/devicemanager.cpp
index fb2fb914af..5ab8e54547 100644
--- a/src/plugins/projectexplorer/devicesupport/devicemanager.cpp
+++ b/src/plugins/projectexplorer/devicesupport/devicemanager.cpp
@@ -433,7 +433,7 @@ private:
IDeviceWidget *createWidget() { return 0; }
QList<Core::Id> actionIds() const { return QList<Core::Id>(); }
QString displayNameForActionId(Core::Id) const { return QString(); }
- void executeAction(Core::Id, QWidget *) const { }
+ void executeAction(Core::Id, QWidget *) { }
Ptr clone() const { return Ptr(new TestDevice(*this)); }
};
diff --git a/src/plugins/projectexplorer/devicesupport/devicesettingswidget.cpp b/src/plugins/projectexplorer/devicesupport/devicesettingswidget.cpp
index 432cfb339f..b7f62a22a9 100644
--- a/src/plugins/projectexplorer/devicesupport/devicesettingswidget.cpp
+++ b/src/plugins/projectexplorer/devicesupport/devicesettingswidget.cpp
@@ -336,10 +336,13 @@ void DeviceSettingsWidget::clearDetails()
void DeviceSettingsWidget::handleAdditionalActionRequest(int actionId)
{
- const IDevice::ConstPtr device = m_deviceManager->find(currentDevice()->id());
+ const IDevice::Ptr device = m_deviceManager->mutableDevice(currentDevice()->id());
QTC_ASSERT(device, return);
updateDeviceFromUi();
device->executeAction(Core::Id::fromUniqueIdentifier(actionId), this);
+
+ // Widget must be set up from scratch, because the action could have changed random attributes.
+ currentDeviceChanged(currentIndex());
}
void DeviceSettingsWidget::handleProcessListRequested()
diff --git a/src/plugins/projectexplorer/devicesupport/idevice.h b/src/plugins/projectexplorer/devicesupport/idevice.h
index b8e928f694..8291a6c009 100644
--- a/src/plugins/projectexplorer/devicesupport/idevice.h
+++ b/src/plugins/projectexplorer/devicesupport/idevice.h
@@ -111,7 +111,7 @@ public:
virtual IDeviceWidget *createWidget() = 0;
virtual QList<Core::Id> actionIds() const = 0;
virtual QString displayNameForActionId(Core::Id actionId) const = 0;
- virtual void executeAction(Core::Id actionId, QWidget *parent = 0) const = 0;
+ virtual void executeAction(Core::Id actionId, QWidget *parent = 0) = 0;
virtual DeviceProcessSupport::Ptr processSupport() const;
// Devices that can auto detect ports need not return a ports gathering method. Such devices can
diff --git a/src/plugins/qnx/blackberrydeviceconfiguration.cpp b/src/plugins/qnx/blackberrydeviceconfiguration.cpp
index 0d3ca73422..ace022255c 100644
--- a/src/plugins/qnx/blackberrydeviceconfiguration.cpp
+++ b/src/plugins/qnx/blackberrydeviceconfiguration.cpp
@@ -143,7 +143,7 @@ QString BlackBerryDeviceConfiguration::displayNameForActionId(Core::Id actionId)
return QString();
}
-void BlackBerryDeviceConfiguration::executeAction(Core::Id actionId, QWidget *parent) const
+void BlackBerryDeviceConfiguration::executeAction(Core::Id actionId, QWidget *parent)
{
Q_UNUSED(parent);
diff --git a/src/plugins/qnx/blackberrydeviceconfiguration.h b/src/plugins/qnx/blackberrydeviceconfiguration.h
index 50b35eb84a..950233637c 100644
--- a/src/plugins/qnx/blackberrydeviceconfiguration.h
+++ b/src/plugins/qnx/blackberrydeviceconfiguration.h
@@ -62,7 +62,7 @@ public:
ProjectExplorer::IDeviceWidget *createWidget();
QList<Core::Id> actionIds() const;
QString displayNameForActionId(Core::Id actionId) const;
- void executeAction(Core::Id actionId, QWidget *parent) const;
+ void executeAction(Core::Id actionId, QWidget *parent);
ProjectExplorer::IDevice::Ptr clone() const;
bool hasDeviceTester() const;
diff --git a/src/plugins/remotelinux/linuxdevice.cpp b/src/plugins/remotelinux/linuxdevice.cpp
index 64570c225f..5d707b2354 100644
--- a/src/plugins/remotelinux/linuxdevice.cpp
+++ b/src/plugins/remotelinux/linuxdevice.cpp
@@ -217,7 +217,7 @@ QString LinuxDevice::displayNameForActionId(Core::Id actionId) const
return QString(); // Can't happen.
}
-void LinuxDevice::executeAction(Core::Id actionId, QWidget *parent) const
+void LinuxDevice::executeAction(Core::Id actionId, QWidget *parent)
{
QTC_ASSERT(actionIds().contains(actionId), return);
diff --git a/src/plugins/remotelinux/linuxdevice.h b/src/plugins/remotelinux/linuxdevice.h
index 85946e735e..f19a2476b2 100644
--- a/src/plugins/remotelinux/linuxdevice.h
+++ b/src/plugins/remotelinux/linuxdevice.h
@@ -66,7 +66,7 @@ public:
ProjectExplorer::IDeviceWidget *createWidget();
QList<Core::Id> actionIds() const;
QString displayNameForActionId(Core::Id actionId) const;
- void executeAction(Core::Id actionId, QWidget *parent) const;
+ void executeAction(Core::Id actionId, QWidget *parent);
ProjectExplorer::IDevice::Ptr clone() const;
ProjectExplorer::DeviceProcessSupport::Ptr processSupport() const;