aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/projectexplorer
diff options
context:
space:
mode:
authorThorbjørn Lindeijer <thorbjorn.lindeijer@nokia.com>2010-03-22 18:05:22 +0100
committerThorbjørn Lindeijer <thorbjorn.lindeijer@nokia.com>2010-03-23 15:35:22 +0100
commit510971d2169dc346ba36589de87d7c3bebc182bc (patch)
tree53e43cc7e671a32bf87623ba9f71a68d9abd5d79 /src/plugins/projectexplorer
parenta3b7290f37a05e45cc61953cd15ebcc1f3842f3e (diff)
Introduced a single convenient function for updating additional contexts
While before you had to call add, then remove for each context id and then call update, now you call updateAdditionalContexts with a list of contexts to remove and add. It has the update step built in. Reviewed-by: con
Diffstat (limited to 'src/plugins/projectexplorer')
-rw-r--r--src/plugins/projectexplorer/projectexplorer.cpp21
1 files changed, 8 insertions, 13 deletions
diff --git a/src/plugins/projectexplorer/projectexplorer.cpp b/src/plugins/projectexplorer/projectexplorer.cpp
index 34c2216138..485eaebf31 100644
--- a/src/plugins/projectexplorer/projectexplorer.cpp
+++ b/src/plugins/projectexplorer/projectexplorer.cpp
@@ -1325,24 +1325,19 @@ void ProjectExplorerPlugin::setCurrent(Project *project, QString filePath, Node
bool projectChanged = false;
if (d->m_currentProject != project) {
- int oldContext = -1;
- int newContext = -1;
- int oldLanguageID = -1;
- int newLanguageID = -1;
+ QList<int> oldContext;
+ QList<int> newContext;
+
if (d->m_currentProject) {
- oldContext = d->m_currentProject->projectManager()->projectContext();
- oldLanguageID = d->m_currentProject->projectManager()->projectLanguage();
+ oldContext.append(d->m_currentProject->projectManager()->projectContext());
+ oldContext.append(d->m_currentProject->projectManager()->projectLanguage());
}
if (project) {
- newContext = project->projectManager()->projectContext();
- newLanguageID = project->projectManager()->projectLanguage();
+ newContext.append(project->projectManager()->projectContext());
+ newContext.append(project->projectManager()->projectLanguage());
}
- core->removeAdditionalContext(oldContext);
- core->removeAdditionalContext(oldLanguageID);
- core->addAdditionalContext(newContext);
- core->addAdditionalContext(newLanguageID);
- core->updateContext();
+ core->updateAdditionalContexts(oldContext, newContext);
d->m_currentProject = project;