]>
Commit | Line | Data |
---|---|---|
a660d684 KB |
1 | \section{\class{wxPathList}}\label{wxpathlist} |
2 | ||
3 | The path list is a convenient way of storing a number of directories, and | |
4 | when presented with a filename without a directory, searching for an existing file | |
34e2d943 | 5 | in those directories. |
a660d684 | 6 | |
34e2d943 RR |
7 | Be sure to look also at \helpref{wxStandardPaths}{wxstandardpaths} if you only |
8 | want to search files in some standard paths. | |
a660d684 KB |
9 | |
10 | \wxheading{Derived from} | |
11 | ||
8daf3c36 | 12 | \helpref{wxArrayString}{wxarraystring} |
a660d684 | 13 | |
954b8ae6 JS |
14 | \wxheading{Include files} |
15 | ||
16 | <wx/filefn.h> | |
17 | ||
a660d684 KB |
18 | \wxheading{See also} |
19 | ||
31a8bf3f | 20 | \helpref{wxArrayString}{wxarraystring}, \helpref{wxStandardPaths}{wxstandardpaths}, \helpref{wxFileName}{wxfilename} |
a660d684 KB |
21 | |
22 | \latexignore{\rtfignore{\wxheading{Members}}} | |
23 | ||
4d01e350 | 24 | |
dcbd177f | 25 | \membersection{wxPathList::wxPathList}\label{wxpathlistctor} |
a660d684 KB |
26 | |
27 | \func{}{wxPathList}{\void} | |
28 | ||
8daf3c36 VZ |
29 | Empty constructor. |
30 | ||
31 | \func{}{wxPathList}{\param{const wxArrayString\& }{arr}} | |
32 | ||
33 | Constructs the object calling the \helpref{Add}{wxpathlistadd} function. | |
a660d684 | 34 | |
4d01e350 | 35 | |
dcbd177f | 36 | \membersection{wxPathList::AddEnvList}\label{wxpathlistaddenvlist} |
a660d684 KB |
37 | |
38 | \func{void}{AddEnvList}{\param{const wxString\& }{env\_variable}} | |
39 | ||
40 | Finds the value of the given environment variable, and adds all paths | |
34e2d943 | 41 | to the path list. Useful for finding files in the {\tt PATH} variable, for |
a660d684 KB |
42 | example. |
43 | ||
4d01e350 | 44 | |
dcbd177f | 45 | \membersection{wxPathList::Add}\label{wxpathlistadd} |
a660d684 | 46 | |
34e2d943 | 47 | \func{bool}{Add}{\param{const wxString\& }{path}} |
a660d684 | 48 | |
8daf3c36 VZ |
49 | \func{void}{Add}{\param{const wxArrayString\& }{arr}} |
50 | ||
31a8bf3f | 51 | The first form adds the given directory to the path list, if the path is not already in the list. |
34e2d943 RR |
52 | If the path cannot be normalized for some reason, it returns \false. |
53 | ||
8daf3c36 | 54 | The second form just calls the first form on all elements of the given array. |
4d01e350 | 55 | |
31a8bf3f RR |
56 | The {\it path} is always considered a directory but no existence checks will be done on it |
57 | (because if it doesn't exist, it could be created later and thus result a valid path when | |
58 | \helpref{FindValidPath}{wxpathlistfindvalidpath} is called). | |
59 | ||
60 | {\bf Note:} if the given path is relative, it won't be made absolute before adding it | |
61 | (this is why \helpref{FindValidPath}{wxpathlistfindvalidpath} may return relative paths). | |
62 | ||
a660d684 | 63 | |
dcbd177f | 64 | \membersection{wxPathList::EnsureFileAccessible}\label{wxpathlistensurefileaccessible} |
a660d684 | 65 | |
34e2d943 RR |
66 | \func{bool}{EnsureFileAccessible}{\param{const wxString\& }{filename}} |
67 | ||
68 | Given a full filename (with path), ensures that the file exists and | |
69 | then calls \helpref{Add}{wxpathlistadd} with the path of the file. | |
a660d684 | 70 | |
34e2d943 | 71 | Returns \false if the file does not exist (and in this case its path won't be added). |
a660d684 | 72 | |
4d01e350 | 73 | |
dcbd177f | 74 | \membersection{wxPathList::FindAbsoluteValidPath}\label{wxpathlistfindabsolutepath} |
a660d684 | 75 | |
8daf3c36 | 76 | \constfunc{wxString}{FindAbsoluteValidPath}{\param{const wxString\& }{file}} |
a660d684 | 77 | |
34e2d943 RR |
78 | Like \helpref{FindValidPath}{wxpathlistfindvalidpath} but this function always |
79 | returns an absolute path (eventually prepending the current working directory | |
80 | to the value returned \helpref{FindValidPath}{wxpathlistfindvalidpath}) or an | |
81 | empty string. | |
4d01e350 | 82 | |
a660d684 | 83 | |
dcbd177f | 84 | \membersection{wxPathList::FindValidPath}\label{wxpathlistfindvalidpath} |
a660d684 | 85 | |
8daf3c36 | 86 | \constfunc{wxString}{FindValidPath}{\param{const wxString\& }{file}} |
a660d684 | 87 | |
34e2d943 RR |
88 | Searches the given file in all paths stored in this class. |
89 | The first path which concatenated to the given string points to an existing | |
90 | file (see \helpref{wxFileExists}{wxfileexists}) is returned. | |
31a8bf3f | 91 | |
34e2d943 | 92 | If the file wasn't found in any of the stored paths, an empty string is returned. |
4d01e350 | 93 | |
31a8bf3f RR |
94 | The given string must be a file name, eventually with a path prefix (if the path |
95 | prefix is absolute, only its name will be searched); i.e. it must not end with | |
96 | a directory separator (see \helpref{wxFileName::GetPathSeparator}{wxfilenamegetpathseparator}) | |
97 | otherwise an assertion will fail. | |
b67a86d5 | 98 | |
34e2d943 RR |
99 | The returned path may be relative to the current working directory. |
100 | Note in fact that wxPathList can be used to store both relative and absolute paths so that | |
101 | if you \helpref{Add()}{wxpathlistadd}ed relative paths, then the current working directory | |
102 | (see \helpref{wxGetCwd}{wxgetcwd} and \helpref{wxSetWorkingDirectory}{wxsetworkingdirectory}) | |
103 | may affect the value returned by this function! | |
104 |