From 16e9d050b8c8a6f43d4a1dcb1e39be9ecaddac69 Mon Sep 17 00:00:00 2001
From: ck <qt-info@nokia.com>
Date: Wed, 28 Jul 2010 16:03:11 +0200
Subject: [PATCH] Maemo: Always show correct package path.

We now react to the build directory being changed.

Reviewed-by: kh1
---
 .../qt-maemo/maemopackagecreationstep.cpp                | 9 +++++++++
 .../qt-maemo/maemopackagecreationstep.h                  | 4 ++++
 .../qt-maemo/maemopackagecreationwidget.cpp              | 3 ++-
 3 files changed, 15 insertions(+), 1 deletion(-)

diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.cpp b/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.cpp
index 0b1dfa2f8de..6734d2058bc 100644
--- a/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.cpp
+++ b/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.cpp
@@ -78,6 +78,7 @@ MaemoPackageCreationStep::MaemoPackageCreationStep(BuildConfiguration *buildConf
       m_packagingEnabled(true),
       m_versionString(DefaultVersionNumber)
 {
+    ctor();
 }
 
 MaemoPackageCreationStep::MaemoPackageCreationStep(BuildConfiguration *buildConfig,
@@ -86,12 +87,19 @@ MaemoPackageCreationStep::MaemoPackageCreationStep(BuildConfiguration *buildConf
       m_packagingEnabled(other->m_packagingEnabled),
       m_versionString(other->m_versionString)
 {
+    ctor();
 }
 
 MaemoPackageCreationStep::~MaemoPackageCreationStep()
 {
 }
 
+void MaemoPackageCreationStep::ctor()
+{
+    connect(buildConfiguration(), SIGNAL(buildDirectoryChanged()), this,
+        SIGNAL(packageFilePathChanged()));
+}
+
 bool MaemoPackageCreationStep::init()
 {
     return true;
@@ -367,6 +375,7 @@ QString MaemoPackageCreationStep::versionString() const
 void MaemoPackageCreationStep::setVersionString(const QString &version)
 {
     m_versionString = version;
+    emit packageFilePathChanged();
 }
 
 QString MaemoPackageCreationStep::nativePath(const QFile &file) const
diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.h b/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.h
index 17d8f3ee060..fe140b88d1e 100644
--- a/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.h
+++ b/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationstep.h
@@ -75,6 +75,9 @@ public:
     QString versionString() const;
     void setVersionString(const QString &version);
 
+signals:
+    void packageFilePathChanged();
+
 private slots:
     void handleBuildOutput();
 
@@ -82,6 +85,7 @@ private:
     MaemoPackageCreationStep(ProjectExplorer::BuildConfiguration *buildConfig,
                              MaemoPackageCreationStep *other);
 
+    void ctor();
     virtual bool init();
     virtual void run(QFutureInterface<bool> &fi);
     virtual ProjectExplorer::BuildStepConfigWidget *createConfigWidget();
diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationwidget.cpp b/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationwidget.cpp
index fae213969fd..834e20c4f1b 100644
--- a/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationwidget.cpp
+++ b/src/plugins/qt4projectmanager/qt-maemo/maemopackagecreationwidget.cpp
@@ -66,6 +66,8 @@ MaemoPackageCreationWidget::MaemoPackageCreationWidget(MaemoPackageCreationStep
     m_ui->minor->setValue(list.value(1, QLatin1String("0")).toInt());
     m_ui->patch->setValue(list.value(2, QLatin1String("0")).toInt());
     versionInfoChanged();
+    connect(m_step, SIGNAL(packageFilePathChanged()), this,
+        SIGNAL(updateSummary()));
 }
 
 void MaemoPackageCreationWidget::init()
@@ -94,7 +96,6 @@ void MaemoPackageCreationWidget::versionInfoChanged()
 {
     m_step->setVersionString(m_ui->major->text() + QLatin1Char('.')
         + m_ui->minor->text() + QLatin1Char('.') + m_ui->patch->text());
-    emit updateSummary();
 }
 
 } // namespace Internal
-- 
GitLab