Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > 1f9eb832ba1e4b88d9a5c2b384813bb4 > files > 5366

kdelibs3-apidocs-3.5.10-31.fc15.noarch.rpm

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en_US" xml:lang="en_US">

<head>
  <title>kio/kio: KZip Class Reference (kio/kio)</title>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

  <meta http-equiv="Content-Style-Type" content="text/css" />

  <meta http-equiv="pics-label" content='(pics-1.1 "http://www.icra.org/ratingsv02.html" comment "ICRAonline DE v2.0" l gen true for "http://www.kde.org"  r (nz 1 vz 1 lz 1 oz 1 cb 1) "http://www.rsac.org/ratingsv01.html" l gen true for "http://www.kde.org"  r (n 0 s 0 v 0 l 0))' />

  <meta name="trademark" content="KDE e.V." />
  <meta name="description" content="K Desktop Environment Homepage, KDE.org" />
  <meta name="MSSmartTagsPreventParsing" content="true" />
  <meta name="robots" content="all" />

  <link rel="shortcut icon" href="../../../favicon.ico" />

<link rel="stylesheet" media="screen" type="text/css" title="APIDOX" href="doxygen.css" />



</head>

<body>

<div id="nav_header_top" align="right">
  <a href="#content" class="doNotDisplay" accesskey="2">Skip to main content ::</a>

  <a href="../../.."><img id="nav_header_logo" alt="Home" align="left" src="../../../kde_gear_64.png" border="0" /></a>
  <span class="doNotDisplay">::</span>

  <div id="nav_header_title" align="left">KDE API Reference</div>


</div>

<div id="nav_header_bottom" align="right">
  <span class="doNotDisplay">:: <a href="#navigation" accesskey="5">Skip to Link Menu</a><br/></span>
  <div id="nav_header_bottom_right" style="text-align: left;">
/ <a href="../../..">API Reference</a>
 / <a href="../../html/index.html">kio</a> / <a href=".">kio</a>
  </div>
</div>


<table id="main" border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
      <td valign="top" class="menuheader" height="0"></td>

  <td id="contentcolumn" valign="top" rowspan="2" >
    <div id="content" style="padding-top: 0px;"><div style="width:100%; margin: 0px; padding: 0px;">
    <a name="content"></a>


<!-- Generated by Doxygen 1.7.4 -->
</div>
<div class="header">
  <div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a>  </div>
  <div class="headertitle">
<div class="title">KZip Class Reference</div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="KZip" --><!-- doxytag: inherits="KArchive" -->
<p>This class implements a kioslave to access zip files from KDE.  
 <a href="classKZip.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="kzip_8h_source.html">kzip.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for KZip:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classKZip.png" usemap="#KZip_map" alt=""/>
  <map id="KZip_map" name="KZip_map">
<area href="classKArchive.html" title="KArchive is a base class for reading and writing archives." alt="KArchive" shape="rect" coords="0,0,65,24"/>
</map>
 </div></div>

<p><a href="classKZip-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKZip.html#a3b1610ecac186076da3f424b6103ff04">ExtraField</a> { <a class="el" href="classKZip.html#a3b1610ecac186076da3f424b6103ff04ad5e053e8f68fe61489583558268ed660">NoExtraField</a> =  0, 
<a class="el" href="classKZip.html#a3b1610ecac186076da3f424b6103ff04a7b5b655b17f10dfe213d3b2323e601a0">ModificationTime</a> =  1, 
<b>DefaultExtraField</b> =  1
 }</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKZip.html#ab0654dff75d0f8747b0d90ad39bc2ace">Compression</a> { <a class="el" href="classKZip.html#ab0654dff75d0f8747b0d90ad39bc2aceabf73c42b9987176459a29f393baf4e6a">NoCompression</a> =  0, 
