home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / wxos2240.zip / wxWindows-2.4.0 / include / wx / fs_zip.h < prev    next >
C/C++ Source or Header  |  2002-11-09  |  2KB  |  59 lines

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