forked from qt-creator/qt-creator
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:
@@ -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;
|
||||
}
|
||||
|
Reference in New Issue
Block a user