summaryrefslogtreecommitdiff
path: root/src/plugins/projectexplorer/kitinformation.cpp
diff options
context:
space:
mode:
authorDaniel Teske <daniel.teske@digia.com>2012-10-17 17:27:17 +0200
committerTobias Hunger <tobias.hunger@digia.com>2012-10-19 11:47:16 +0200
commitaedc4d6e3d579b515dac9ac2ca250f25ab548fea (patch)
tree44368f0579871ed710e6526dc1fe1a2a8347a114 /src/plugins/projectexplorer/kitinformation.cpp
parent22327b0fa1e1e081d320aaa55867a998e5a3a2f8 (diff)
downloadqt-creator-aedc4d6e3d579b515dac9ac2ca250f25ab548fea.tar.gz
Kit: emit kitUpdated signals on changes to devices/toolchains/qt
That is even if the id did not change, but the actual objects for those ids changed. Change-Id: Ib176f18cf66b11436d046bf08a81db27fce458f9 Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
Diffstat (limited to 'src/plugins/projectexplorer/kitinformation.cpp')
-rw-r--r--src/plugins/projectexplorer/kitinformation.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/plugins/projectexplorer/kitinformation.cpp b/src/plugins/projectexplorer/kitinformation.cpp
index 50c721c2e6..6d0b3a6406 100644
--- a/src/plugins/projectexplorer/kitinformation.cpp
+++ b/src/plugins/projectexplorer/kitinformation.cpp
@@ -130,6 +130,8 @@ ToolChainKitInformation::ToolChainKitInformation()
this, SIGNAL(validationNeeded()));
connect(ToolChainManager::instance(), SIGNAL(toolChainUpdated(ProjectExplorer::ToolChain*)),
this, SIGNAL(validationNeeded()));
+ connect(ToolChainManager::instance(), SIGNAL(toolChainUpdated(ProjectExplorer::ToolChain*)),
+ this, SLOT(toolChainUpdated(ProjectExplorer::ToolChain*)));
}
Core::Id ToolChainKitInformation::dataId() const
@@ -235,6 +237,13 @@ QString ToolChainKitInformation::msgNoToolChainInTarget()
return tr("No compiler set in kit.");
}
+void ToolChainKitInformation::toolChainUpdated(ToolChain *tc)
+{
+ foreach (Kit *k, KitManager::instance()->kits())
+ if (toolChain(k) == tc)
+ notifyAboutUpdate(k);
+}
+
// --------------------------------------------------------------------------
// DeviceTypeInformation:
// --------------------------------------------------------------------------
@@ -317,6 +326,8 @@ DeviceKitInformation::DeviceKitInformation()
this, SIGNAL(validationNeeded()));
connect(DeviceManager::instance(), SIGNAL(deviceUpdated(Core::Id)),
this, SIGNAL(validationNeeded()));
+ connect(DeviceManager::instance(), SIGNAL(deviceUpdated(Core::Id)),
+ this, SLOT(deviceUpdated(Core::Id)));
}
Core::Id DeviceKitInformation::dataId() const
@@ -403,4 +414,11 @@ void DeviceKitInformation::setDeviceId(Kit *k, const Core::Id id)
k->setValue(Core::Id(DEVICE_INFORMATION), id.toString());
}
+void DeviceKitInformation::deviceUpdated(const Core::Id &id)
+{
+ foreach (Kit *k, KitManager::instance()->kits())
+ if (deviceId(k) == id)
+ notifyAboutUpdate(k);
+}
+
} // namespace ProjectExplorer