*
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
#include "IFSFolder.h"
|
||||
|
||||
namespace LifeCore
|
||||
{
|
||||
IFSFolder::~IFSFolder(void)
|
||||
{
|
||||
for( FolderMap::iterator it = g_folderCollection.begin(); it != g_folderCollection.end(); it++ )
|
||||
delete it->second;
|
||||
}
|
||||
IFSFolder::IFSFolder()
|
||||
|
||||
{
|
||||
}
|
||||
IFSFolder::IFSFolder(const String& folderName, const String& entryName)
|
||||
{
|
||||
this->Name = folderName;
|
||||
this->EntryName = entryName;
|
||||
|
||||
CreateDirectoryA(EntryName.c_str(), NULL);
|
||||
}
|
||||
IFolder* IFSFolder::NewFolder(const String& name)
|
||||
{
|
||||
IFolder* test;
|
||||
if(this->GetFolder(name, &test) != SC_OK)
|
||||
{
|
||||
IFSFolder* newFolder = new IFSFolder(name, this->EntryName + name + _text("\\"));
|
||||
newFolder->setParent(this);
|
||||
newFolder->Provider = this->Provider;
|
||||
this->AddFolder(newFolder);
|
||||
return newFolder;
|
||||
}
|
||||
else
|
||||
{
|
||||
return test;
|
||||
}
|
||||
}
|
||||
IFile* IFSFolder::NewFile(const String& name, int size)
|
||||
{
|
||||
IFile* f;
|
||||
if(this->GetFile(name, &f) != SC_OK)
|
||||
{
|
||||
IFSFile* newFile = new IFSFile(this->EntryName + name, size);
|
||||
newFile->FileName = name;
|
||||
newFile->Provider = this->Provider;
|
||||
this->AddFile(newFile);
|
||||
return newFile;
|
||||
}
|
||||
else
|
||||
{
|
||||
return f;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user