Don't ask to reload the file, if the user uses git/undo or git/revert.

Simply do it.

Task-Nr: 254558
This commit is contained in:
dt
2009-06-18 14:30:04 +02:00
parent 69d04bc069
commit 4637d56284
6 changed files with 67 additions and 26 deletions

View File

@@ -602,3 +602,33 @@ QList<IFile *> FileManager::managedFiles(const QString &fileName) const
}
return result;
}
FileChangeBlocker::FileChangeBlocker(const QString &fileName)
: m_reload(false)
{
Core::FileManager *fm = Core::ICore::instance()->fileManager();
m_files = fm->managedFiles(fileName);
foreach (Core::IFile *file, m_files)
fm->blockFileChange(file);
}
FileChangeBlocker::~FileChangeBlocker()
{
Core::IFile::ReloadBehavior tempBehavior = Core::IFile::ReloadAll;
Core::FileManager *fm = Core::ICore::instance()->fileManager();
foreach (Core::IFile *file, m_files) {
if (m_reload)
file->modified(&tempBehavior);
fm->unblockFileChange(file);
}
}
void FileChangeBlocker::setModifiedReload(bool b)
{
m_reload = b;
}
bool FileChangeBlocker::modifiedReload() const
{
return m_reload;
}