]> git.saurik.com Git - wxWidgets.git/blob - docs/latex/wx/filesysh.tex
added wxFileSystem::FindFirst and FindNext
[wxWidgets.git] / docs / latex / wx / filesysh.tex
1 %
2 % automatically generated by HelpGen from
3 % filesystemhandler.tex at 21/Mar/99 23:00:52
4 %
5
6 \section{\class{wxFileSystemHandler}}\label{wxfilesystemhandler}
7
8 wxFileSystemHandler (or derived classes to be exact) is used
9 to access virtual file systems. It's public interface consists
10 from two methods: \helpref{CanOpen}{wxfilesystemhandlercanopen}
11 and \helpref{OpenFile}{wxfilesystemhandleropenfile}.
12 It provides additional protected methods to simplify process
13 of opening the file : GetProtocol, GetLeftLocation, GetRightLocation,
14 GetAnchor, GetMimeTypeFromExt.
15
16 Please have a look at \helpref{overview}{fs} if you don't know how locations
17 are constructed.
18
19 \wxheading{Notes}
20
21 \begin{itemize}
22 \item The handlers are shared by all instances of wxFileSystem.
23
24 \item wxHTML library provides handlers for local files and HTTP or FTP protocol
25
26 \item The {\it location} parameter passed to OpenFile or CanOpen methods
27 is always {\bf absolute} path. You don't need to check the FS's current path!
28 \end{itemize}
29
30 \wxheading{Derived from}
31
32 wxObject
33
34 \wxheading{See also}
35
36 \helpref{wxFileSystem}{wxfilesystem},
37 \helpref{wxFSFile}{wxfsfile},
38 \helpref{Overview}{fs}
39
40 \membersection{wxFileSystemHandler::wxFileSystemHandler}\label{wxfilesystemhandlerwxfilesystemhandler}
41
42 \func{}{wxFileSystemHandler}{\void}
43
44 Constructor.
45
46 \membersection{wxFileSystemHandler::CanOpen}\label{wxfilesystemhandlercanopen}
47
48 \func{virtual bool}{CanOpen}{\param{const wxString\& }{location}}
49
50 Returns TRUE if the handler is able to open this file (this function doesn't
51 check whether the file exists or not, it only checks if it knows the protocol).
52 Example:
53
54 \begin{verbatim}
55 bool MyHand::CanOpen(const wxString& location)
56 {
57 return (GetProtocol(location) == "http");
58 }
59 \end{verbatim}
60
61 Must be overwriten in derived handlers.
62
63 \membersection{wxFileSystemHandler::GetAnchor}\label{wxfilesystemhandlergetanchor}
64
65 \constfunc{wxString}{GetAnchor}{\param{const wxString\& }{location}}
66
67 Returns anchor if present in the location.
68 See \helpref{wxFSFile}{wxfsfilegetanchor} for details.
69
70 Example : GetAnchor("index.htm\#chapter2") == "chapter2"
71
72 {\bf Note:} anchor is NOT part of left location.
73
74 \membersection{wxFileSystemHandler::GetLeftLocation}\label{wxfilesystemhandlergetleftlocation}
75
76 \constfunc{wxString}{GetLeftLocation}{\param{const wxString\& }{location}}
77
78 Returns left location string extracted from {\it location}.
79
80 Example: GetLeftLocation("file:myzipfile.zip\#zip:index.htm") == "file:myzipfile.zip"
81
82 \membersection{wxFileSystemHandler::GetMimeTypeFromExt}\label{wxfilesystemhandlergetmimetypefromext}
83
84 \func{wxString}{GetMimeTypeFromExt}{\param{const wxString\& }{location}}
85
86 Returns MIME type based on {\bf extension} of {\it location}. (While wxFSFile::GetMimeType
87 returns real MIME type - either extension-based or queried from HTTP)
88
89 Example : GetMimeTypeFromExt("index.htm") == "text/html"
90
91 \membersection{wxFileSystemHandler::GetProtocol}\label{wxfilesystemhandlergetprotocol}
92
93 \constfunc{wxString}{GetProtocol}{\param{const wxString\& }{location}}
94
95 Returns protocol string extracted from {\it location}.
96
97 Example: GetProtocol("file:myzipfile.zip\#zip:index.htm") == "zip"
98
99 \membersection{wxFileSystemHandler::GetRightLocation}\label{wxfilesystemhandlergetrightlocation}
100
101 \constfunc{wxString}{GetRightLocation}{\param{const wxString\& }{location}}
102
103 Returns right location string extracted from {\it location}.
104
105 Example : GetRightLocation("file:myzipfile.zip\#zip:index.htm") == "index.htm"
106
107
108
109
110
111 \membersection{wxFileSystemHandler::FindFirst}\label{wxfilesystemfindfirst}
112
113 \func{virtual wxString}{FindFirst}{\param{const wxString\& }{wildcard}, \param{int }{flags = 0}}
114
115 Works like \helpref{wxFindFirstFile}{wxfindfirstfile}. Returns name of the first
116 filename (withing filesystem's current path) that matches {\it wildcard}. {\it flags} may be one of
117 wxFILE (only files), wxDIR (only directories) or 0 (both).
118
119 This method is only called if \helpref{CanOpen}{wxfilesystemhandlercanopen} returns TRUE.
120
121 \membersection{wxFileSystemHandler::FindNext}\label{wxfilesystemfindnext}
122
123 \func{virtual wxString}{FindNext}{\void}
124
125 Returns next filename that matches parameters passed to \helpref{FindFirst}{wxfilesystemfindfirst}.
126
127 This method is only called if \helpref{CanRead}{wxfilesystemhandlercanread} returns TRUE and FindFirst
128 returned non-empty string.
129
130
131
132 \membersection{wxFileSystemHandler::OpenFile}\label{wxfilesystemhandleropenfile}
133
134 \func{virtual wxFSFile*}{OpenFile}{\param{wxFileSystem\& }{fs}, \param{const wxString\& }{location}}
135
136 Opens the file and returns wxFSFile pointer or NULL if failed.
137
138 Must be overwriten in derived handlers.
139
140 \wxheading{Parameters}
141
142 \docparam{fs}{Parent FS (the FS from that OpenFile was called). See ZIP handler
143 for details how to use it.}
144
145 \docparam{location}{The {\bf absolute} location of file.}
146