Subversion Repositories spk

Rev

Rev 1 | Rev 119 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1 cycrow 1
#ifndef __DIRIO_H__
2
#define __DIRIO_H__
3
 
4
#include "StringList.h"
5
#include "spkdll.h"
6
 
7
class CFileIO;
8
 
9
class SPKEXPORT CDirIO
10
{
11
public:
12
	CDirIO ();
13
	CDirIO ( CyString dir );
14
	CDirIO ( CFileIO *file );
15
	~CDirIO ();
16
 
17
	void SetDir(CyString dir);
18
 
19
	// access functions
20
	bool Exists(CyString dir = NullString);
21
	bool IsDir(CyString dir = NullString);
22
	bool IsFile(CyString dir = NullString);
23
 
24
	// directory handling
25
	bool Create(CyString dir = NullString);
26
	bool CreateAndChange(CyString dir);
27
 
28
	bool Move(CyString from, CyString to);
29
	bool RemoveDir(CyString dir, bool doFiles = false, bool recursive = false, CyStringList *errors = NULL);
30
	bool cd(CyString dir);
31
 
32
	CyStringList *DirList(CyString dir = NullString, CyString filepattern = NullString);
33
	bool CheckEmptyDir(CyStringList *dirList);
34
 
35
	CyString File(CyString filename);
36
	CyString Dir(CyString dir = NullString);
85 cycrow 37
	Utils::String dir(const Utils::String &sDir) const;
38
	const Utils::String &dir() const;
1 cycrow 39
	CyString TopDir();
40
	CyString Back();
41
 
42
private:
43
	CyString ParseDir(CyString dir);
85 cycrow 44
	Utils::String parseDir(const Utils::String &dir) const;
1 cycrow 45
 
85 cycrow 46
	Utils::String m_sCurrentDir;
1 cycrow 47
};
48
 
49
#endif //__DIRIO_H__