summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTobias Hunger <tobias.hunger@digia.com>2013-01-21 15:44:59 +0100
committerTobias Hunger <tobias.hunger@digia.com>2013-01-22 12:50:47 +0100
commit4d775ac56ac554b85c133d9eff5751d006c6171b (patch)
tree300a410909d4786e8fb071154d104def650a690e
parent47c3037c3df6be903228ecd5df04cc5f03020972 (diff)
downloadqt-creator-4d775ac56ac554b85c133d9eff5751d006c6171b.tar.gz
Kits: Fix editing of sysroot and mkspec
Task-number: QTCREATORBUG-8586 Change-Id: I074d7e85524e4dccef26c46391892477269648ce Reviewed-by: Daniel Teske <daniel.teske@digia.com>
-rw-r--r--src/plugins/projectexplorer/kitinformationconfigwidget.cpp8
-rw-r--r--src/plugins/projectexplorer/kitinformationconfigwidget.h1
-rw-r--r--src/plugins/qt4projectmanager/qmakekitconfigwidget.cpp8
-rw-r--r--src/plugins/qt4projectmanager/qmakekitconfigwidget.h1
4 files changed, 14 insertions, 4 deletions
diff --git a/src/plugins/projectexplorer/kitinformationconfigwidget.cpp b/src/plugins/projectexplorer/kitinformationconfigwidget.cpp
index 78e3927689..6908c013d0 100644
--- a/src/plugins/projectexplorer/kitinformationconfigwidget.cpp
+++ b/src/plugins/projectexplorer/kitinformationconfigwidget.cpp
@@ -56,7 +56,8 @@ namespace Internal {
SysRootInformationConfigWidget::SysRootInformationConfigWidget(Kit *k, QWidget *parent) :
KitConfigWidget(parent),
- m_kit(k)
+ m_kit(k),
+ m_ignoreChange(false)
{
setToolTip(tr("The root directory of the system image to use.<br>"
"Leave empty when building for the desktop."));
@@ -79,7 +80,8 @@ QString SysRootInformationConfigWidget::displayName() const
void SysRootInformationConfigWidget::refresh()
{
- m_chooser->setFileName(SysRootKitInformation::sysRoot(m_kit));
+ if (!m_ignoreChange)
+ m_chooser->setFileName(SysRootKitInformation::sysRoot(m_kit));
}
void SysRootInformationConfigWidget::makeReadOnly()
@@ -94,7 +96,9 @@ QWidget *SysRootInformationConfigWidget::buttonWidget() const
void SysRootInformationConfigWidget::pathWasChanged()
{
+ m_ignoreChange = true;
SysRootKitInformation::setSysRoot(m_kit, m_chooser->fileName());
+ m_ignoreChange = false;
}
// --------------------------------------------------------------------------
diff --git a/src/plugins/projectexplorer/kitinformationconfigwidget.h b/src/plugins/projectexplorer/kitinformationconfigwidget.h
index 2f3aaf1dd0..54f02accda 100644
--- a/src/plugins/projectexplorer/kitinformationconfigwidget.h
+++ b/src/plugins/projectexplorer/kitinformationconfigwidget.h
@@ -71,6 +71,7 @@ private slots:
private:
Kit *m_kit;
Utils::PathChooser *m_chooser;
+ bool m_ignoreChange;
};
// --------------------------------------------------------------------------
diff --git a/src/plugins/qt4projectmanager/qmakekitconfigwidget.cpp b/src/plugins/qt4projectmanager/qmakekitconfigwidget.cpp
index d5546f90b1..95f7e2ec5a 100644
--- a/src/plugins/qt4projectmanager/qmakekitconfigwidget.cpp
+++ b/src/plugins/qt4projectmanager/qmakekitconfigwidget.cpp
@@ -44,7 +44,8 @@ namespace Internal {
QmakeKitConfigWidget::QmakeKitConfigWidget(ProjectExplorer::Kit *k, QWidget *parent) :
ProjectExplorer::KitConfigWidget(parent),
m_kit(k),
- m_lineEdit(new QLineEdit)
+ m_lineEdit(new QLineEdit),
+ m_ignoreChange(false)
{
setToolTip(tr("The mkspec to use when building the project with qmake.<br>"
"This setting is ignored when using other build systems."));
@@ -70,12 +71,15 @@ void QmakeKitConfigWidget::makeReadOnly()
void QmakeKitConfigWidget::refresh()
{
- m_lineEdit->setText(QmakeKitInformation::mkspec(m_kit).toString());
+ if (!m_ignoreChange)
+ m_lineEdit->setText(QmakeKitInformation::mkspec(m_kit).toUserOutput());
}
void QmakeKitConfigWidget::mkspecWasChanged(const QString &text)
{
+ m_ignoreChange = true;
QmakeKitInformation::setMkspec(m_kit, Utils::FileName::fromString(text));
+ m_ignoreChange = false;
}
} // namespace Internal
diff --git a/src/plugins/qt4projectmanager/qmakekitconfigwidget.h b/src/plugins/qt4projectmanager/qmakekitconfigwidget.h
index 0f2f9227e3..b9d6b5f2ed 100644
--- a/src/plugins/qt4projectmanager/qmakekitconfigwidget.h
+++ b/src/plugins/qt4projectmanager/qmakekitconfigwidget.h
@@ -62,6 +62,7 @@ private:
ProjectExplorer::Kit *m_kit;
QLineEdit *m_lineEdit;
+ bool m_ignoreChange;
};
} // namespace Internal