#ifndef _WX_WXZIPSTREAM_H__
#define _WX_WXZIPSTREAM_H__
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
-#pragma interface "zipstrm.h"
-#endif
-
#include "wx/defs.h"
#if wxUSE_ZLIB && wxUSE_STREAMS && wxUSE_ZIPSTREAM
void Notify();
-private:
wxArchiveEntry* DoClone() const { return ZipClone(); }
+private:
size_t ReadLocal(wxInputStream& stream, wxMBConv& conv);
size_t WriteLocal(wxOutputStream& stream, wxMBConv& conv) const;
int GetLevel() const { return m_level; }
void WXZIPFIX SetLevel(int level);
-
+
+ bool WXZIPFIX PutNextEntry(wxArchiveEntry *entry);
+ bool WXZIPFIX CopyEntry(wxArchiveEntry *entry, wxArchiveInputStream& stream);
+ bool WXZIPFIX CopyArchiveMetaData(wxArchiveInputStream& stream);
+
protected:
virtual size_t WXZIPFIX OnSysWrite(const void *buffer, size_t size);
virtual wxFileOffset OnSysTell() const { return m_entrySize; }
{ return m_offsetAdjustment != wxInvalidOffset; }
private:
- bool WXZIPFIX PutNextEntry(wxArchiveEntry *entry);
- bool WXZIPFIX CopyEntry(wxArchiveEntry *entry, wxArchiveInputStream& stream);
- bool WXZIPFIX CopyArchiveMetaData(wxArchiveInputStream& stream);
-
bool IsOpened() const { return m_comp || m_pending; }
bool DoCreate(wxZipEntry *entry, bool raw = false);
virtual WXZIPFIX ~wxZipInputStream();
+ bool WXZIPFIX OpenEntry(wxArchiveEntry& entry);
bool OpenEntry(wxZipEntry& entry) { return DoOpen(&entry); }
bool WXZIPFIX CloseEntry();
virtual wxInputStream* WXZIPFIX OpenDecompressor(wxInputStream& stream);
virtual bool WXZIPFIX CloseDecompressor(wxInputStream *decomp);
+ wxArchiveEntry *DoGetNextEntry() { return GetNextEntry(); }
+
private:
void Init();
void Init(const wxString& file);
wxInputStream& OpenFile(const wxString& archive);
- wxArchiveEntry *DoGetNextEntry() { return GetNextEntry(); }
-
- bool WXZIPFIX OpenEntry(wxArchiveEntry& entry);
-
wxStreamError ReadLocal(bool readEndRec = false);
wxStreamError ReadCentral();