Subversion Repositories spk

Rev

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