You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
193 lines
7.6 KiB
193 lines
7.6 KiB
14 years ago
|
/**
|
||
|
* \mainpage QuaZIP - Qt/C++ wrapper for ZIP/UNZIP package
|
||
|
*
|
||
|
\htmlonly
|
||
|
<a href="http://sourceforge.net"><img src="http://sourceforge.net/sflogo.php?group_id=142688&type=7" style="width:210; height:62; border:none; float:right;" alt="Powered by SourceForge.net" /></a>
|
||
|
\endhtmlonly
|
||
|
* \section overview Overview
|
||
|
*
|
||
|
* QuaZIP is a simple C++ wrapper over <a
|
||
|
* href="http://www.winimage.com/zLibDll/unzip.html">Gilles Vollant's ZIP/UNZIP
|
||
|
* package</a> that can be used to access ZIP archives. It uses <a
|
||
|
* href="http://www.trolltech.com/products/qt/index.html">Trolltech's
|
||
|
* Qt toolkit</a>.
|
||
|
*
|
||
|
* If you do not know what Qt is, you have two options:
|
||
|
* - Just forget about QuaZIP.
|
||
|
* - Learn more about Qt by downloading it and/or reading excellent <a
|
||
|
* href="http://doc.trolltech.com/">official Qt documentation</a>
|
||
|
*
|
||
|
* The choice is yours, but if you are really interested in
|
||
|
* cross-platform (Windows/Linux/BSD/UNIX/Mac/Others) software
|
||
|
* development, I would definitely recommend you the second choice ^_^
|
||
|
*
|
||
|
* QuaZIP allows you to access files inside ZIP archives using QIODevice
|
||
|
* API, and - yes! - that means that you can also use QTextStream,
|
||
|
* QDataStream or whatever you would like to use on your zipped files.
|
||
|
*
|
||
|
* QuaZIP provides complete abstraction of the ZIP/UNZIP API, for both
|
||
|
* reading from and writing to ZIP archives.
|
||
|
*
|
||
|
* \section platforms Platforms supported
|
||
|
*
|
||
|
* QuaZIP has been currently tested with Qt 4.0.0 on the following
|
||
|
* platforms:
|
||
|
* - linux-g++
|
||
|
* - freebsd-g++
|
||
|
* - hpux-acc
|
||
|
* - win32-g++ (MinGW)
|
||
|
*
|
||
|
* No testing has been done on other systems. Of course, patches to
|
||
|
* make it work on any platform that it currently does not work on are
|
||
|
* always welcome!
|
||
|
*
|
||
|
* \section whats-new What is new in this version of QuaZIP?
|
||
|
*
|
||
|
* See NEWS file supplied with the distribution.
|
||
|
*
|
||
|
* \section getting Getting latest version of QuaZIP
|
||
|
*
|
||
|
* Check <a href="http://sourceforge.net/projects/quazip/">QuaZIP
|
||
|
* project's page at SourceForge.net</a>. Also, you may wish to read
|
||
|
* latest version documentation available at the <a
|
||
|
* href="http://quazip.sourceforge.net/">QuaZIP web site</a>.
|
||
|
*
|
||
|
* \section Requirements
|
||
|
*
|
||
|
* Just <a href="http://www.zlib.org/">zlib</a> and Qt 4. Well, Qt 4
|
||
|
* depends on zlib anyway.
|
||
|
*
|
||
|
* \section building Building, testing and installing
|
||
|
*
|
||
|
* \note Instructions given in this section assume that you are
|
||
|
* using some UNIX dialect, but the build process should be very similar
|
||
|
* on win32-g++ platform too. Sorry, but other platforms are
|
||
|
* undocumented. I do not think it is a big deal, though - it is
|
||
|
* standard usage of the Qt's qmake, so you most probably already know
|
||
|
* everything that is required.
|
||
|
*
|
||
|
* To build it on some UNIX dialect:
|
||
|
\verbatim
|
||
|
$ cd /wherever/quazip/source/is/quazip-x.y.z/quazip
|
||
|
$ qmake [PREFIX=where-to-install]
|
||
|
$ make
|
||
|
\endverbatim
|
||
|
*
|
||
|
* Make sure that you have Qt 4 installed with all required headers and
|
||
|
* utilities (not just library) and that you run qmake utility of the Qt
|
||
|
* 4, not some other version you may have already installed (you may
|
||
|
* need to type full path to qmake like /usr/local/qt4/bin/qmake).
|
||
|
*
|
||
|
* To reconfigure (with another PREFIX, for example), just run qmake
|
||
|
* with appropriate arguments again.
|
||
|
*
|
||
|
* If you need to specify additional include path or libraries, use
|
||
|
* qmake features (see qmake reference in the Qt documentation). For
|
||
|
* example:
|
||
|
*
|
||
|
\verbatim
|
||
|
$ qmake LIBS+=-L/usr/local/zlib/lib INCLUDEPATH+=/usr/local/zlib/include
|
||
|
\endverbatim
|
||
|
* (note abscence of "-I" before include path)
|
||
|
*
|
||
|
* To check if QuaZIP's basic features work ok on your platform, you may
|
||
|
* wish to compile simple test programs provided in test directory.
|
||
|
* Look in the sources of the tests to find out about their
|
||
|
* requirements. Typically, the test looks something like this:
|
||
|
\verbatim
|
||
|
$ cd /wherever/quazip/source/is/quazip-x.y.z/test/zip
|
||
|
$ qmake
|
||
|
$ make
|
||
|
$ ./zip
|
||
|
$ cd ../unzip
|
||
|
$ cp ../zip/test.zip ./test.zip
|
||
|
$ mkdir out
|
||
|
$ qmake
|
||
|
$ make
|
||
|
$ ./unzip
|
||
|
\endverbatim
|
||
|
*
|
||
|
* You should see the zip contents with details as the output of the
|
||
|
* "./unzip". Ignore message saying you should check the file name for
|
||
|
* testCase() if you do not want to test
|
||
|
* \link QuaZip::CaseSensitivity locale-aware case-insensitivity\endlink.
|
||
|
* Otherwise, see the sources. In any case, this message appearing means
|
||
|
* that everything else was fine. Otherwise, you will get some other error
|
||
|
* message instead. Investigate it or send bug report including message,
|
||
|
* platform and QuaZIP version used.
|
||
|
*
|
||
|
* To install compiled library:
|
||
|
\verbatim
|
||
|
$ make install
|
||
|
\endverbatim
|
||
|
*
|
||
|
* By default, QuaZIP compiles as static library, but you have other
|
||
|
* options:
|
||
|
* - Just copy appropriate source files to your project and use them;
|
||
|
* - Compile QuaZIP as shared library by changing "staticlib" in
|
||
|
* quazip/quazip.pro to "dll".
|
||
|
*
|
||
|
* Latter is not recommended because future versions of QuaZIP most
|
||
|
* probably will be binary incompatible.
|
||
|
*
|
||
|
* \section using Using
|
||
|
*
|
||
|
* See \ref usage "usage page".
|
||
|
*
|
||
|
* \section bugs Bugs
|
||
|
*
|
||
|
* QuaZIP is currently at the initial development stage. Therefore,
|
||
|
* there are may be plenty of bugs and other bad things. Bug reports and
|
||
|
* patches are always welcome (see "contacts" below).
|
||
|
*
|
||
|
* \section contacts Authors and contacts
|
||
|
*
|
||
|
* This wrapper has been written by Sergey A. Tachenov, AKA Alqualos.
|
||
|
* This is my first open source project, so it may suck, but I did not
|
||
|
* find anything like that, so I just had no other choice but to write
|
||
|
* it.
|
||
|
*
|
||
|
* If you have anything to say to me about QuaZIP library, feel free to
|
||
|
* do so (read the \ref faq first, though). I can not promise,
|
||
|
* though, that I fix all the bugs you report in, add any features you
|
||
|
* want, or respond to your critics, or respond to your feedback at all.
|
||
|
* I may be busy, I may be tired of working on QuaZIP, I may be even
|
||
|
* dead already (you never know...). But regardless of this remark, any
|
||
|
* feedback is always welcome. This may seem like a paradox to you, but
|
||
|
* you do not have to understand it to write feedback.
|
||
|
*
|
||
|
* To report bugs or to post ideas about what should be done, use
|
||
|
* SourceForge.net's <a
|
||
|
* href="http://sourceforge.net/tracker/?group_id=142688">trackers</a>.
|
||
|
* If you want to send me a private message, use my e-mail address
|
||
|
* laerel at yandex dot ru (but do not you dare to put it somewhere on
|
||
|
* the Web or wherever).
|
||
|
*
|
||
|
* Do not use e-mail to report bugs, please. Reporting bugs and problems
|
||
|
* with the SourceForge.net's bug report system has that advantage that
|
||
|
* it is visible to public.
|
||
|
*
|
||
|
* \section other-projects My other projects
|
||
|
*
|
||
|
* As of this moment, I did not write any other useful open source
|
||
|
* software (well, I am too lazy to do it) except for one little thing:
|
||
|
*
|
||
|
* <a href="http://brededor.narod.ru/progs/arcanum50patch.htm">Arcanum
|
||
|
* universal cap remover</a>. Arcanum is the old but very good game,
|
||
|
* which has one stupid limit: your character maximum level is 50, which
|
||
|
* is too low for many players including me. So I wrote this simple
|
||
|
* patch to increase this stupid limit to something acceptable.
|
||
|
*
|
||
|
* Also, my first Web project, which can be of any interest to you only
|
||
|
* if you can read Russian and you are crazy ^_- This is a web site with
|
||
|
* the main topic of it being The Delirium. It is totally meaningless
|
||
|
* and it was purposely made to be such. Do not ask me why - I do not
|
||
|
* know either. I just did that. If you are interested, then welcome to
|
||
|
* <a href="http://brededor.narod.ru/">The Brededor</a>. It does not get
|
||
|
* updated lately because I have become even lazier than I ever was. But
|
||
|
* I do not plan to destroy The Brededor no matter what, because I think
|
||
|
* it is fun.
|
||
|
*
|
||
|
* Copyright (C) 2005-2007 Sergey A. Tachenov
|
||
|
**/
|