Device support: Make device testing a "well-known" concept.
This entails the following: - Rename AbstractLinuxDeviceTester to DeviceTester and move it up into ProjectExplorer. The class stays unchanged, as there was nothing Linux-specific about it. The same goes for the associated dialog. - Move the createDeviceTester() function from LinuxDevice to IDevice and introduce IDevice::hasDeviceTester() to enable generic code to make use of this feature. - Move device testing out of the list of opaque device-specific actions; instead, the device settings widget now uses the device tester directly, if applicable. Rationale: - Device testing, just like remote process listing (if not more so), is a general concept that implementors of device classes will probably want to implement (and they should be encouraged to do so). Without the mechanism provided here, they would all need to put basically the same code into the actionIds(), displayNameForActionId() and executeAction() functions. This patch is the natural extension of b90e3bbd . Change-Id: I94f2badb4ceeda9f5cd3b066c13626bb4f65505d Reviewed-by: hjk <email@example.com> Reviewed-by: Christian Kandeler <firstname.lastname@example.org>
Showing with 113 additions and 84 deletions
src/plugins/remotelinux/linuxdevicetestdialog.cpp → src/plugins/projectexplorer/devicesupport/devicetestdialog.cpp
src/plugins/remotelinux/linuxdevicetestdialog.h → src/plugins/projectexplorer/devicesupport/devicetestdialog.h
src/plugins/remotelinux/linuxdevicetestdialog.ui → src/plugins/projectexplorer/devicesupport/devicetestdialog.ui