00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef koZipStore_h
00021 #define koZipStore_h
00022
00023 #include "KoStoreBase.h"
00024
00025 #include <QByteArray>
00026
00027 class KZip;
00028 class KArchiveDirectory;
00029 class KUrl;
00030
00031 class KoZipStore : public KoStoreBase
00032 {
00033 public:
00034 KoZipStore( const QString & _filename, Mode _mode, const QByteArray & appIdentification );
00035 KoZipStore( QIODevice *dev, Mode mode, const QByteArray & appIdentification );
00041 KoZipStore( QWidget* window, const KUrl& _url, const QString & _filename, Mode _mode, const QByteArray & appIdentification );
00042 ~KoZipStore();
00043
00044 virtual qint64 write( const char* _data, qint64 _len );
00045 protected:
00046 virtual bool init( Mode _mode, const QByteArray& appIdentification );
00047 virtual bool openWrite( const QString& name );
00048 virtual bool openRead( const QString& name );
00049 virtual bool closeWrite();
00050 virtual bool closeRead() { return true; }
00051 virtual bool enterRelativeDirectory( const QString& dirName );
00052 virtual bool enterAbsoluteDirectory( const QString& path );
00053 virtual bool fileExists( const QString& absPath ) const;
00054
00056 KZip * m_pZip;
00057
00060 const KArchiveDirectory* m_currentDir;
00061 };
00062
00063 #endif