root/swishctl/src/setup/paths.h

Revision 1232, 2.8 kB (checked in by augur, 5 years ago)

Initial revision

  • Property svn:eol-style set to native
  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
Line 
1 // paths.h: interface for the CDirectory class.
2 //
3 //////////////////////////////////////////////////////////////////////
4
5 #if !defined(AFX_PATHS_H__AE9DC3AE_4C19_4DEB_9074_053EF38B7400__INCLUDED_)
6 #define AFX_PATHS_H__AE9DC3AE_4C19_4DEB_9074_053EF38B7400__INCLUDED_
7
8 #if _MSC_VER > 1000
9 #pragma once
10 #endif // _MSC_VER > 1000
11
12
13
14 class CBuffer 
15 {
16 public:
17         virtual ~CBuffer ();
18         CBuffer (unsigned int maxsize);
19         CBuffer (unsigned int maxsize, CBuffer &source);
20         CBuffer (unsigned int maxsize, char *initialvalue);
21         void operator= (CBuffer &source);
22         void operator= (char *initialvalue);
23
24         virtual unsigned int getSize() {return buffersize;};
25         virtual char * getBuffer(){return buffer;};
26 protected:
27         virtual void init( char *initialvalue, unsigned int initialsize );
28         char * buffer;
29         unsigned int buffersize;
30         unsigned int buffmax;
31 };
32
33 class CPath ;
34 class CFilename ;
35 class CDirectory;
36
37 class CPath : public CBuffer
38 {
39 public:
40         CDirectory& getDirectory();
41         CFilename& getFilename();
42         CPath () : CBuffer( _MAX_PATH ) {};
43         CPath (CPath &source) : CBuffer( _MAX_PATH, source ) {};
44         CPath (char *pathname) : CBuffer( _MAX_PATH, pathname ) {};
45         void operator= (CPath &source);
46         void operator= (char *pathname);
47
48         virtual unsigned int getSize() {return buffersize;};
49         virtual char * getBuffer(){return buffer;};
50 };
51
52 class CFilename : public CBuffer
53 {
54 public:
55         CFilename () : CBuffer( _MAX_FNAME ) {};
56         CFilename (CFilename &source) : CBuffer( _MAX_FNAME, source ) {};
57         CFilename (char *filename) : CBuffer( _MAX_FNAME, filename ) {};
58         void operator= (CFilename &source);
59         void operator= (char *filename);
60
61         virtual unsigned int getSize() {return buffersize;};
62         virtual char * getBuffer(){return buffer;};
63 };
64
65 class CDirectory  : public CBuffer
66 {
67 public:
68         CPath& Append( char * extra);
69         CPath& operator+ (CFilename& filename);
70         CPath& operator+ (char *extra);
71         CDirectory () : CBuffer( _MAX_DIR ) {};
72         CDirectory (CDirectory &source) : CBuffer( _MAX_DIR, source ) {};
73         CDirectory (char *dirname) : CBuffer( _MAX_DIR, dirname ) {};
74         CDirectory& operator= (CDirectory &source);
75         CDirectory& operator= (char *dirname);
76
77         virtual unsigned int getSize() {return buffersize;};
78         virtual char * getBuffer(){return buffer;};
79 };
80
81
82 void TestPathsModule(HINSTANCE apphandle);
83
84
85 class CAppDirectory : public CDirectory 
86 {
87 public:
88         CAppDirectory( HINSTANCE apphandle);
89 protected:
90         CAppDirectory() {}; // prevent use of no parameter constructor
91 private:
92 };
93
94 class CWinDirectory : public CDirectory 
95 {
96 public:
97         CWinDirectory();
98 };
99
100 class CStartProgramsDirectory : public CDirectory 
101 {
102 public:
103         CDirectory & operator+( char * childname );
104         bool DeleteChild( char * childname);
105         CDirectory &CreateChild( char * childname );
106         void NotifyChanged();
107         CStartProgramsDirectory();
108 };
109
110
111 #endif // !defined(AFX_PATHS_H__AE9DC3AE_4C19_4DEB_9074_053EF38B7400__INCLUDED_)
Note: See TracBrowser for help on using the browser.