diff options
author | Tobias Hunger <tobias.hunger@theqtcompany.com> | 2014-11-24 16:52:07 +0100 |
---|---|---|
committer | Tobias Hunger <tobias.hunger@theqtcompany.com> | 2014-11-26 12:33:26 +0100 |
commit | 9e501ee8f11486e4686e2a6f38d9993f78989f91 (patch) | |
tree | 3f3765a09f3346981e17f6ad809cbb6dc3636c74 | |
parent | 80b5e8b9f0f789229526ef738c3200c1726fcc00 (diff) | |
download | qt-creator-9e501ee8f11486e4686e2a6f38d9993f78989f91.tar.gz |
Kits: Validate current displayname when changing it
We used to validate the displayname set before the last change,
which is not really useful:-)
Task-number: QTCREATORBUG-13424
Change-Id: Ia71f82d0ab0c8d6392be8dbd8fccad7fb9230b2d
Reviewed-by: Daniel Teske <daniel.teske@theqtcompany.com>
-rw-r--r-- | src/plugins/projectexplorer/kitmanagerconfigwidget.cpp | 12 | ||||
-rw-r--r-- | src/plugins/projectexplorer/kitmanagerconfigwidget.h | 2 |
2 files changed, 8 insertions, 6 deletions
diff --git a/src/plugins/projectexplorer/kitmanagerconfigwidget.cpp b/src/plugins/projectexplorer/kitmanagerconfigwidget.cpp index 4f93eb55fc..ab986509b4 100644 --- a/src/plugins/projectexplorer/kitmanagerconfigwidget.cpp +++ b/src/plugins/projectexplorer/kitmanagerconfigwidget.cpp @@ -141,7 +141,9 @@ KitManagerConfigWidget::~KitManagerConfigWidget() QString KitManagerConfigWidget::displayName() const { - return m_displayName; + if (m_cachedDisplayName.isEmpty()) + m_cachedDisplayName = m_modifiedKit->displayName(); + return m_cachedDisplayName; } void KitManagerConfigWidget::apply() @@ -175,7 +177,7 @@ void KitManagerConfigWidget::discard() } m_iconButton->setIcon(m_modifiedKit->icon()); m_nameEdit->setText(m_modifiedKit->unexpandedDisplayName()); - m_displayName = m_modifiedKit->displayName(); + m_cachedDisplayName.clear(); m_fileSystemFriendlyNameLineEdit->setText(m_modifiedKit->customFileSystemFriendlyName()); emit dirty(); } @@ -315,9 +317,9 @@ void KitManagerConfigWidget::setIcon() void KitManagerConfigWidget::setDisplayName() { int pos = m_nameEdit->cursorPosition(); + m_cachedDisplayName.clear(); m_modifiedKit->setUnexpandedDisplayName(m_nameEdit->text()); m_nameEdit->setCursorPosition(pos); - m_displayName = m_modifiedKit->displayName(); } void KitManagerConfigWidget::setFileSystemFriendlyName() @@ -339,11 +341,11 @@ void KitManagerConfigWidget::workingCopyWasUpdated(Kit *k) foreach (KitConfigWidget *w, m_widgets) w->refresh(); + m_cachedDisplayName.clear(); + if (k->unexpandedDisplayName() != m_nameEdit->text()) m_nameEdit->setText(k->unexpandedDisplayName()); - m_displayName = k->displayName(); - m_fileSystemFriendlyNameLineEdit->setText(k->customFileSystemFriendlyName()); m_iconButton->setIcon(k->icon()); updateVisibility(); diff --git a/src/plugins/projectexplorer/kitmanagerconfigwidget.h b/src/plugins/projectexplorer/kitmanagerconfigwidget.h index 51651c75c3..e7b5dddc3a 100644 --- a/src/plugins/projectexplorer/kitmanagerconfigwidget.h +++ b/src/plugins/projectexplorer/kitmanagerconfigwidget.h @@ -109,7 +109,7 @@ private: bool m_hasUniqueName; QPixmap m_background; QList<QAction *> m_actions; - QString m_displayName; + mutable QString m_cachedDisplayName; }; } // namespace Internal |