Subversion Repositories spk

Rev

Rev 121 | Rev 125 | 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
121 cycrow 21
	bool exists() const;
22
	bool exists(const Utils::String &dir) const;
23
	bool isDir() const;
24
	bool isDir(const Utils::String &dir) const;
25
	bool isFile() const;
26
	bool isFile(const Utils::String &dir) const;
1 cycrow 27
	bool Exists(CyString dir = NullString);
28
	bool IsDir(CyString dir = NullString);
29
	bool IsFile(CyString dir = NullString);
30
 
31
	// directory handling
32
	bool Create(CyString dir = NullString);
33
	bool CreateAndChange(CyString dir);
34
 
35
	bool Move(CyString from, CyString to);
36
	bool RemoveDir(CyString dir, bool doFiles = false, bool recursive = false, CyStringList *errors = NULL);
37
	bool cd(CyString dir);
38
 
124 cycrow 39
	bool dirList(Utils::CStringList &files, Utils::String dir = Utils::String::Null(), Utils::String filePattern = Utils::String::Null()) const;
121 cycrow 40
	Utils::CStringList dirList(Utils::String dir = Utils::String::Null(), Utils::String filePattern = Utils::String::Null()) const;
1 cycrow 41
	CyStringList *DirList(CyString dir = NullString, CyString filepattern = NullString);
42
	bool CheckEmptyDir(CyStringList *dirList);
43
 
44
	CyString File(CyString filename);
121 cycrow 45
	Utils::String file(const Utils::String &filename) const;
1 cycrow 46
	CyString Dir(CyString dir = NullString);
85 cycrow 47
	Utils::String dir(const Utils::String &sDir) const;
48
	const Utils::String &dir() const;
121 cycrow 49
	Utils::String topDir() const;
1 cycrow 50
	CyString Back();
51
 
52
private:
53
	CyString ParseDir(CyString dir);
85 cycrow 54
	Utils::String parseDir(const Utils::String &dir) const;
1 cycrow 55
 
85 cycrow 56
	Utils::String m_sCurrentDir;
1 cycrow 57
};
58
 
59
#endif //__DIRIO_H__