<a class="el" href="classKZip.html#ab0654dff75d0f8747b0d90ad39bc2acea4a8ddbf17f28e126c1e5a297876ada80">DeflateCompression</a> =  1
 }</td></tr>
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKZip.html#a62f0a5753d4ef02f5611b1f8dd7caf50">KZip</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;filename)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKZip.html#a4e07b57c827771e453a9aa3f6df2102b">KZip</a> (<a class="elRef" href="qiodevice.html">QIODevice</a> *dev)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKZip.html#a895868321e479a01525fd8a8e9714525">~KZip</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="qstring.html">QString</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKZip.html#aa2cbbbd27e5ea12f0006ca658f9739b5">fileName</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKZip.html#a5e9a9365ce56a6d1124be7ee8fae360d">setExtraField</a> (<a class="el" href="classKZip.html#a3b1610ecac186076da3f424b6103ff04">ExtraField</a> ef)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classKZip.html#a3b1610ecac186076da3f424b6103ff04">ExtraField</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKZip.html#a30144d67a56d4b60ffed585e691ece13">extraField</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKZip.html#a286095b519b20b3a82449f7b5b50e039">setCompression</a> (<a class="el" href="classKZip.html#ab0654dff75d0f8747b0d90ad39bc2ace">Compression</a> c)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classKZip.html#ab0654dff75d0f8747b0d90ad39bc2ace">Compression</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKZip.html#af4b4e76714e7d6281163ad0fdd664379">compression</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKZip.html#aa7475947dea23ca81926c5f8d6f86182">writeFile</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;name, const <a class="elRef" href="qstring.html">QString</a> &amp;user, const <a class="elRef" href="qstring.html">QString</a> &amp;group, uint size, const char *data)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKZip.html#aced454a772ae28b5a68ca59b874cdef4">prepareWriting</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;name, const <a class="elRef" href="qstring.html">QString</a> &amp;user, const <a class="elRef" href="qstring.html">QString</a> &amp;group, uint size)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKZip.html#a10a0203bbc65aed39afceb498795527a">writeSymLink</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;name, const <a class="elRef" href="qstring.html">QString</a> &amp;target, const <a class="elRef" href="qstring.html">QString</a> &amp;user, const <a class="elRef" href="qstring.html">QString</a> &amp;group, mode_t perm, time_t atime, time_t mtime, time_t ctime)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKZip.html#a86336aa3d3023c5e7b8af641ab983070">prepareWriting</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;name, const <a class="elRef" href="qstring.html">QString</a> &amp;user, const <a class="elRef" href="qstring.html">QString</a> &amp;group, uint size, mode_t perm, time_t atime, time_t mtime, time_t ctime)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKZip.html#aa706b1abdd999e282194ecc4798e4482">writeFile</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;name, const <a class="elRef" href="qstring.html">QString</a> &amp;user, const <a class="elRef" href="qstring.html">QString</a> &amp;group, uint size, mode_t perm, time_t atime, time_t mtime, time_t ctime, const char *data)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKZip.html#a3ef7246739d81c3f5a6fdb088913c23c">writeData</a> (const char *data, uint size)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKZip.html#ae97699138940349b108a8a6271a0f0a1">doneWriting</a> (uint size)</td></tr>
<tr><td colspan="2"><h2><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKZip.html#a974c7043300d0c25f45619eb6edbf413">openArchive</a> (int mode)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKZip.html#a4e360481897297a16fe4cda21caf3db1">closeArchive</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKZip.html#a50ffe0a65d6a9bc415472dd23f89b70a">writeDir</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;name, const <a class="elRef" href="qstring.html">QString</a> &amp;user, const <a class="elRef" href="qstring.html">QString</a> &amp;group)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8ccd82ab21ed46eca3e78d81f6e5bd81"></a><!-- doxytag: member="KZip::virtual_hook" ref="a8ccd82ab21ed46eca3e78d81f6e5bd81" args="(int id, void *data)" -->
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>virtual_hook</b> (int id, void *data)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad2a9532e2366979e9a02aad2b3be6774"></a><!-- doxytag: member="KZip::writeData_impl" ref="ad2a9532e2366979e9a02aad2b3be6774" args="(const char *data, uint size)" -->
bool&#160;</td><td class="memItemRight" valign="bottom"><b>writeData_impl</b> (const char *data, uint size)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad3aa2c1cc6b0814d8033c24cd7fc7c6b"></a><!-- doxytag: member="KZip::prepareWriting_impl" ref="ad3aa2c1cc6b0814d8033c24cd7fc7c6b" args="(const QString &amp;name, const QString &amp;user, const QString &amp;group, uint size, mode_t perm, time_t atime, time_t mtime, time_t ctime)" -->
bool&#160;</td><td class="memItemRight" valign="bottom"><b>prepareWriting_impl</b> (const <a class="elRef" href="qstring.html">QString</a> &amp;name, const <a class="elRef" href="qstring.html">QString</a> &amp;user, const <a class="elRef" href="qstring.html">QString</a> &amp;group, uint size, mode_t perm, time_t atime, time_t mtime, time_t ctime)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5520660b2aced802aa175b06213bd73a"></a><!-- doxytag: member="KZip::writeSymLink_impl" ref="a5520660b2aced802aa175b06213bd73a" args="(const QString &amp;name, const QString &amp;target, const QString &amp;user, const QString &amp;group, mode_t perm, time_t atime, time_t mtime, time_t ctime)" -->
bool&#160;</td><td class="memItemRight" valign="bottom"><b>writeSymLink_impl</b> (const <a class="elRef" href="qstring.html">QString</a> &amp;name, const <a class="elRef" href="qstring.html">QString</a> &amp;target, const <a class="elRef" href="qstring.html">QString</a> &amp;user, const <a class="elRef" href="qstring.html">QString</a> &amp;group, mode_t perm, time_t atime, time_t mtime, time_t ctime)</td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>This class implements a kioslave to access zip files from KDE. </p>
<p>You can use it in IO_ReadOnly or in IO_WriteOnly mode, and it behaves just as expected. It can also be used in IO_ReadWrite mode, in this case one can append files to an existing zip archive. When you append new files, which are not yet in the zip, it works as expected, i.e. the files are appended at the end. When you append a file, which is already in the file, the reference to the old file is dropped and the new one is added to the zip - but the old data from the file itself is not deleted, it is still in the zipfile. so when you want to have a small and garbage-free zipfile, just read the contents of the appended zip file and write it to a new one in IO_WriteOnly mode. This is especially important when you don't want to leak information of how intermediate versions of files in the zip were looking. For more information on the zip fileformat go to <a href="http://www.pkware.com/products/enterprise/white_papers/appnote.html">http://www.pkware.com/products/enterprise/white_papers/appnote.html</a> A class for reading/writing zip archives. </p>
<dl class="author"><dt><b>Author:</b></dt><dd>Holger Schroeder &lt;<a href="mailto:holger-kde@holgis.net">holger-kde@holgis.net</a>&gt; </dd></dl>
<dl class="since"><dt><b>Since:</b></dt><dd>3.1 </dd></dl>

<p>Definition at line <a class="el" href="kzip_8h_source.html#l00053">53</a> of file <a class="el" href="kzip_8h_source.html">kzip.h</a>.</p>
</div><hr/><h2>Member Enumeration Documentation</h2>
<a class="anchor" id="ab0654dff75d0f8747b0d90ad39bc2ace"></a><!-- doxytag: member="KZip::Compression" ref="ab0654dff75d0f8747b0d90ad39bc2ace" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classKZip.html#ab0654dff75d0f8747b0d90ad39bc2ace">KZip::Compression</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Describes the compression type for a given file in the Zip archive. </p>
<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" id="ab0654dff75d0f8747b0d90ad39bc2aceabf73c42b9987176459a29f393baf4e6a"></a><!-- doxytag: member="NoCompression" ref="ab0654dff75d0f8747b0d90ad39bc2aceabf73c42b9987176459a29f393baf4e6a" args="" -->NoCompression</em>&nbsp;</td><td>
<p>Uncompressed. </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="ab0654dff75d0f8747b0d90ad39bc2acea4a8ddbf17f28e126c1e5a297876ada80"></a><!-- doxytag: member="DeflateCompression" ref="ab0654dff75d0f8747b0d90ad39bc2acea4a8ddbf17f28e126c1e5a297876ada80" args="" -->DeflateCompression</em>&nbsp;</td><td>
<p>Deflate compression method. </p>
</td></tr>
</table>
</dd>
</dl>

