]>
Commit | Line | Data |
---|---|---|
5526e819 VS |
1 | ///////////////////////////////////////////////////////////////////////////// |
2 | // Name: fs_zip.h | |
3 | // Purpose: ZIP file system | |
4 | // Author: Vaclav Slavik | |
5 | // Copyright: (c) 1999 Vaclav Slavik | |
de0702d0 | 6 | // CVS-ID: $Id$ |
5526e819 VS |
7 | // Licence: wxWindows Licence |
8 | ///////////////////////////////////////////////////////////////////////////// | |
9 | ||
10 | ||
11 | #ifdef __GNUG__ | |
c3f4609e | 12 | #pragma interface "fs_zip.h" |
5526e819 VS |
13 | #endif |
14 | ||
ed58dbea | 15 | #include "wx/wxprec.h" |
5526e819 VS |
16 | |
17 | #ifdef __BORDLANDC__ | |
18 | #pragma hdrstop | |
19 | #endif | |
20 | ||
24528b0c | 21 | #if wxUSE_FILESYSTEM && wxUSE_FS_ZIP && wxUSE_STREAMS |
8a4df159 RR |
22 | |
23 | ||
5526e819 | 24 | #ifndef WXPRECOMP |
ed58dbea | 25 | #include "wx/wx.h" |
5526e819 VS |
26 | #endif |
27 | ||
ed58dbea | 28 | #include "wx/filesys.h" |
5526e819 | 29 | |
de0702d0 VS |
30 | class WXDLLEXPORT wxHashTableLong; |
31 | ||
5526e819 VS |
32 | //-------------------------------------------------------------------------------- |
33 | // wxZipFSHandler | |
34 | //-------------------------------------------------------------------------------- | |
35 | ||
d674cf6d | 36 | class WXDLLEXPORT wxZipFSHandler : public wxFileSystemHandler |
5526e819 VS |
37 | { |
38 | public: | |
aaa66113 | 39 | wxZipFSHandler(); |
5526e819 VS |
40 | virtual bool CanOpen(const wxString& location); |
41 | virtual wxFSFile* OpenFile(wxFileSystem& fs, const wxString& location); | |
aaa66113 VS |
42 | virtual wxString FindFirst(const wxString& spec, int flags = 0); |
43 | virtual wxString FindNext(); | |
5526e819 | 44 | ~wxZipFSHandler(); |
aaa66113 VS |
45 | |
46 | private: | |
47 | // these vars are used by FindFirst/Next: | |
48 | void *m_Archive; | |
49 | wxString m_Pattern, m_BaseDir, m_ZipFile; | |
50 | bool m_AllowDirs, m_AllowFiles; | |
de0702d0 | 51 | wxHashTableLong *m_DirsFound; |
aaa66113 VS |
52 | |
53 | wxString DoFind(); | |
5526e819 VS |
54 | }; |
55 | ||
56 | ||
8a4df159 | 57 | #endif |
24528b0c | 58 | // wxUSE_FILESYSTEM && wxUSE_FS_ZIP && wxUSE_STREAMS |
5526e819 | 59 |