forked from qt-creator/qt-creator
Device support: Make device actions a little more flexible.
We give the implementors of the IDevice subclasses a litte more freedom by not assuming a modal dialog. Change-Id: I629a3ab7fc50a73229e6439af53f1bae0cf0259e Reviewed-by: Tobias Hunger <tobias.hunger@nokia.com>
This commit is contained in:
@@ -120,19 +120,21 @@ QString LinuxDeviceConfiguration::displayNameForActionId(Core::Id actionId) cons
|
||||
return QString(); // Can't happen.
|
||||
}
|
||||
|
||||
QDialog *LinuxDeviceConfiguration::createAction(Core::Id actionId, QWidget *parent) const
|
||||
void LinuxDeviceConfiguration::executeAction(Core::Id actionId, QWidget *parent)
|
||||
{
|
||||
QTC_ASSERT(actionIds().contains(actionId), return 0);
|
||||
QTC_ASSERT(actionIds().contains(actionId), return);
|
||||
|
||||
QDialog *d;
|
||||
const LinuxDeviceConfiguration::ConstPtr device
|
||||
= sharedFromThis().staticCast<const LinuxDeviceConfiguration>();
|
||||
if (actionId == Core::Id(Constants::GenericTestDeviceActionId))
|
||||
return new LinuxDeviceTestDialog(device, new GenericLinuxDeviceTester, parent);
|
||||
if (actionId == Core::Id(Constants::GenericRemoteProcessesActionId))
|
||||
return new RemoteLinuxProcessesDialog(new GenericRemoteLinuxProcessList(device, parent));
|
||||
if (actionId == Core::Id(Constants::GenericDeployKeyToDeviceActionId))
|
||||
return PublicKeyDeploymentDialog::createDialog(device, parent);
|
||||
return 0; // Can't happen.
|
||||
d = new LinuxDeviceTestDialog(device, new GenericLinuxDeviceTester, parent);
|
||||
else if (actionId == Core::Id(Constants::GenericRemoteProcessesActionId))
|
||||
d = new RemoteLinuxProcessesDialog(new GenericRemoteLinuxProcessList(device, parent));
|
||||
else if (actionId == Core::Id(Constants::GenericDeployKeyToDeviceActionId))
|
||||
d = PublicKeyDeploymentDialog::createDialog(device, parent);
|
||||
if (d)
|
||||
d->exec();
|
||||
}
|
||||
|
||||
LinuxDeviceConfiguration::LinuxDeviceConfiguration() : d(new LinuxDeviceConfigurationPrivate)
|
||||
|
||||
Reference in New Issue
Block a user