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 <christian.kandeler@qt.io>
This commit is contained in:
hjk
2019-02-20 19:13:28 +01:00
parent 317ab49793
commit 9e965409d1
44 changed files with 492 additions and 910 deletions

View File

@@ -24,11 +24,14 @@
****************************************************************************/
#include "qnxdevice.h"
#include "qnxconstants.h"
#include "qnxdevicetester.h"
#include "qnxdeviceprocesslist.h"
#include "qnxdeviceprocesssignaloperation.h"
#include "qnxdeployqtlibrariesdialog.h"
#include "qnxdeviceprocess.h"
#include "qnxdevicewizard.h"
#include <projectexplorer/devicesupport/sshdeviceprocess.h>
@@ -46,8 +49,7 @@ using namespace ProjectExplorer;
using namespace Utils;
namespace Qnx {
using namespace Internal;
namespace Internal {
const char QnxVersionKey[] = "QnxVersion";
@@ -179,4 +181,30 @@ DeviceProcessSignalOperation::Ptr QnxDevice::signalOperation() const
new QnxDeviceProcessSignalOperation(sshParameters()));
}
// Factory
QnxDeviceFactory::QnxDeviceFactory()
: ProjectExplorer::IDeviceFactory(Constants::QNX_QNX_OS_TYPE)
{
setDisplayName(tr("QNX Device"));
setCombinedIcon(":/qnx/images/qnxdevicesmall.png",
":/qnx/images/qnxdevice.png");
setCanCreate(true);
setConstructionFunction(&QnxDevice::create);
}
ProjectExplorer::IDevice::Ptr QnxDeviceFactory::create() const
{
QnxDeviceWizard wizard;
if (wizard.exec() != QDialog::Accepted)
return ProjectExplorer::IDevice::Ptr();
return wizard.device();
}
Core::Id QnxDeviceFactory::deviceType()
{
return Core::Id(Constants::QNX_QNX_OS_TYPE);
}
} // namespace Internal
} // namespace Qnx