]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/tarstrm.h
routing native events first to the wx class and only if skipped call native handler
[wxWidgets.git] / include / wx / tarstrm.h
index 07fb87ba3fbf883bb2af4a638ba0d283db56d728..5043c5f29e8c43145a5c09409d1b395e3eca86db 100644 (file)
@@ -1,5 +1,5 @@
 /////////////////////////////////////////////////////////////////////////////
 /////////////////////////////////////////////////////////////////////////////
-// Name:        tarstrm.h
+// Name:        wx/tarstrm.h
 // Purpose:     Streams for Tar files
 // Author:      Mike Wetherell
 // RCS-ID:      $Id$
 // Purpose:     Streams for Tar files
 // Author:      Mike Wetherell
 // RCS-ID:      $Id$
 #if wxUSE_TARSTREAM
 
 #include "wx/archive.h"
 #if wxUSE_TARSTREAM
 
 #include "wx/archive.h"
+#include "wx/hashmap.h"
 
 
 /////////////////////////////////////////////////////////////////////////////
 // Constants
 
 // TypeFlag values
 
 
 /////////////////////////////////////////////////////////////////////////////
 // Constants
 
 // TypeFlag values
-enum {
+enum wxTarType
+{
     wxTAR_REGTYPE   = '0',      // regular file
     wxTAR_LNKTYPE   = '1',      // hard link
     wxTAR_SYMTYPE   = '2',      // symbolic link
     wxTAR_REGTYPE   = '0',      // regular file
     wxTAR_LNKTYPE   = '1',      // hard link
     wxTAR_SYMTYPE   = '2',      // symbolic link
@@ -132,7 +134,7 @@ private:
     wxDateTime   m_ModifyTime;
     wxDateTime   m_AccessTime;
     wxDateTime   m_CreateTime;
     wxDateTime   m_ModifyTime;
     wxDateTime   m_AccessTime;
     wxDateTime   m_CreateTime;
-    wxChar       m_TypeFlag;
+    int          m_TypeFlag;
     wxString     m_LinkName;
     wxString     m_UserName;
     wxString     m_GroupName;
     wxString     m_LinkName;
     wxString     m_UserName;
     wxString     m_GroupName;
@@ -148,6 +150,8 @@ private:
 /////////////////////////////////////////////////////////////////////////////
 // wxTarInputStream
 
 /////////////////////////////////////////////////////////////////////////////
 // wxTarInputStream
 
+WX_DECLARE_STRING_HASH_MAP(wxString, wxTarHeaderRecords);
+
 class WXDLLIMPEXP_BASE wxTarInputStream : public wxArchiveInputStream
 {
 public:
 class WXDLLIMPEXP_BASE wxTarInputStream : public wxArchiveInputStream
 {
 public:
@@ -178,7 +182,7 @@ private:
     bool IsOpened() const               { return m_pos != wxInvalidOffset; }
 
     wxStreamError ReadHeaders();
     bool IsOpened() const               { return m_pos != wxInvalidOffset; }
 
     wxStreamError ReadHeaders();
-    bool ReadExtendedHeader(class wxTarHeaderRecords*& recs);
+    bool ReadExtendedHeader(wxTarHeaderRecords*& recs);
 
     wxString GetExtendedHeader(const wxString& key) const;
     wxString GetHeaderPath() const;
 
     wxString GetExtendedHeader(const wxString& key) const;
     wxString GetHeaderPath() const;
@@ -193,8 +197,8 @@ private:
     int m_sumType;
     int m_tarType;
     class wxTarHeaderBlock *m_hdr;
     int m_sumType;
     int m_tarType;
     class wxTarHeaderBlock *m_hdr;
-    class wxTarHeaderRecords *m_HeaderRecs;
-    class wxTarHeaderRecords *m_GlobalHeaderRecs;
+    wxTarHeaderRecords *m_HeaderRecs;
+    wxTarHeaderRecords *m_GlobalHeaderRecs;
 
     DECLARE_NO_COPY_CLASS(wxTarInputStream)
 };
 
     DECLARE_NO_COPY_CLASS(wxTarInputStream)
 };
@@ -277,6 +281,7 @@ private:
     char *m_extendedHdr;
     size_t m_extendedSize;
     wxString m_badfit;
     char *m_extendedHdr;
     size_t m_extendedSize;
     wxString m_badfit;
+    bool m_endrecWritten;
 
     DECLARE_NO_COPY_CLASS(wxTarOutputStream)
 };
 
     DECLARE_NO_COPY_CLASS(wxTarOutputStream)
 };