]>
Commit | Line | Data |
---|---|---|
1 | % | |
2 | % automatically generated by HelpGen from | |
3 | % filesystem.tex at 21/Mar/99 23:00:52 | |
4 | % | |
5 | ||
6 | \section{\class{wxFileSystem}}\label{wxfilesystem} | |
7 | ||
8 | This class provides an interface for opening files on different | |
9 | file systems. It can handle absolute and/or local filenames. | |
10 | It uses a system of \helpref{handlers}{wxfilesystemhandler} to | |
11 | provide access to user-defined virtual file systems. | |
12 | ||
13 | \wxheading{Derived from} | |
14 | ||
15 | \helpref{wxObject}{wxobject} | |
16 | ||
17 | \wxheading{Include files} | |
18 | ||
19 | <wx/filesys.h> | |
20 | ||
21 | \wxheading{Library} | |
22 | ||
23 | \helpref{wxBase}{librarieslist} | |
24 | ||
25 | \wxheading{See Also} | |
26 | ||
27 | \helpref{wxFileSystemHandler}{wxfilesystemhandler}, | |
28 | \helpref{wxFSFile}{wxfsfile}, | |
29 | \helpref{Overview}{fs} | |
30 | ||
31 | \latexignore{\rtfignore{\wxheading{Members}}} | |
32 | ||
33 | ||
34 | \membersection{wxFileSystem::wxFileSystem}\label{wxfilesystemwxfilesystem} | |
35 | ||
36 | \func{}{wxFileSystem}{\void} | |
37 | ||
38 | Constructor. | |
39 | ||
40 | ||
41 | \membersection{wxFileSystem::AddHandler}\label{wxfilesystemaddhandler} | |
42 | ||
43 | \func{static void}{AddHandler}{\param{wxFileSystemHandler }{*handler}} | |
44 | ||
45 | This static function adds new handler into the list of | |
46 | \helpref{handlers}{wxfilesystemhandler} which provide access to virtual FS. | |
47 | Note that if two handlers for the same protocol are added, the last one added | |
48 | takes precedence. | |
49 | ||
50 | \wxheading{Note} | |
51 | ||
52 | You can call: | |
53 | ||
54 | \begin{verbatim} | |
55 | wxFileSystem::AddHandler(new My_FS_Handler); | |
56 | \end{verbatim} | |
57 | ||
58 | This is because (a) AddHandler is a static method, and (b) the handlers | |
59 | are deleted in wxFileSystem's destructor so that you don't have to | |
60 | care about it. | |
61 | ||
62 | ||
63 | \membersection{wxFileSystem::HasHandlerForPath}\label{wxfilesystemhashandlerforpath} | |
64 | ||
65 | \func{static bool}{HasHandlerForPath}{\param{const wxString \&}{ location}} | |
66 | ||
67 | This static function returns \true if there is a registered handler which can open the given | |
68 | location. | |
69 | ||
70 | ||
71 | \membersection{wxFileSystem::ChangePathTo}\label{wxfilesystemchangepathto} | |
72 | ||
73 | \func{void}{ChangePathTo}{\param{const wxString\& }{location}, \param{bool }{is\_dir = false}} | |
74 | ||
75 | Sets the current location. {\it location} parameter passed to | |
76 | \helpref{OpenFile}{wxfilesystemopenfile} is relative to this path. | |
77 | ||
78 | {\bf Caution! } Unless {\it is\_dir} is true the {\it location} parameter | |
79 | is not the directory name but the name of the file in this directory. All these | |
80 | commands change the path to "dir/subdir/": | |
81 | ||
82 | \begin{verbatim} | |
83 | ChangePathTo("dir/subdir/xh.htm"); | |
84 | ChangePathTo("dir/subdir", true); | |
85 | ChangePathTo("dir/subdir/", true); | |
86 | \end{verbatim} | |
87 | ||
88 | \wxheading{Parameters} | |
89 | ||
90 | \docparam{location}{the new location. Its meaning depends on the value of {\it is\_dir}} | |
91 | ||
92 | \docparam{is\_dir}{if true {\it location} is new directory. If false (default) | |
93 | {\it location} is {\bf file in} the new directory.} | |
94 | ||
95 | \wxheading{Example} | |
96 | ||
97 | \begin{verbatim} | |
98 | f = fs -> OpenFile("hello.htm"); // opens file 'hello.htm' | |
99 | fs -> ChangePathTo("subdir/folder", true); | |
100 | f = fs -> OpenFile("hello.htm"); // opens file 'subdir/folder/hello.htm' !! | |
101 | \end{verbatim} | |
102 | ||
103 | ||
104 | \membersection{wxFileSystem::GetPath}\label{wxfilesystemgetpath} | |
105 | ||
106 | \func{wxString}{GetPath}{\void} | |
107 | ||
108 | Returns actual path (set by \helpref{ChangePathTo}{wxfilesystemchangepathto}). | |
109 | ||
110 | ||
111 | \membersection{wxFileSystem::FileNameToURL}\label{wxfilesystemfilenametourl} | |
112 | ||
113 | \func{static wxString}{FileNameToURL}{\param{wxFileName }{filename}} | |
114 | ||
115 | Converts filename into URL. | |
116 | ||
117 | \wxheading{See also} | |
118 | ||
119 | \helpref{wxFileSystem::URLToFileName}{wxfilesystemurltofilename}, | |
120 | \helpref{wxFileName}{wxfilename} | |
121 | ||
122 | ||
123 | \membersection{wxFileSystem::FindFileInPath}\label{wxfilesystemfindfileinpath} | |
124 | ||
125 | \func{bool}{FindFileInPath}{\param{wxString }{*str}, \param{const wxString\& }{path}, \param{const wxString\& }{file}} | |
126 | ||
127 | Looks for the file with the given name \arg{file} in a colon or semi-colon | |
128 | (depending on the current platform) separated list of directories in | |
129 | \arg{path}. If the file is found in any directory, returns \true and the full | |
130 | path of the file in \arg{str}, otherwise returns \false and doesn't modify | |
131 | \arg{str}. | |
132 | ||
133 | \wxheading{Parameters} | |
134 | ||
135 | \docparam{str}{Receives the full path of the file, must not be \NULL} | |
136 | ||
137 | \docparam{path}{\texttt{wxPATH\_SEP}-separated list of directories} | |
138 | ||
139 | \docparam{file}{the name of the file to look for} | |
140 | ||
141 | ||
142 | \membersection{wxFileSystem::FindFirst}\label{wxfilesystemfindfirst} | |
143 | ||
144 | \func{wxString}{FindFirst}{\param{const wxString\& }{wildcard}, \param{int }{flags = 0}} | |
145 | ||
146 | Works like \helpref{wxFindFirstFile}{wxfindfirstfile}. Returns name of the first | |
147 | filename (within filesystem's current path) that matches {\it wildcard}. {\it flags} may be one of | |
148 | wxFILE (only files), wxDIR (only directories) or 0 (both). | |
149 | ||
150 | ||
151 | \membersection{wxFileSystem::FindNext}\label{wxfilesystemfindnext} | |
152 | ||
153 | \func{wxString}{FindNext}{\void} | |
154 | ||
155 | Returns the next filename that matches parameters passed to \helpref{FindFirst}{wxfilesystemfindfirst}. | |
156 | ||
157 | ||
158 | \membersection{wxFileSystem::OpenFile}\label{wxfilesystemopenfile} | |
159 | ||
160 | \func{wxFSFile*}{OpenFile}{\param{const wxString\& }{location}, \param{int }{flags = wxFS\_READ}} | |
161 | ||
162 | Opens the file and returns a pointer to a \helpref{wxFSFile}{wxfsfile} object | |
163 | or NULL if failed. It first tries to open the file in relative scope | |
164 | (based on value passed to ChangePathTo() method) and then as an | |
165 | absolute path. Note that the user is responsible for deleting the returned | |
166 | wxFSFile. | |
167 | ||
168 | {\it flags} can be one or more of the following bit values ored together: | |
169 | ||
170 | \begin{verbatim} | |
171 | // Open Bit Flags | |
172 | enum { | |
173 | wxFS_READ = 1, // Open for reading | |
174 | wxFS_SEEKABLE = 4 // Returned stream will be seekable | |
175 | }; | |
176 | \end{verbatim} | |
177 | ||
178 | A stream opened with just the default {\it wxFS\_READ} flag may | |
179 | or may not be seekable depending on the underlying source. | |
180 | Passing {\it wxFS\_READ | wxFS\_SEEKABLE} for {\it flags} will | |
181 | back a stream that is not natively seekable with memory or a file | |
182 | and return a stream that is always seekable. | |
183 | ||
184 | ||
185 | \membersection{wxFileSystem::URLToFileName}\label{wxfilesystemurltofilename} | |
186 | ||
187 | \func{static wxFileName}{URLToFileName}{\param{const wxString\& }{url}} | |
188 | ||
189 | Converts URL into a well-formed filename. The URL must use the {\tt file} | |
190 | protocol. | |
191 | ||
192 | \wxheading{See also} | |
193 | ||
194 | \helpref{wxFileSystem::FileNameToURL}{wxfilesystemfilenametourl}, | |
195 | \helpref{wxFileName}{wxfilename} | |
196 |