about summary refs log tree commit diff
path: root/src/engine
diff options
context:
space:
mode:
authorChoupom <andycootlapin@hotmail.fr>2010-09-03 20:05:22 +0200
committeroy <Tom_Adams@web.de>2010-09-05 17:40:51 +0200
commitfcfaa8389f968bc89fbd4afbfc70ea7c3815c7bb (patch)
tree1633fe299e51715b94a07bc14637399ccd356dae /src/engine
parent2800832e12684b5961bbef5291922d11e23b032a (diff)
downloadzcatch-fcfaa8389f968bc89fbd4afbfc70ea7c3815c7bb.tar.gz
zcatch-fcfaa8389f968bc89fbd4afbfc70ea7c3815c7bb.zip
added Remove button in demos browser (#66)
Diffstat (limited to 'src/engine')
-rw-r--r--src/engine/shared/storage.cpp13
-rw-r--r--src/engine/storage.h1
2 files changed, 14 insertions, 0 deletions
diff --git a/src/engine/shared/storage.cpp b/src/engine/shared/storage.cpp
index e8b0f8bb..74f7cd3f 100644
--- a/src/engine/shared/storage.cpp
+++ b/src/engine/shared/storage.cpp
@@ -1,4 +1,5 @@
 // copyright (c) 2007 magnus auvinen, see licence.txt for more info
+#include <stdio.h> //remove()
 #include <base/system.h>
 #include <engine/storage.h>
 #include "engine.h"
@@ -193,6 +194,18 @@ public:
 		pBuffer[0] = 0;
 		return 0;		
 	}
+ 	
+	virtual bool RemoveFile(const char *pFilename)
+	{
+		char aBuffer[1024];
+		str_format(aBuffer, sizeof(aBuffer), "%s/%s", m_aApplicationSavePath, pFilename);
+		bool Fail = remove(aBuffer);
+		
+		if(Fail)
+			Fail = remove(pFilename);
+		
+		return !Fail;
+	}
 
 	static IStorage *Create(const char *pApplicationName, int NumArgs, const char **ppArguments)
 	{
diff --git a/src/engine/storage.h b/src/engine/storage.h
index 4c80446e..c79f16a8 100644
--- a/src/engine/storage.h
+++ b/src/engine/storage.h
@@ -17,6 +17,7 @@ public:
 	
 	virtual void ListDirectory(int Types, const char *pPath, FS_LISTDIR_CALLBACK pfnCallback, void *pUser) = 0;
 	virtual IOHANDLE OpenFile(const char *pFilename, int Flags, char *pBuffer = 0, int BufferSize = 0) = 0;
+	virtual bool RemoveFile(const char *pFilename) = 0;
 };
 
 extern IStorage *CreateStorage(const char *pApplicationName, int NumArgs, const char **ppArguments);