diff --git a/src/plugins/madde/qt4maemodeployconfiguration.cpp b/src/plugins/madde/qt4maemodeployconfiguration.cpp index 0f07c706d5668684c4999163761b2cb1a7e9555b..9e7c2ef6465261d2baa762cb79c6e563e0388a27 100644 --- a/src/plugins/madde/qt4maemodeployconfiguration.cpp +++ b/src/plugins/madde/qt4maemodeployconfiguration.cpp @@ -80,7 +80,7 @@ Qt4MaemoDeployConfiguration::Qt4MaemoDeployConfiguration(ProjectExplorer::Target DeployConfigurationWidget *Qt4MaemoDeployConfiguration::createConfigWidget() { - return new RemoteLinuxDeployConfigurationWidget; + return new RemoteLinuxDeployConfigurationWidget(this); } Qt4MaemoDeployConfiguration::~Qt4MaemoDeployConfiguration() {} diff --git a/src/plugins/projectexplorer/deployconfiguration.h b/src/plugins/projectexplorer/deployconfiguration.h index b0398254d663d44baaa468b6d6a321e3f170c586..ec5716291935d0d437ae4deb12465c28f1d306da 100644 --- a/src/plugins/projectexplorer/deployconfiguration.h +++ b/src/plugins/projectexplorer/deployconfiguration.h @@ -130,9 +130,6 @@ class PROJECTEXPLORER_EXPORT DeployConfigurationWidget : public NamedWidget public: explicit DeployConfigurationWidget(QWidget *parent = 0); - - // This is called to set up the config widget before showing it - virtual void init(DeployConfiguration *dc) = 0; }; } // namespace ProjectExplorer diff --git a/src/plugins/projectexplorer/runsettingspropertiespage.cpp b/src/plugins/projectexplorer/runsettingspropertiespage.cpp index 524c5b21cb06feb9c7f2b605d140c067aa3378f0..bf19e13c590ac6c08711dc2815b5012b59bd0a14 100644 --- a/src/plugins/projectexplorer/runsettingspropertiespage.cpp +++ b/src/plugins/projectexplorer/runsettingspropertiespage.cpp @@ -497,10 +497,8 @@ void RunSettingsWidget::updateDeployConfiguration(DeployConfiguration *dc) m_ignoreChange = false; m_deployConfigurationWidget = dc->createConfigWidget(); - if (m_deployConfigurationWidget) { - m_deployConfigurationWidget->init(dc); + if (m_deployConfigurationWidget) m_deployLayout->addWidget(m_deployConfigurationWidget); - } m_deploySteps = new BuildStepListWidget; m_deploySteps->init(dc->stepList()); diff --git a/src/plugins/qnx/blackberrydeployconfiguration.cpp b/src/plugins/qnx/blackberrydeployconfiguration.cpp index 5c3de649fe891c5852e3a7045d82989e3d763797..ef16e6a6ada051ac6ce9189b6b281210a3ec2b00 100644 --- a/src/plugins/qnx/blackberrydeployconfiguration.cpp +++ b/src/plugins/qnx/blackberrydeployconfiguration.cpp @@ -161,5 +161,5 @@ BlackBerryDeployInformation *BlackBerryDeployConfiguration::deploymentInfo() con ProjectExplorer::DeployConfigurationWidget *BlackBerryDeployConfiguration::createConfigWidget() { - return new BlackBerryDeployConfigurationWidget; + return new BlackBerryDeployConfigurationWidget(this); } diff --git a/src/plugins/qnx/blackberrydeployconfigurationwidget.cpp b/src/plugins/qnx/blackberrydeployconfigurationwidget.cpp index 38b4172a07b99af5e4e142f7e433ba59d2eb6169..8cfb92b63d054c40935ced07b099489acaa6edb3 100644 --- a/src/plugins/qnx/blackberrydeployconfigurationwidget.cpp +++ b/src/plugins/qnx/blackberrydeployconfigurationwidget.cpp @@ -43,22 +43,14 @@ using namespace Qnx; using namespace Qnx::Internal; -BlackBerryDeployConfigurationWidget::BlackBerryDeployConfigurationWidget(QWidget *parent) +BlackBerryDeployConfigurationWidget::BlackBerryDeployConfigurationWidget(BlackBerryDeployConfiguration *dc, + QWidget *parent) : ProjectExplorer::DeployConfigurationWidget(parent) , m_ui(new Ui::BlackBerryDeployConfigurationWidget) , m_deployConfiguration(0) { m_ui->setupUi(this); -} - -BlackBerryDeployConfigurationWidget::~BlackBerryDeployConfigurationWidget() -{ - delete m_ui; -} - -void BlackBerryDeployConfigurationWidget::init(ProjectExplorer::DeployConfiguration *dc) -{ - m_deployConfiguration = qobject_cast<BlackBerryDeployConfiguration *>(dc); + m_deployConfiguration = dc; m_ui->deployPackagesView->setModel(m_deployConfiguration->deploymentInfo()); @@ -75,3 +67,8 @@ void BlackBerryDeployConfigurationWidget::init(ProjectExplorer::DeployConfigurat m_ui->deployPackagesView->header()->resizeSections(QHeaderView::ResizeToContents); } + +BlackBerryDeployConfigurationWidget::~BlackBerryDeployConfigurationWidget() +{ + delete m_ui; +} diff --git a/src/plugins/qnx/blackberrydeployconfigurationwidget.h b/src/plugins/qnx/blackberrydeployconfigurationwidget.h index d2451f64bbf02efe32dc5f1a34d860b3c6e5f837..294d43ab2e5c0fcc5e74afa44140be6cc30bf232 100644 --- a/src/plugins/qnx/blackberrydeployconfigurationwidget.h +++ b/src/plugins/qnx/blackberrydeployconfigurationwidget.h @@ -47,11 +47,9 @@ class BlackBerryDeployConfigurationWidget : public ProjectExplorer::DeployConfig { Q_OBJECT public: - explicit BlackBerryDeployConfigurationWidget(QWidget *parent = 0); + explicit BlackBerryDeployConfigurationWidget(BlackBerryDeployConfiguration *dc, QWidget *parent = 0); ~BlackBerryDeployConfigurationWidget(); - void init(ProjectExplorer::DeployConfiguration *dc); - private: Ui::BlackBerryDeployConfigurationWidget *m_ui; diff --git a/src/plugins/remotelinux/remotelinuxdeployconfiguration.cpp b/src/plugins/remotelinux/remotelinuxdeployconfiguration.cpp index 2bbc59a1803a45d26af9ab23e643105eaa2b7c1a..4fefd16139d1a5c415e22bb3ce8dd1708e860277 100644 --- a/src/plugins/remotelinux/remotelinuxdeployconfiguration.cpp +++ b/src/plugins/remotelinux/remotelinuxdeployconfiguration.cpp @@ -53,7 +53,7 @@ RemoteLinuxDeployConfiguration::RemoteLinuxDeployConfiguration(ProjectExplorer:: DeployConfigurationWidget *RemoteLinuxDeployConfiguration::createConfigWidget() { - return new RemoteLinuxDeployConfigurationWidget; + return new RemoteLinuxDeployConfigurationWidget(this); } } // namespace RemoteLinux diff --git a/src/plugins/remotelinux/remotelinuxdeployconfigurationwidget.cpp b/src/plugins/remotelinux/remotelinuxdeployconfigurationwidget.cpp index fb1169f142e086ab5c2104c985977fcc05b0a822..9a0efb915c4483f1578569325b48bc34a9488116 100644 --- a/src/plugins/remotelinux/remotelinuxdeployconfigurationwidget.cpp +++ b/src/plugins/remotelinux/remotelinuxdeployconfigurationwidget.cpp @@ -53,7 +53,8 @@ public: using namespace Internal; -RemoteLinuxDeployConfigurationWidget::RemoteLinuxDeployConfigurationWidget(QWidget *parent) : +RemoteLinuxDeployConfigurationWidget::RemoteLinuxDeployConfigurationWidget(RemoteLinuxDeployConfiguration *dc, + QWidget *parent) : DeployConfigurationWidget(parent), d(new RemoteLinuxDeployConfigurationWidgetPrivate) { d->ui.setupUi(this); @@ -61,6 +62,11 @@ RemoteLinuxDeployConfigurationWidget::RemoteLinuxDeployConfigurationWidget(QWidg d->ui.deploymentDataView->setWordWrap(false); d->ui.deploymentDataView->setUniformRowHeights(true); d->ui.deploymentDataView->setModel(&d->deploymentDataModel); + + d->deployConfiguration = dc; + + connect(dc->target(), SIGNAL(deploymentDataChanged()), SLOT(updateDeploymentDataModel())); + updateDeploymentDataModel(); } RemoteLinuxDeployConfigurationWidget::~RemoteLinuxDeployConfigurationWidget() @@ -68,15 +74,6 @@ RemoteLinuxDeployConfigurationWidget::~RemoteLinuxDeployConfigurationWidget() delete d; } -void RemoteLinuxDeployConfigurationWidget::init(DeployConfiguration *dc) -{ - d->deployConfiguration = qobject_cast<RemoteLinuxDeployConfiguration *>(dc); - QTC_ASSERT(d->deployConfiguration, return); - - connect(dc->target(), SIGNAL(deploymentDataChanged()), SLOT(updateDeploymentDataModel())); - updateDeploymentDataModel(); -} - void RemoteLinuxDeployConfigurationWidget::updateDeploymentDataModel() { d->deploymentDataModel.setDeploymentData(d->deployConfiguration->target()->deploymentData()); diff --git a/src/plugins/remotelinux/remotelinuxdeployconfigurationwidget.h b/src/plugins/remotelinux/remotelinuxdeployconfigurationwidget.h index 0c032862cee1a00d41e2cb330895817474e382c5..fa9a7379595474ff6eac5d0b362ce289097675e5 100644 --- a/src/plugins/remotelinux/remotelinuxdeployconfigurationwidget.h +++ b/src/plugins/remotelinux/remotelinuxdeployconfigurationwidget.h @@ -34,6 +34,8 @@ #include <projectexplorer/deployconfiguration.h> namespace RemoteLinux { +class RemoteLinuxDeployConfiguration; + namespace Internal { class RemoteLinuxDeployConfigurationWidgetPrivate; } // namespace Internal @@ -44,11 +46,10 @@ class REMOTELINUX_EXPORT RemoteLinuxDeployConfigurationWidget Q_OBJECT public: - explicit RemoteLinuxDeployConfigurationWidget(QWidget *parent = 0); + explicit RemoteLinuxDeployConfigurationWidget(RemoteLinux::RemoteLinuxDeployConfiguration *dc, + QWidget *parent = 0); ~RemoteLinuxDeployConfigurationWidget(); - void init(ProjectExplorer::DeployConfiguration *dc); - private slots: void updateDeploymentDataModel();