Warning, /maui/mauikit-documents/src/code/epub/quazip/doc/index.dox is written in an unsupported language. File is not indexed.
0001 /**
0002 * \mainpage QuaZIP - Qt/C++ wrapper for ZIP/UNZIP package
0003 *
0004 \htmlonly
0005 <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>
0006 \endhtmlonly
0007 * \section overview Overview
0008 *
0009 * QuaZIP is a simple C++ wrapper over <a
0010 * href="http://www.winimage.com/zLibDll/minizip.html">Gilles Vollant's ZIP/UNZIP
0011 * package</a> that can be used to access ZIP archives. It uses <a
0012 * href="http://qt.digia.com/">the Qt toolkit</a>.
0013 *
0014 * If you do not know what Qt is, you have two options:
0015 * - Just forget about QuaZIP.
0016 * - Learn more about Qt by downloading it and/or reading the excellent <a
0017 * href="http://qt-project.org/doc/">official Qt documentation</a>
0018 *
0019 * The choice is yours, but if you are really interested in
0020 * cross-platform (Windows/Linux/BSD/UNIX/Mac/Others) software
0021 * development, I would definitely recommend you the latter ^_^
0022 *
0023 * QuaZIP allows you to access files inside ZIP archives using QIODevice
0024 * API, and - yes! - that means that you can also use QTextStream,
0025 * QDataStream or whatever you would like to use on your zipped files.
0026 *
0027 * QuaZIP provides complete abstraction of the ZIP/UNZIP API, for both
0028 * reading from and writing to ZIP archives.
0029 *
0030 * \section download Download QuaZIP
0031 *
0032 * Downloads are available from <a
0033 * href="http://sourceforge.net/projects/quazip/">QuaZIP project's page
0034 * at SourceForge.net</a>.
0035 *
0036 * \section platforms Platforms supported
0037 *
0038 * QuaZIP has been currently tested on the following platforms:
0039 * - linux-g++ (Ubuntu 11.10, Qt 4.7.4)
0040 * - freebsd-g++ (Qt 4.0.0
0041 * - hpux-acc (HP-UX 11.11)
0042 * - hpux-g++ (HP-UX 11.11)
0043 * - win32-g++ (MinGW)
0044 * - win32-msvc2010 (MS VS 2010 Express, Qt 4.8.4)
0045 * - win32-msvc2010 (Qt Creator, Qt 5.0.1)
0046 * - win32-msvc2012 (Qt Creator, Qt 5.2.0)
0047 * - some Symbian version, reportedly
0048 *
0049 * No testing has been officially done on other systems. Of course, patches to
0050 * make it work on any platform that it currently does not work on are
0051 * always welcome!
0052 *
0053 * \section whats-new What is new in this version of QuaZIP?
0054 *
0055 * See the NEWS.txt file supplied with the distribution.
0056 *
0057 * \section Requirements
0058 *
0059 * Just <a href="http://www.zlib.org/">zlib</a> and Qt 4/5. Well, Qt 4
0060 * depends on zlib anyway, but you will need zlib headers to compile
0061 * QuaZIP. With Qt5 sometimes you need the zlib library as well (on
0062 * Windows, for example).
0063 *
0064 * \section building Building, testing and installing
0065 *
0066 * \note Instructions given in this section assume that you are
0067 * using some UNIX dialect, but the build process should be very similar
0068 * on win32-g++ platform too. On other platforms it's essentially the
0069 * same process, maybe with some qmake adjustments not specific to
0070 * QuaZIP itself.
0071 *
0072 * To build the library, run:
0073 \verbatim
0074 $ cd /wherever/quazip/source/is/quazip-x.y.z/quazip
0075 $ qmake [PREFIX=where-to-install]
0076 $ make
0077 \endverbatim
0078 *
0079 * Make sure that you have Qt 4/5 installed with all required headers and
0080 * utilities (that is, including the 'dev' or 'devel' package on Linux)
0081 * and that you run qmake utility of the Qt 4, not some other version
0082 * you may have already installed (you may need to type full path to
0083 * qmake like /usr/local/qt4/bin/qmake).
0084 *
0085 * To reconfigure (with another PREFIX, for example), just run qmake
0086 * with appropriate arguments again.
0087 *
0088 * If you need to specify additional include path or libraries, use
0089 * qmake features (see qmake reference in the Qt documentation). For
0090 * example:
0091 *
0092 \verbatim
0093 $ qmake LIBS+=-L/usr/local/zlib/lib INCLUDEPATH+=/usr/local/zlib/include
0094 \endverbatim
0095 * (note abscence of "-I" before the include path and the presence of "-L"
0096 * before the lib path)
0097 *
0098 * Also note that you may or may not need to define ZLIB_WINAPI (qmake
0099 * DEFINES+=ZLIB_WINAPI) when linking to zlib on Windows, depending on
0100 * how zlib was built (generally, if using zlibwapi.dll, this define is
0101 * needed).
0102 *
0103 * To install compiled library:
0104 \verbatim
0105 $ make install
0106 \endverbatim
0107 *
0108 * By default, QuaZIP compiles as a DLL/SO, but you have other
0109 * options:
0110 * - Just copy appropriate source files to your project and use them,
0111 * but you need to define QUAZIP_STATIC before including any QuaZIP
0112 * headers (best done as a compiler option). This will save you from
0113 * possible side effects of importing/exporting QuaZIP symbols.
0114 * - Compile it as a static library using CONFIG += staticlib qmake
0115 * option. QUAZIP_STATIC is defined automatically by qmake in this case.
0116 *
0117 * Binary compatibility is guaranteed between minor releases starting
0118 * with version 0.5, thanks to the Pimpl idiom. That is, the next binary
0119 * incompatible version will be 1.x.
0120 *
0121 * \section test Testing
0122 *
0123 * To check if QuaZIP's basic features work OK on your platform, you may
0124 * wish to compile the test suite provided in test directory:
0125 \verbatim
0126 $ cd /wherever/quazip/source/is/quazip-x.y.z/qztest
0127 $ qmake
0128 $ make
0129 $ ./qztest
0130 \endverbatim
0131 *
0132 * Note that the test suite looks for the quazip library in the "quazip"
0133 * folder of the project ("../quazip"), but you may wish to use LIBS
0134 * for some systems (Windows often puts the library in the separate
0135 * "debug" or "release" directory). If you wish to use the quazip
0136 * version that's already installed, provide the appropriate path.
0137 *
0138 * On some systems you may need to set PATH, LD_LIBRARY_PATH or
0139 * SHLIB_PATH to get "qztest" to actually run.
0140 *
0141 * If everything went fine, the test suite should report a lot of PASS
0142 * messages. If something goes wrong, it will provide details and a
0143 * warning that some tests failed.
0144 *
0145 * \section using Using
0146 *
0147 * See \ref usage "usage page".
0148 *
0149 * \section contacts Authors and contacts
0150 *
0151 * This wrapper has been written by Sergey A. Tachenov, AKA Alqualos.
0152 * This is my first open source project, so it may suck, but I did not
0153 * find anything like that, so I just had no other choice but to write
0154 * it.
0155 *
0156 * If you have anything to say to me about QuaZIP library, feel free to
0157 * do so (read the \ref faq first, though). I can not promise,
0158 * though, that I fix all the bugs you report in, add any features you
0159 * want, or respond to your critics, or respond to your feedback at all.
0160 * I may be busy, I may be tired of working on QuaZIP, I may be even
0161 * dead already (you never know...).
0162 *
0163 * To report bugs or to post ideas about what should be done, use
0164 * SourceForge.net's <a
0165 * href="http://sourceforge.net/tracker/?group_id=142688">trackers</a>.
0166 * If you want to send me a private message, use my e-mail address
0167 * stachenov@gmail.com.
0168 *
0169 * Do not use e-mail to report bugs, please. Reporting bugs and problems
0170 * with the SourceForge.net's bug report system has that advantage that
0171 * it is visible to public, and I can always search for open tickets
0172 * that were created long ago. It is highly unlikely that I will search
0173 * my mail for that kind of stuff, so if a bug reported by mail isn't
0174 * fixed immediately, it will likely be forgotten forever.
0175 *
0176 * Copyright (C) 2005-2014 Sergey A. Tachenov and contributors
0177 **/