Play-/Source/saves/SaveImporterBase.cpp

39 lines
792 B
C++
Raw Normal View History

#include "SaveImporterBase.h"
CSaveImporterBase::CSaveImporterBase()
2018-04-30 21:01:23 +01:00
: m_overwriteAll(false)
{
}
CSaveImporterBase::~CSaveImporterBase()
{
}
void CSaveImporterBase::SetOverwritePromptHandler(const OverwritePromptHandlerType& overwritePromptHandler)
{
m_overwritePromptHandler = overwritePromptHandler;
}
2019-10-16 20:51:11 -04:00
bool CSaveImporterBase::CanExtractFile(const fs::path& filePath)
{
2019-10-16 20:51:11 -04:00
if(!fs::exists(filePath)) return true;
if(m_overwriteAll) return true;
if(!m_overwritePromptHandler) return true;
2019-10-16 20:51:11 -04:00
auto result = m_overwritePromptHandler(fs::absolute(filePath).string());
switch(result)
{
case OVERWRITE_YESTOALL:
m_overwriteAll = true;
case OVERWRITE_YES:
return true;
break;
case OVERWRITE_NO:
return false;
break;
}
2018-04-30 21:01:23 +01:00
return false;
}