<p>Definition at line <a class="el" href="kzip_8h_source.html#l00112">112</a> of file <a class="el" href="kzip_8h_source.html">kzip.h</a>.</p>

</div>
</div>
<a class="anchor" id="a3b1610ecac186076da3f424b6103ff04"></a><!-- doxytag: member="KZip::ExtraField" ref="a3b1610ecac186076da3f424b6103ff04" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="classKZip.html#a3b1610ecac186076da3f424b6103ff04">KZip::ExtraField</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Describes the contents of the "extra field" for a given file in the Zip archive. </p>
<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" id="a3b1610ecac186076da3f424b6103ff04ad5e053e8f68fe61489583558268ed660"></a><!-- doxytag: member="NoExtraField" ref="a3b1610ecac186076da3f424b6103ff04ad5e053e8f68fe61489583558268ed660" args="" -->NoExtraField</em>&nbsp;</td><td>
<p>No extra field. </p>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a3b1610ecac186076da3f424b6103ff04a7b5b655b17f10dfe213d3b2323e601a0"></a><!-- doxytag: member="ModificationTime" ref="a3b1610ecac186076da3f424b6103ff04a7b5b655b17f10dfe213d3b2323e601a0" args="" -->ModificationTime</em>&nbsp;</td><td>
<p>Modification time ("extended timestamp" header) </p>
</td></tr>
</table>
</dd>
</dl>

<p>Definition at line <a class="el" href="kzip_8h_source.html#l00089">89</a> of file <a class="el" href="kzip_8h_source.html">kzip.h</a>.</p>

