aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/projectexplorer
diff options
context:
space:
mode:
authordt <qtc-committer@nokia.com>2010-03-29 13:43:41 +0200
committerdt <qtc-committer@nokia.com>2010-03-29 15:17:19 +0200
commit58497e46a6652536c59412e84c9ec992393053e2 (patch)
treef7b99747cf79f46f772d5a2a4ddd90a96f0e4d73 /src/plugins/projectexplorer
parente813f280931d8eba05baa971e28957bb4d8c79f3 (diff)
Fix restoring of default sessions
They appeared to be always empty. Task-Nr: QTCREATORBUG-977
Diffstat (limited to 'src/plugins/projectexplorer')
-rw-r--r--src/plugins/projectexplorer/session.cpp15
-rw-r--r--src/plugins/projectexplorer/session.h2
2 files changed, 9 insertions, 8 deletions
diff --git a/src/plugins/projectexplorer/session.cpp b/src/plugins/projectexplorer/session.cpp
index da7ad5254c..dcd120f1a0 100644
--- a/src/plugins/projectexplorer/session.cpp
+++ b/src/plugins/projectexplorer/session.cpp
@@ -381,7 +381,7 @@ SessionManager::SessionManager(QObject *parent)
m_file(new SessionFile),
m_sessionNode(new Internal::SessionNodeImpl(this)),
m_currentEditor(0),
- m_defaultVirginSession(true)
+ m_virginSession(true)
{
// Create qtcreator dir if it doesn't yet exist
QString configDir = QFileInfo(m_core->settings()->fileName()).path();
@@ -435,7 +435,8 @@ SessionManager::~SessionManager()
bool SessionManager::isDefaultVirgin() const
{
- return m_defaultVirginSession;
+ return isDefaultSession(m_sessionName)
+ && m_virginSession;
}
bool SessionManager::isDefaultSession(const QString &session) const
@@ -573,7 +574,7 @@ void SessionManager::addProject(Project *project)
void SessionManager::addProjects(const QList<Project*> &projects)
{
- m_defaultVirginSession = false;
+ m_virginSession = false;
QList<Project*> clearedList;
foreach (Project *pro, projects) {
if (!m_file->m_projects.contains(pro)) {
@@ -604,7 +605,7 @@ void SessionManager::addProjects(const QList<Project*> &projects)
void SessionManager::removeProject(Project *project)
{
- m_defaultVirginSession = false;
+ m_virginSession = false;
if (project == 0) {
qDebug() << "SessionManager::removeProject(0) ... THIS SHOULD NOT HAPPEN";
return;
@@ -634,7 +635,7 @@ bool SessionManager::createImpl(const QString &fileName)
setStartupProject(0);
}
- m_defaultVirginSession = false;
+ m_virginSession = true;
if (debug)
qDebug() << "SessionManager - creating new session returns " << success;
@@ -662,7 +663,7 @@ bool SessionManager::loadImpl(const QString &fileName)
}
}
- m_defaultVirginSession = false;
+ m_virginSession = false;
if (success) {
emit aboutToUnloadSession();
@@ -1144,7 +1145,7 @@ void SessionManager::markSessionFileDirty(bool makeDefaultVirginDirty)
if (m_file && !m_file->fileName().isEmpty())
m_autoSaveSessionTimer->start();
if (makeDefaultVirginDirty)
- m_defaultVirginSession = false;
+ m_virginSession = false;
}
#include "session.moc"
diff --git a/src/plugins/projectexplorer/session.h b/src/plugins/projectexplorer/session.h
index 16397e4a1f..91dfd5535d 100644
--- a/src/plugins/projectexplorer/session.h
+++ b/src/plugins/projectexplorer/session.h
@@ -194,7 +194,7 @@ private:
QPointer<Core::IEditor> m_currentEditor;
QString m_displayName;
QString m_sessionName;
- bool m_defaultVirginSession;
+ bool m_virginSession;
mutable QStringList m_sessions;