ProjectExplorer: Introduce and use a Target::buildSystemUpdated signal

Change-Id: I497d46866146600a1ed9162bd720c574ee4d4769
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
hjk
2019-11-15 15:44:45 +01:00
parent 738bbf1a87
commit c2127c9ec4
21 changed files with 52 additions and 38 deletions

View File

@@ -620,6 +620,7 @@ void QbsBuildSystem::updateAfterParse()
updateQmlJsCodeModel();
emit project()->fileListChanged();
m_envCache.clear();
emitBuildSystemUpdated();
}
void QbsBuildSystem::delayedUpdateAfterParse()
@@ -688,6 +689,11 @@ void QbsBuildSystem::handleQbsParsingDone(bool success)
updateCppCodeModel();
m_guard.markAsSuccess();
m_guard = {};
// This one used to change the executable path of a Qbs desktop run configuration
// in case the "install" check box in the build step is unchecked and then build
// is triggered (which is otherwise a no-op).
emitBuildSystemUpdated();
}
void QbsBuildSystem::rebuildProjectTree()
@@ -800,6 +806,7 @@ void QbsBuildSystem::updateAfterBuild()
DeploymentData deploymentDataTmp = deploymentData();
deploymentDataTmp.setLocalInstallRoot(installRoot());
setDeploymentData(deploymentDataTmp);
emitBuildSystemUpdated();
return;
}
qCDebug(qbsPmLog) << "Updating data after build";
@@ -1274,6 +1281,9 @@ void QbsBuildSystem::updateBuildTargetData()
OpTimer optimer("updateBuildTargetData");
updateApplicationTargets();
updateDeploymentInfo();
// This one used after a normal build.
emitBuildSystemUpdated();
}
} // namespace Internal