</div>
</div>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a62f0a5753d4ef02f5611b1f8dd7caf50"></a><!-- doxytag: member="KZip::KZip" ref="a62f0a5753d4ef02f5611b1f8dd7caf50" args="(const QString &amp;filename)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">KZip::KZip </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>filename</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Creates an instance that operates on the given filename. </p>
<p>using the compression filter associated to given mimetype.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">filename</td><td>is a local path (e.g. "/home/holger/myfile.zip") </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="kzip_8cpp_source.html#l00335">335</a> of file <a class="el" href="kzip_8cpp_source.html">kzip.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a4e07b57c827771e453a9aa3f6df2102b"></a><!-- doxytag: member="KZip::KZip" ref="a4e07b57c827771e453a9aa3f6df2102b" args="(QIODevice *dev)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">KZip::KZip </td>
          <td>(</td>
          <td class="paramtype"><a class="elRef" href="qiodevice.html">QIODevice</a> *&#160;</td>
          <td class="paramname"><em>dev</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Creates an instance that operates on the given device. </p>
<p>The device can be compressed (<a class="el" href="classKFilterDev.html" title="A class for reading and writing compressed data onto a device (e.g.">KFilterDev</a>) or not (<a class="elRef" href="qfile.html">QFile</a>, etc.). </p>
<dl class="warning"><dt><b>Warning:</b></dt><dd>Do not assume that giving a <a class="elRef" href="qfile.html">QFile</a> here will decompress the file, in case it's compressed! </dd></dl>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">dev</td><td>the device to access </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="kzip_8cpp_source.html#l00347">347</a> of file <a class="el" href="kzip_8cpp_source.html">kzip.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a895868321e479a01525fd8a8e9714525"></a><!-- doxytag: member="KZip::~KZip" ref="a895868321e479a01525fd8a8e9714525" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">KZip::~KZip </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>If the zip file is still opened, then it will be closed automatically by the destructor. </p>

<p>Definition at line <a class="el" href="kzip_8cpp_source.html#l00354">354</a> of file <a class="el" href="kzip_8cpp_source.html">kzip.cpp</a>.</p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a4e360481897297a16fe4cda21caf3db1"></a><!-- doxytag: member="KZip::closeArchive" ref="a4e360481897297a16fe4cda21caf3db1" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KZip::closeArchive </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Closes the archive. </p>

<p>Implements <a class="el" href="classKArchive.html#a52fa0982c4acaf9dcca8df09749e99a0">KArchive</a>.</p>

<p>Definition at line <a class="el" href="kzip_8cpp_source.html#l00855">855</a> of file <a class="el" href="kzip_8cpp_source.html">kzip.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="af4b4e76714e7d6281163ad0fdd664379"></a><!-- doxytag: member="KZip::compression" ref="af4b4e76714e7d6281163ad0fdd664379" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classKZip.html#ab0654dff75d0f8747b0d90ad39bc2ace">KZip::Compression</a> KZip::compression </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The current compression mode that will be used for new files. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the current compression mode </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKZip.html#a286095b519b20b3a82449f7b5b50e039" title="Call this before writeFile or prepareWriting, to define whether the next files to be written should b...">setCompression()</a> </dd></dl>

<p>Definition at line <a class="el" href="kzip_8cpp_source.html#l01413">1413</a> of file <a class="el" href="kzip_8cpp_source.html">kzip.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="ae97699138940349b108a8a6271a0f0a1"></a><!-- doxytag: member="KZip::doneWriting" ref="ae97699138940349b108a8a6271a0f0a1" args="(uint size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KZip::doneWriting </td>
          <td>(</td>
          <td class="paramtype">uint&#160;</td>
          <td class="paramname"><em>size</em></td><td>)</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Write data to a file that has been created using <a class="el" href="classKZip.html#aced454a772ae28b5a68ca59b874cdef4" title="Alternative method for writing: call prepareWriting(), then feed the data in small chunks using write...">prepareWriting()</a>. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">size</td><td>the size of the file </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if successful, false otherwise </dd></dl>

<p>Implements <a class="el" href="classKArchive.html#aa25a334b408e743c4ac928597777a5d0">KArchive</a>.</p>

<p>Definition at line <a class="el" href="kzip_8cpp_source.html#l01278">1278</a> of file <a class="el" href="kzip_8cpp_source.html">kzip.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a30144d67a56d4b60ffed585e691ece13"></a><!-- doxytag: member="KZip::extraField" ref="a30144d67a56d4b60ffed585e691ece13" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classKZip.html#a3b1610ecac186076da3f424b6103ff04">KZip::ExtraField</a> KZip::extraField </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The current type of "extra field" that will be used for new files. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the current type of "extra field" </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKZip.html#a5e9a9365ce56a6d1124be7ee8fae360d" title="Call this before writeFile or prepareWriting, to define what the next file to be written should have ...">setExtraField()</a> </dd></dl>

<p>Definition at line <a class="el" href="kzip_8cpp_source.html#l01423">1423</a> of file <a class="el" href="kzip_8cpp_source.html">kzip.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="aa2cbbbd27e5ea12f0006ca658f9739b5"></a><!-- doxytag: member="KZip::fileName" ref="aa2cbbbd27e5ea12f0006ca658f9739b5" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qstring.html">QString</a> KZip::fileName </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The name of the zip file, as passed to the constructor. </p>
<p>Null if you used the <a class="elRef" href="qiodevice.html">QIODevice</a> constructor. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the zip's file name, or null if a <a class="elRef" href="qiodevice.html">QIODevice</a> is used </dd></dl>

<p>Definition at line <a class="el" href="kzip_8h_source.html#l00084">84</a> of file <a class="el" href="kzip_8h_source.html">kzip.h</a>.</p>

</div>
</div>
<a class="anchor" id="a974c7043300d0c25f45619eb6edbf413"></a><!-- doxytag: member="KZip::openArchive" ref="a974c7043300d0c25f45619eb6edbf413" args="(int mode)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KZip::openArchive </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>mode</em></td><td>)</td>
          <td><code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Opens the archive for reading. </p>
<p>Parses the directory listing of the archive and creates the KArchiveDirectory/KArchiveFile entries. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">mode</td><td>the mode of the file </td></tr>
  </table>
  </dd>
</dl>

<p>Implements <a class="el" href="classKArchive.html#aa31f2331fa3be7abe14811eca7f2e54b">KArchive</a>.</p>

<p>Definition at line <a class="el" href="kzip_8cpp_source.html#l00369">369</a> of file <a class="el" href="kzip_8cpp_source.html">kzip.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a86336aa3d3023c5e7b8af641ab983070"></a><!-- doxytag: member="KZip::prepareWriting" ref="a86336aa3d3023c5e7b8af641ab983070" args="(const QString &amp;name, const QString &amp;user, const QString &amp;group, uint size, mode_t perm, time_t atime, time_t mtime, time_t ctime)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KZip::prepareWriting </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>user</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>group</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint&#160;</td>
          <td class="paramname"><em>size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">mode_t&#160;</td>
          <td class="paramname"><em>perm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">time_t&#160;</td>
          <td class="paramname"><em>atime</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">time_t&#160;</td>
          <td class="paramname"><em>mtime</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">time_t&#160;</td>
          <td class="paramname"><em>ctime</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Here's another way of writing a file into an archive: Call prepareWriting, then call <a class="el" href="classKZip.html#a3ef7246739d81c3f5a6fdb088913c23c" title="Write data to a file that has been created using prepareWriting().">writeData()</a> as many times as wanted then call doneWriting( totalSize ). </p>
<p>For tar.gz files, you need to know the size before hand, it is needed in the header! For zip files, size isn't used.</p>
<p>This method also allows some file metadata to be set. However, depending on the archive type not all metadata might be regarded. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>the name of the file </td></tr>
    <tr><td class="paramname">user</td><td>the user that owns the file </td></tr>
    <tr><td class="paramname">group</td><td>the group that owns the file </td></tr>
    <tr><td class="paramname">size</td><td>the size of the file </td></tr>
    <tr><td class="paramname">perm</td><td>permissions of the file </td></tr>
    <tr><td class="paramname">atime</td><td>time the file was last accessed </td></tr>
    <tr><td class="paramname">mtime</td><td>modification time of the file </td></tr>
    <tr><td class="paramname">ctime</td><td>creation time of the file </td></tr>
  </table>
  </dd>
</dl>
<dl class="since"><dt><b>Since:</b></dt><dd>3.2 </dd></dl>
<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000007">Todo:</a></b></dt><dd>TODO(BIC): make this virtual. For now use virtual hook. </dd></dl>

<p>Reimplemented from <a class="el" href="classKArchive.html#a2a44d91c957af94cd80111df993d022a">KArchive</a>.</p>

<p>Definition at line <a class="el" href="kzip_8cpp_source.html#l01096">1096</a> of file <a class="el" href="kzip_8cpp_source.html">kzip.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="aced454a772ae28b5a68ca59b874cdef4"></a><!-- doxytag: member="KZip::prepareWriting" ref="aced454a772ae28b5a68ca59b874cdef4" args="(const QString &amp;name, const QString &amp;user, const QString &amp;group, uint size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KZip::prepareWriting </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>user</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>group</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint&#160;</td>
          <td class="paramname"><em>size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Alternative method for writing: call <a class="el" href="classKZip.html#aced454a772ae28b5a68ca59b874cdef4" title="Alternative method for writing: call prepareWriting(), then feed the data in small chunks using write...">prepareWriting()</a>, then feed the data in small chunks using <a class="el" href="classKZip.html#a3ef7246739d81c3f5a6fdb088913c23c" title="Write data to a file that has been created using prepareWriting().">writeData()</a>, and call <a class="el" href="classKZip.html#ae97699138940349b108a8a6271a0f0a1" title="Write data to a file that has been created using prepareWriting().">doneWriting()</a> when done. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>can include subdirs e.g. path/to/the/file </td></tr>
    <tr><td class="paramname">user</td><td>the user owning the file </td></tr>
    <tr><td class="paramname">group</td><td>the group owning the file </td></tr>
    <tr><td class="paramname">size</td><td>unused argument </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if successful, false otherwise </dd></dl>

<p>Implements <a class="el" href="classKArchive.html#a60b42cc93e203295157d6cff896dc225">KArchive</a>.</p>

<p>Definition at line <a class="el" href="kzip_8cpp_source.html#l01087">1087</a> of file <a class="el" href="kzip_8cpp_source.html">kzip.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a286095b519b20b3a82449f7b5b50e039"></a><!-- doxytag: member="KZip::setCompression" ref="a286095b519b20b3a82449f7b5b50e039" args="(Compression c)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KZip::setCompression </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classKZip.html#ab0654dff75d0f8747b0d90ad39bc2ace">Compression</a>&#160;</td>
          <td class="paramname"><em>c</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Call this before writeFile or prepareWriting, to define whether the next files to be written should be compressed or not. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">c</td><td>the new compression mode </td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKZip.html#af4b4e76714e7d6281163ad0fdd664379" title="The current compression mode that will be used for new files.">compression()</a> </dd></dl>

<p>Definition at line <a class="el" href="kzip_8cpp_source.html#l01408">1408</a> of file <a class="el" href="kzip_8cpp_source.html">kzip.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a5e9a9365ce56a6d1124be7ee8fae360d"></a><!-- doxytag: member="KZip::setExtraField" ref="a5e9a9365ce56a6d1124be7ee8fae360d" args="(ExtraField ef)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void KZip::setExtraField </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classKZip.html#a3b1610ecac186076da3f424b6103ff04">ExtraField</a>&#160;</td>
          <td class="paramname"><em>ef</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Call this before writeFile or prepareWriting, to define what the next file to be written should have in its extra field. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">ef</td><td>the type of "extra field" </td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKZip.html#a30144d67a56d4b60ffed585e691ece13" title="The current type of &quot;extra field&quot; that will be used for new files.">extraField()</a> </dd></dl>

<p>Definition at line <a class="el" href="kzip_8cpp_source.html#l01418">1418</a> of file <a class="el" href="kzip_8cpp_source.html">kzip.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a3ef7246739d81c3f5a6fdb088913c23c"></a><!-- doxytag: member="KZip::writeData" ref="a3ef7246739d81c3f5a6fdb088913c23c" args="(const char *data, uint size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KZip::writeData </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint&#160;</td>
          <td class="paramname"><em>size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Write data to a file that has been created using <a class="el" href="classKZip.html#aced454a772ae28b5a68ca59b874cdef4" title="Alternative method for writing: call prepareWriting(), then feed the data in small chunks using write...">prepareWriting()</a>. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">data</td><td>a pointer to the data </td></tr>
    <tr><td class="paramname">size</td><td>the size of the chunk </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if successful, false otherwise </dd></dl>

<p>Reimplemented from <a class="el" href="classKArchive.html#ac6cc6eb9cf66e19de86fc8b7631a35f3">KArchive</a>.</p>

<p>Definition at line <a class="el" href="kzip_8cpp_source.html#l01382">1382</a> of file <a class="el" href="kzip_8cpp_source.html">kzip.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a50ffe0a65d6a9bc415472dd23f89b70a"></a><!-- doxytag: member="KZip::writeDir" ref="a50ffe0a65d6a9bc415472dd23f89b70a" args="(const QString &amp;name, const QString &amp;user, const QString &amp;group)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KZip::writeDir </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>user</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>group</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>If an archive is opened for writing then you can add new directories using this function. </p>
<p><a class="el" href="classKArchive.html" title="KArchive is a base class for reading and writing archives.">KArchive</a> won't write one directory twice.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>the name of the directory </td></tr>
    <tr><td class="paramname">user</td><td>the user that owns the directory </td></tr>
    <tr><td class="paramname">group</td><td>the group that owns the directory</td></tr>
  </table>
  </dd>
</dl>
<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000001">Todo:</a></b></dt><dd>TODO(BIC): make this a thin wrapper around writeDir(name,user,group,perm,atime,mtime,ctime) or eliminate it </dd></dl>

<p>Implements <a class="el" href="classKArchive.html#ae8a68fbcdc1daa3a125b5899676cecc1">KArchive</a>.</p>

<p>Definition at line <a class="el" href="kzip_8cpp_source.html#l01054">1054</a> of file <a class="el" href="kzip_8cpp_source.html">kzip.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="aa706b1abdd999e282194ecc4798e4482"></a><!-- doxytag: member="KZip::writeFile" ref="aa706b1abdd999e282194ecc4798e4482" args="(const QString &amp;name, const QString &amp;user, const QString &amp;group, uint size, mode_t perm, time_t atime, time_t mtime, time_t ctime, const char *data)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KZip::writeFile </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>user</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>group</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint&#160;</td>
          <td class="paramname"><em>size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">mode_t&#160;</td>
          <td class="paramname"><em>perm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">time_t&#160;</td>
          <td class="paramname"><em>atime</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">time_t&#160;</td>
          <td class="paramname"><em>mtime</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">time_t&#160;</td>
          <td class="paramname"><em>ctime</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>data</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>If an archive is opened for writing then you can add a new file using this function. </p>
<p>If the file name is for example "mydir/test1" then the directory "mydir" is automatically appended first if that did not happen yet.</p>
<p>This method also allows some file metadata to be set. However, depending on the archive type not all metadata might be regarded. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>the name of the file </td></tr>
    <tr><td class="paramname">user</td><td>the user that owns the file </td></tr>
    <tr><td class="paramname">group</td><td>the group that owns the file </td></tr>
    <tr><td class="paramname">size</td><td>the size of the file </td></tr>
    <tr><td class="paramname">perm</td><td>permissions of the file </td></tr>
    <tr><td class="paramname">atime</td><td>time the file was last accessed </td></tr>
    <tr><td class="paramname">mtime</td><td>modification time of the file </td></tr>
    <tr><td class="paramname">ctime</td><td>creation time of the file </td></tr>
    <tr><td class="paramname">data</td><td>the data to write (<code>size</code> bytes) </td></tr>
  </table>
  </dd>
</dl>
<dl class="since"><dt><b>Since:</b></dt><dd>3.2 </dd></dl>
<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000005">Todo:</a></b></dt><dd>TODO(BIC): make virtual. For now use virtual hook </dd></dl>

<p>Reimplemented from <a class="el" href="classKArchive.html#a1b5fba2a65734a795d0d5109817fd651">KArchive</a>.</p>

<p>Definition at line <a class="el" href="kzip_8cpp_source.html#l01078">1078</a> of file <a class="el" href="kzip_8cpp_source.html">kzip.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="aa7475947dea23ca81926c5f8d6f86182"></a><!-- doxytag: member="KZip::writeFile" ref="aa7475947dea23ca81926c5f8d6f86182" args="(const QString &amp;name, const QString &amp;user, const QString &amp;group, uint size, const char *data)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KZip::writeFile </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>user</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>group</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">uint&#160;</td>
          <td class="paramname"><em>size</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>data</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>If an archive is opened for writing then you can add a new file using this function. </p>
<p>This method takes the whole data at once. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>can include subdirs e.g. path/to/the/file </td></tr>
    <tr><td class="paramname">user</td><td>the user owning the file </td></tr>
    <tr><td class="paramname">group</td><td>the group owning the file </td></tr>
    <tr><td class="paramname">size</td><td>the size of the file </td></tr>
    <tr><td class="paramname">data</td><td>a pointer to the data </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if successful, false otherwise </dd></dl>

<p>Reimplemented from <a class="el" href="classKArchive.html#a11a0ccee850c26cfcd835ec14c5c3d96">KArchive</a>.</p>

<p>Definition at line <a class="el" href="kzip_8cpp_source.html#l01069">1069</a> of file <a class="el" href="kzip_8cpp_source.html">kzip.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a10a0203bbc65aed39afceb498795527a"></a><!-- doxytag: member="KZip::writeSymLink" ref="a10a0203bbc65aed39afceb498795527a" args="(const QString &amp;name, const QString &amp;target, const QString &amp;user, const QString &amp;group, mode_t perm, time_t atime, time_t mtime, time_t ctime)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KZip::writeSymLink </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>target</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>user</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>group</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">mode_t&#160;</td>
          <td class="paramname"><em>perm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">time_t&#160;</td>
          <td class="paramname"><em>atime</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">time_t&#160;</td>
          <td class="paramname"><em>mtime</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">time_t&#160;</td>
          <td class="paramname"><em>ctime</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Writes a symbolic link to the archive if the archive must be opened for writing. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">name</td><td>name of symbolic link </td></tr>
    <tr><td class="paramname">target</td><td>target of symbolic link </td></tr>
    <tr><td class="paramname">user</td><td>the user that owns the directory </td></tr>
    <tr><td class="paramname">group</td><td>the group that owns the directory </td></tr>
    <tr><td class="paramname">perm</td><td>permissions of the directory </td></tr>
    <tr><td class="paramname">atime</td><td>time the file was last accessed </td></tr>
    <tr><td class="paramname">mtime</td><td>modification time of the file </td></tr>
    <tr><td class="paramname">ctime</td><td>creation time of the file </td></tr>
  </table>
  </dd>
</dl>
<dl class="since"><dt><b>Since:</b></dt><dd>3.2 </dd></dl>
<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000003">Todo:</a></b></dt><dd>TODO(BIC) make virtual. For now it must be implemented by virtual_hook. </dd></dl>

<p>Reimplemented from <a class="el" href="classKArchive.html#a3798b8058f9f0639a2102e12722c95bb">KArchive</a>.</p>

<p>Definition at line <a class="el" href="kzip_8cpp_source.html#l01315">1315</a> of file <a class="el" href="kzip_8cpp_source.html">kzip.cpp</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="kzip_8h_source.html">kzip.h</a></li>
<li><a class="el" href="kzip_8cpp_source.html">kzip.cpp</a></li>
</ul>
</div>
    </div></div>


      </td>
  </tr>
  <tr>
    <td valign="top" id="leftmenu" width="25%">
      <a name="navigation"></a>
      <div class="menu_box"><h2>kio/kio</h2>
<div class="nav_list">
<ul><li><a href="index.html">Main Page</a></li><li><a href="modules.html">Modules</a></li><li><a href="namespaces.html">Namespace List</a></li><li><a href="hierarchy.html">Class Hierarchy</a></li><li><a href="classes.html">Alphabetical List</a></li><li><a href="annotated.html">Class List</a></li><li><a href="files.html">File List</a></li><li><a href="namespacemembers.html">Namespace Members</a></li><li><a href="functions.html">Class Members</a></li><li><a href="pages.html">Related Pages</a></li></ul>
<!--
<h2>Class Picker</h2>
<div style="text-align: center;">
<form name="guideform">
<select name="guidelinks" style="width:100%;" onChange="window.location=document.guideform.guidelinks.options[document.guideform.guidelinks.selectedIndex].value">
<option value="annotated.html">-- Choose --</option>
  <option value="classKACL.html">kacl</option>,  <option value="classKAr.html">kar</option>,  <option value="classKArchive.html">karchive</option>,  <option value="classKArchiveDirectory.html">karchivedirectory</option>,  <option value="classKArchiveEntry.html">karchiveentry</option>,  <option value="classKArchiveFile.html">karchivefile</option>,  <option value="classKAutoMount.html">kautomount</option>,  <option value="classKAutoUnmount.html">kautounmount</option>,  <option value="classKDataTool.html">kdatatool</option>,  <option value="classKDataToolAction.html">kdatatoolaction</option>,  <option value="classKDataToolInfo.html">kdatatoolinfo</option>,  <option value="classKDCOPServiceStarter.html">kdcopservicestarter</option>,  <option value="classKDEDesktopMimeType.html">kdedesktopmimetype</option>,  <option value="classKDirLister.html">kdirlister</option>,  <option value="classKDirNotify.html">kdirnotify</option>,  <option value="classKDirWatch.html">kdirwatch</option>,  <option value="classKEMailSettings.html">kemailsettings</option>,  <option value="classKExecMimeType.html">kexecmimetype</option>,  <option value="classKFileFilter.html">kfilefilter</option>,  <option value="classKFileItem.html">kfileitem</option>,  <option value="classKFileMetaInfo.html">kfilemetainfo</option>,  <option value="classKFileMetaInfoGroup.html">kfilemetainfogroup</option>,  <option value="classKFileMetaInfoItem.html">kfilemetainfoitem</option>,  <option value="classKFileMimeTypeInfo.html">kfilemimetypeinfo</option>,  <option value="classKFileMimeTypeInfo_1_1GroupInfo.html">kfilemimetypeinfo::groupinfo</option>,  <option value="classKFileMimeTypeInfo_1_1ItemInfo.html">kfilemimetypeinfo::iteminfo</option>,  <option value="classKFilePlugin.html">kfileplugin</option>,  <option value="classKFileShare.html">kfileshare</option>,  <option value="classKFilterBase.html">kfilterbase</option>,  <option value="classKFilterDev.html">kfilterdev</option>,  <option value="classKFolderType.html">kfoldertype</option>,  <option value="classKImageIO.html">kimageio</option>,  <option value="classKIO_1_1AuthInfo.html">kio::authinfo</option>,  <option value="classKIO_1_1ChmodJob.html">kio::chmodjob</option>,  <option value="classKIO_1_1Connection.html">kio::connection</option>,  <option value="classKIO_1_1CopyJob.html">kio::copyjob</option>,  <option value="classKIO_1_1DataProtocol.html">kio::dataprotocol</option>,  <option value="classKIO_1_1DataSlave.html">kio::dataslave</option>,  <option value="classKIO_1_1DavJob.html">kio::davjob</option>,  <option value="classKIO_1_1DeleteJob.html">kio::deletejob</option>,  <option value="classKIO_1_1FileCopyJob.html">kio::filecopyjob</option>,  <option value="classKIO_1_1ForwardingSlaveBase.html">kio::forwardingslavebase</option>,  <option value="classKIO_1_1Job.html">kio::job</option>,  <option value="classKIO_1_1ListJob.html">kio::listjob</option>,  <option value="classKIO_1_1MetaData.html">kio::metadata</option>,  <option value="classKIO_1_1MetaInfoJob.html">kio::metainfojob</option>,  <option value="classKIO_1_1MimetypeJob.html">kio::mimetypejob</option>,  <option value="classKIO_1_1MkdirJob.html">kio::mkdirjob</option>,  <option value="classKIO_1_1MultiGetJob.html">kio::multigetjob</option>,  <option value="classKIO_1_1NetAccess.html">kio::netaccess</option>,  <option value="classKIO_1_1NetRC.html">kio::netrc</option>,  <option value="classKIO_1_1PasswordDialog.html">kio::passworddialog</option>,  <option value="classKIO_1_1PreviewJob.html">kio::previewjob</option>,  <option value="classKIO_1_1ProgressBase.html">kio::progressbase</option>,  <option value="classKIO_1_1RenameDlg.html">kio::renamedlg</option>,  <option value="classKIO_1_1Scheduler.html">kio::scheduler</option>,  <option value="classKIO_1_1SimpleJob.html">kio::simplejob</option>,  <option value="classKIO_1_1Slave.html">kio::slave</option>,  <option value="classKIO_1_1SlaveBase.html">kio::slavebase</option>,  <option value="classKIO_1_1SlaveConfig.html">kio::slaveconfig</option>,  <option value="classKIO_1_1SlaveInterface.html">kio::slaveinterface</option>,  <option value="classKIO_1_1StatJob.html">kio::statjob</option>,  <option value="classKIO_1_1StatusbarProgress.html">kio::statusbarprogress</option>,  <option value="classKIO_1_1StoredTransferJob.html">kio::storedtransferjob</option>,  <option value="classKIO_1_1TCPSlaveBase.html">kio::tcpslavebase</option>,  <option value="classKIO_1_1TransferJob.html">kio::transferjob</option>,  <option value="classKLimitedIODevice.html">klimitediodevice</option>,  <option value="classKMimeMagic.html">kmimemagic</option>,  <option value="classKMimeMagicResult.html">kmimemagicresult</option>,  <option value="classKMimeType.html">kmimetype</option>,  <option value="classKMimeTypeChooser.html">kmimetypechooser</option>,  <option value="classKMimeTypeChooserDialog.html">kmimetypechooserdialog</option>,  <option value="classKMimeTypeResolver.html">kmimetyperesolver</option>,  <option value="classKNFSShare.html">knfsshare</option>,  <option value="classKOCRDialog.html">kocrdialog</option>,  <option value="classKOCRDialogFactory.html">kocrdialogfactory</option>,  <option value="classKOpenWithHandler.html">kopenwithhandler</option>,  <option value="classKProtocolInfo.html">kprotocolinfo</option>,  <option value="classKProtocolManager.html">kprotocolmanager</option>,  <option value="classKRemoteEncoding.html">kremoteencoding</option>,  <option value="classKRun.html">krun</option>,  <option value="classKSambaShare.html">ksambashare</option>,  <option value="classKScanDialog.html">kscandialog</option>,  <option value="classKScanDialogFactory.html">kscandialogfactory</option>,  <option value="classKService.html">kservice</option>,  <option value="classKServiceGroup.html">kservicegroup</option>,  <option value="classKServiceOffer.html">kserviceoffer</option>,  <option value="classKServiceType.html">kservicetype</option>,  <option value="classKServiceTypeProfile.html">kservicetypeprofile</option>,  <option value="classKShellCompletion.html">kshellcompletion</option>,  <option value="classKShred.html">kshred</option>,  <option value="classKSimpleFileFilter.html">ksimplefilefilter</option>,  <option value="classKTar.html">ktar</option>,  <option value="classKTrader.html">ktrader</option>,  <option value="classKURIFilter.html">kurifilter</option>,  <option value="classKURIFilterData.html">kurifilterdata</option>,  <option value="classKURIFilterPlugin.html">kurifilterplugin</option>,  <option value="classKURIFilterPluginList.html">kurifilterpluginlist</option>,  <option value="classKURLCompletion.html">kurlcompletion</option>,  <option value="classKURLPixmapProvider.html">kurlpixmapprovider</option>,  <option value="classKZip.html">kzip</option>,  <option value="classObserver.html">observer</option>,  <option value="classRenameDlgPlugin.html">renamedlgplugin</option>,  <option value="classThumbCreator.html">thumbcreator</option>,
</select>
</form>
</div>
-->
</div></div>
<div class="menu_box"><h2>API Dox</h2>
<div class="nav_list">
<ul>
<li><a href="../../../arts/html/index.html">arts</a></li><li><a href="../../../dcop/html/index.html">dcop</a></li><li><a href="../../../dnssd/html/index.html">dnssd</a></li><li><a href="../../../interfaces/html/index.html">interfaces</a></li><li>&nbsp;&nbsp;&nbsp;&nbsp;<a href="../../../interfaces/kimproxy/interface/html/index.html">interface</a></li><li>&nbsp;&nbsp;&nbsp;&nbsp;<a href="../../../interfaces/kimproxy/library/html/index.html">library</a></li><li>&nbsp;&nbsp;<a href="../../../interfaces/kspeech/html/index.html">kspeech</a></li><li>&nbsp;&nbsp;<a href="../../../interfaces/ktexteditor/html/index.html">ktexteditor</a></li><li><a href="../../../kabc/html/index.html">kabc</a></li><li><a href="../../../kate/html/index.html">kate</a></li><li><a href="../../../kcmshell/html/index.html">kcmshell</a></li><li><a href="../../../kdecore/html/index.html">kdecore</a></li><li><a href="../../../kded/html/index.html">kded</a></li><li><a href="../../../kdefx/html/index.html">kdefx</a></li><li><a href="../../../kdeprint/html/index.html">kdeprint</a></li><li><a href="../../../kdesu/html/index.html">kdesu</a></li><li><a href="../../../kdeui/html/index.html">kdeui</a></li><li><a href="../../../kdoctools/html/index.html">kdoctools</a></li><li><a href="../../../khtml/html/index.html">khtml</a></li><li><a href="../../../kimgio/html/index.html">kimgio</a></li><li><a href="../../../kinit/html/index.html">kinit</a></li><li><a href="../../../kio/html/index.html">kio</a></li><li>&nbsp;&nbsp;<a href="../../../kio/bookmarks/html/index.html">bookmarks</a></li><li>&nbsp;&nbsp;<a href="../../../kio/httpfilter/html/index.html">httpfilter</a></li><li>&nbsp;&nbsp;<a href="../../../kio/kfile/html/index.html">kfile</a></li><li>&nbsp;&nbsp;<a href="../../../kio/kio/html/index.html">kio</a></li><li>&nbsp;&nbsp;<a href="../../../kio/kioexec/html/index.html">kioexec</a></li><li>&nbsp;&nbsp;<a href="../../../kio/kpasswdserver/html/index.html">kpasswdserver</a></li><li>&nbsp;&nbsp;<a href="../../../kio/kssl/html/index.html">kssl</a></li><li><a href="../../../kioslave/html/index.html">kioslave</a></li><li>&nbsp;&nbsp;<a href="../../../kioslave/http/html/index.html">http</a></li><li><a href="../../../kjs/html/index.html">kjs</a></li><li><a href="../../../kmdi/html/index.html">kmdi</a></li><li>&nbsp;&nbsp;<a href="../../../kmdi/kmdi/html/index.html">kmdi</a></li><li><a href="../../../knewstuff/html/index.html">knewstuff</a></li><li><a href="../../../kparts/html/index.html">kparts</a></li><li><a href="../../../kresources/html/index.html">kresources</a></li><li><a href="../../../kspell2/html/index.html">kspell2</a></li><li><a href="../../../kunittest/html/index.html">kunittest</a></li><li><a href="../../../kutils/html/index.html">kutils</a></li><li><a href="../../../kwallet/html/index.html">kwallet</a></li><li><a href="../../../libkmid/html/index.html">libkmid</a></li><li><a href="../../../libkscreensaver/html/index.html">libkscreensaver</a></li>
</ul></div></div>


        </td>
</tr>
</table>

<span class="doNotDisplay">
  <a href="http://www.kde.org/" accesskey="8">KDE Home</a> |
  <a href="http://accessibility.kde.org/" accesskey="9">KDE Accessibility Home</a> |
  <a href="http://www.kde.org/media/accesskeys.php" accesskey="0">Description of Access Keys</a>
</span>


<div style="height: 8px"></div>

<div id="footer">
  <div id="footer_left">
    Maintained by <a href="&#109;&#97;&#105;&#108;&#116;&#111;&#58;groo&#116;&#64;kde&#46;or&#x67;">Adriaan de Groot</a>
and
<a href="&#109;a&#105;&#108;&#116;&#111;&#58;w&#105;nter&#64;kde&#46;or&#x67">Allen Winter</a>.
<br/>
    KDE and K Desktop Environment are trademarks of <a href="http://www.kde.org/areas/kde-ev/" title="Homepage of the KDE non-profit Organization">KDE e.V.</a> |
    <a href="http://www.kde.org/contact/impressum.php">Legal</a>
  </div>
  <div id="footer_right"><img src="/media/images/footer_right.png" style="margin: 0px" alt="" /></div>
</div>

<!--
WARNING: DO NOT SEND MAIL TO THE FOLLOWING EMAIL ADDRESS! YOU WILL
BE BLOCKED INSTANTLY AND PERMANENTLY!
<a href="mailto:aaaatrap-425acc3b5374943f@kde.org">Block me</a>
WARNING END
-->

</body>
</html>