Sophie

Sophie

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

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: KArchive 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-methods">Public Member Functions</a> &#124;
<a href="#pro-types">Protected Types</a> &#124;
<a href="#pro-methods">Protected Member Functions</a>  </div>
  <div class="headertitle">
<div class="title">KArchive Class Reference</div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="KArchive" -->
<p><a class="el" href="classKArchive.html" title="KArchive is a base class for reading and writing archives.">KArchive</a> is a base class for reading and writing archives.  
 <a href="classKArchive.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="karchive_8h_source.html">karchive.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for KArchive:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classKArchive.png" usemap="#KArchive_map" alt=""/>
  <map id="KArchive_map" name="KArchive_map">
<area href="classKAr.html" title="KAr is a class for reading archives in ar format." alt="KAr" shape="rect" coords="0,56,65,80"/>
<area href="classKTar.html" title="A class for reading / writing (optionally compressed) tar archives." alt="KTar" shape="rect" coords="75,56,140,80"/>
<area href="classKZip.html" title="This class implements a kioslave to access zip files from KDE." alt="KZip" shape="rect" coords="150,56,215,80"/>
</map>
 </div></div>

<p><a href="classKArchive-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public 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="classKArchive.html#a2b7e12eb39e9aad18d696ecfa31af969">open</a> (int mode)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKArchive.html#a434df272f32f3c9ca69134488804e9c9">close</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKArchive.html#a32a576bf8c461db02f582966e8c9edc3">closeSucceeded</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKArchive.html#ace294a6f5bf3f46019ab59a346287149">isOpened</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKArchive.html#a8b33f0b89ed4dbc81d03bb5498b91048">mode</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="qiodevice.html">QIODevice</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKArchive.html#a42393a1c08518fcf8d8d956872be72ea">device</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classKArchiveDirectory.html">KArchiveDirectory</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKArchive.html#a2fde221a994b790f0dad3799bdad24ad">directory</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKArchive.html#a1e3b4d361c4b57fe8cb956a9b49a85e4">addLocalFile</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;fileName, const <a class="elRef" href="qstring.html">QString</a> &amp;destName)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKArchive.html#ab5a2f90d4003664127e744d078162c34">addLocalDirectory</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;path, const <a class="elRef" href="qstring.html">QString</a> &amp;destName)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKArchive.html#ae8a68fbcdc1daa3a125b5899676cecc1">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)=0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKArchive.html#a34c27e0aa9dc810ba1d5771f504162b3">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, 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="classKArchive.html#a3798b8058f9f0639a2102e12722c95bb">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">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKArchive.html#a11a0ccee850c26cfcd835ec14c5c3d96">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">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKArchive.html#a1b5fba2a65734a795d0d5109817fd651">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">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKArchive.html#a60b42cc93e203295157d6cff896dc225">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)=0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKArchive.html#a2a44d91c957af94cd80111df993d022a">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="classKArchive.html#ac6cc6eb9cf66e19de86fc8b7631a35f3">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="classKArchive.html#aa25a334b408e743c4ac928597777a5d0">doneWriting</a> (uint size)=0</td></tr>
<tr><td colspan="2"><h2><a name="pro-types"></a>
Protected Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <br/>
&#160;&#160;<b>VIRTUAL_WRITE_DATA</b> =  1, 
<b>VIRTUAL_WRITE_SYMLINK</b>, 
<b>VIRTUAL_WRITE_DIR</b>, 
<b>VIRTUAL_WRITE_FILE</b>, 
<br/>
&#160;&#160;<b>VIRTUAL_PREPARE_WRITING</b>
<br/>
 }</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">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKArchive.html#a3efbb71ada0630d90c5af53fedce9b19">KArchive</a> (<a class="elRef" href="qiodevice.html">QIODevice</a> *dev)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKArchive.html#aa31f2331fa3be7abe14811eca7f2e54b">openArchive</a> (int mode)=0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKArchive.html#a52fa0982c4acaf9dcca8df09749e99a0">closeArchive</a> ()=0</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classKArchiveDirectory.html">KArchiveDirectory</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKArchive.html#a218da40618b5ea5623656d3dbf3d9ecc">rootDir</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classKArchiveDirectory.html">KArchiveDirectory</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classKArchive.html#aa5dfd148c5c870da8a2330d0371e3d6e">findOrCreate</a> (const <a class="elRef" href="qstring.html">QString</a> &amp;path)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af39343456c9c458230546b64ffc66a31"></a><!-- doxytag: member="KArchive::setDevice" ref="af39343456c9c458230546b64ffc66a31" args="(QIODevice *dev)" -->
void&#160;</td><td class="memItemRight" valign="bottom"><b>setDevice</b> (<a class="elRef" href="qiodevice.html">QIODevice</a> *dev)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae12a8b556703e189b9e2ebc886a18319"></a><!-- doxytag: member="KArchive::setRootDir" ref="ae12a8b556703e189b9e2ebc886a18319" args="(KArchiveDirectory *rootDir)" -->
void&#160;</td><td class="memItemRight" valign="bottom"><b>setRootDir</b> (<a class="el" href="classKArchiveDirectory.html">KArchiveDirectory</a> *rootDir)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a480f2e659a263c034300627135f6fb59"></a><!-- doxytag: member="KArchive::virtual_hook" ref="a480f2e659a263c034300627135f6fb59" 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="ada3e82fc9da5f893e3353ab6aeb443aa"></a><!-- doxytag: member="KArchive::prepareWriting_impl" ref="ada3e82fc9da5f893e3353ab6aeb443aa" 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="a0da01176bb7aa3affea778f184d6bd03"></a><!-- doxytag: member="KArchive::writeFile_impl" ref="a0da01176bb7aa3affea778f184d6bd03" 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)" -->
bool&#160;</td><td class="memItemRight" valign="bottom"><b>writeFile_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, const char *data)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5f60e1f1d38232c80cf3a0a7264a476d"></a><!-- doxytag: member="KArchive::writeDir_impl" ref="a5f60e1f1d38232c80cf3a0a7264a476d" args="(const QString &amp;name, 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>writeDir_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, 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="add53d7944c040a99064fb57681215267"></a><!-- doxytag: member="KArchive::writeSymLink_impl" ref="add53d7944c040a99064fb57681215267" 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>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a47a1e6067a27daa8ba6b2494b1b7927a"></a><!-- doxytag: member="KArchive::writeData_impl" ref="a47a1e6067a27daa8ba6b2494b1b7927a" 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>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p><a class="el" href="classKArchive.html" title="KArchive is a base class for reading and writing archives.">KArchive</a> is a base class for reading and writing archives. </p>
<p>generic class for reading/writing archives </p>
<dl class="author"><dt><b>Author:</b></dt><dd>David Faure &lt;<a href="mailto:faure@kde.org">faure@kde.org</a>&gt; </dd></dl>

<p>Definition at line <a class="el" href="karchive_8h_source.html#l00042">42</a> of file <a class="el" href="karchive_8h_source.html">karchive.h</a>.</p>
</div><hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a3efbb71ada0630d90c5af53fedce9b19"></a><!-- doxytag: member="KArchive::KArchive" ref="a3efbb71ada0630d90c5af53fedce9b19" args="(QIODevice *dev)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">KArchive::KArchive </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><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Base constructor (protected since this is a pure virtual class). </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">dev</td><td>the I/O device where the archive reads its data Note that this can be a file, but also a data buffer, a compression filter, etc. </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="karchive_8cpp_source.html#l00075">75</a> of file <a class="el" href="karchive_8cpp_source.html">karchive.cpp</a>.</p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="ab5a2f90d4003664127e744d078162c34"></a><!-- doxytag: member="KArchive::addLocalDirectory" ref="ab5a2f90d4003664127e744d078162c34" args="(const QString &amp;path, const QString &amp;destName)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KArchive::addLocalDirectory </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>path</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>destName</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Writes a local directory into the archive, including all its contents, recursively. </p>
<p>Calls addLocalFile for each file to be added.</p>
<p>Since KDE 3.2 it will also add a <code>path</code> that is a symbolic link to a directory. The symbolic link will be dereferenced and the content of the directory it is pointing to added recursively. However, symbolic links *under* <code>path</code> will be stored as is. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">path</td><td>full path to an existing local directory, to be added to the archive. </td></tr>
    <tr><td class="paramname">destName</td><td>the resulting name (or relative path) of the file in the archive. </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="karchive_8cpp_source.html#l00200">200</a> of file <a class="el" href="karchive_8cpp_source.html">karchive.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a1e3b4d361c4b57fe8cb956a9b49a85e4"></a><!-- doxytag: member="KArchive::addLocalFile" ref="a1e3b4d361c4b57fe8cb956a9b49a85e4" args="(const QString &amp;fileName, const QString &amp;destName)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KArchive::addLocalFile </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>
        </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>destName</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Writes a local file into the archive. </p>
<p>The main difference with writeFile, is that this method minimizes memory usage, by not loading the whole file into memory in one go.</p>
<p>If <code>fileName</code> is a symbolic link, it will be written as is, i. e. it will not be resolved before. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">fileName</td><td>full path to an existing local file, to be added to the archive. </td></tr>
    <tr><td class="paramname">destName</td><td>the resulting name (or relative path) of the file in the archive. </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="karchive_8cpp_source.html#l00136">136</a> of file <a class="el" href="karchive_8cpp_source.html">karchive.cpp</a>.</p>

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

<p>Closes the archive. </p>
<p>Inherited classes might want to reimplement closeArchive instead.</p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKArchive.html#a2b7e12eb39e9aad18d696ecfa31af969" title="Opens the archive for reading or writing.">open</a> </dd></dl>

<p>Definition at line <a class="el" href="karchive_8cpp_source.html#l00108">108</a> of file <a class="el" href="karchive_8cpp_source.html">karchive.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a52fa0982c4acaf9dcca8df09749e99a0"></a><!-- doxytag: member="KArchive::closeArchive" ref="a52fa0982c4acaf9dcca8df09749e99a0" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool KArchive::closeArchive </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [protected, pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Closes the archive. </p>
<p>Called by close. </p>

<p>Implemented in <a class="el" href="classKAr.html#a0b6c10502663df4881d376e110f0bcdd">KAr</a>, <a class="el" href="classKTar.html#a9287a3f9a2dd56821559a7f87c078f9c">KTar</a>, and <a class="el" href="classKZip.html#a4e360481897297a16fe4cda21caf3db1">KZip</a>.</p>

</div>
</div>
<a class="anchor" id="a32a576bf8c461db02f582966e8c9edc3"></a><!-- doxytag: member="KArchive::closeSucceeded" ref="a32a576bf8c461db02f582966e8c9edc3" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KArchive::closeSucceeded </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Use to check if close had any problem. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if close succeded without problems </dd></dl>
<dl class="since"><dt><b>Since:</b></dt><dd>3.5 </dd></dl>

<p>Definition at line <a class="el" href="karchive_8cpp_source.html#l00124">124</a> of file <a class="el" href="karchive_8cpp_source.html">karchive.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a42393a1c08518fcf8d8d956872be72ea"></a><!-- doxytag: member="KArchive::device" ref="a42393a1c08518fcf8d8d956872be72ea" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="elRef" href="qiodevice.html">QIODevice</a>* KArchive::device </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>The underlying device. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the underlying device. </dd></dl>

<p>Definition at line <a class="el" href="karchive_8h_source.html#l00096">96</a> of file <a class="el" href="karchive_8h_source.html">karchive.h</a>.</p>

</div>
</div>
<a class="anchor" id="a2fde221a994b790f0dad3799bdad24ad"></a><!-- doxytag: member="KArchive::directory" ref="a2fde221a994b790f0dad3799bdad24ad" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="classKArchiveDirectory.html">KArchiveDirectory</a> * KArchive::directory </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>If an archive is opened for reading, then the contents of the archive can be accessed via this function. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the directory of the archive </dd></dl>

<p>Definition at line <a class="el" href="karchive_8cpp_source.html#l00129">129</a> of file <a class="el" href="karchive_8cpp_source.html">karchive.cpp</a>.</p>

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

<p>Call doneWriting after writing the data. </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="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKArchive.html#a60b42cc93e203295157d6cff896dc225" title="Here&#39;s another way of writing a file into an archive: Call prepareWriting, then call writeData() as m...">prepareWriting()</a> </dd></dl>

<p>Implemented in <a class="el" href="classKAr.html#a98a7800f9f3901cdaee3a9da428b89f2">KAr</a>, <a class="el" href="classKTar.html#a680c42d319226a5c517fa7ac77b939b6">KTar</a>, and <a class="el" href="classKZip.html#ae97699138940349b108a8a6271a0f0a1">KZip</a>.</p>

</div>
</div>
<a class="anchor" id="aa5dfd148c5c870da8a2330d0371e3d6e"></a><!-- doxytag: member="KArchive::findOrCreate" ref="aa5dfd148c5c870da8a2330d0371e3d6e" args="(const QString &amp;path)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classKArchiveDirectory.html">KArchiveDirectory</a> * KArchive::findOrCreate </td>
          <td>(</td>
          <td class="paramtype">const <a class="elRef" href="qstring.html">QString</a> &amp;&#160;</td>
          <td class="paramname"><em>path</em></td><td>)</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Ensures that <code>path</code> exists, create otherwise. </p>
<p>This handles e.g. tar files missing directory entries, like mico-2.3.0.tar.gz :) </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">path</td><td>the path of the directory </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the directory with the given <code>path</code> </dd></dl>

<p>Definition at line <a class="el" href="karchive_8cpp_source.html#l00383">383</a> of file <a class="el" href="karchive_8cpp_source.html">karchive.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="ace294a6f5bf3f46019ab59a346287149"></a><!-- doxytag: member="KArchive::isOpened" ref="ace294a6f5bf3f46019ab59a346287149" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KArchive::isOpened </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Checks whether the archive is open. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>true if the archive is opened </dd></dl>

<p>Definition at line <a class="el" href="karchive_8h_source.html#l00083">83</a> of file <a class="el" href="karchive_8h_source.html">karchive.h</a>.</p>

</div>
</div>
<a class="anchor" id="a8b33f0b89ed4dbc81d03bb5498b91048"></a><!-- doxytag: member="KArchive::mode" ref="a8b33f0b89ed4dbc81d03bb5498b91048" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int KArchive::mode </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Returns the mode in which the archive was opened. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the mode in which the archive was opened (IO_ReadOnly or IO_WriteOnly) </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKArchive.html#a2b7e12eb39e9aad18d696ecfa31af969" title="Opens the archive for reading or writing.">open()</a> </dd></dl>

<p>Definition at line <a class="el" href="karchive_8h_source.html#l00090">90</a> of file <a class="el" href="karchive_8h_source.html">karchive.h</a>.</p>

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

<p>Opens the archive for reading or writing. </p>
<p>Inherited classes might want to reimplement openArchive instead. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">mode</td><td>may be IO_ReadOnly or IO_WriteOnly </td></tr>
  </table>
  </dd>
</dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="classKArchive.html#a434df272f32f3c9ca69134488804e9c9" title="Closes the archive.">close</a> </dd></dl>

<p>Definition at line <a class="el" href="karchive_8cpp_source.html#l00091">91</a> of file <a class="el" href="karchive_8cpp_source.html">karchive.cpp</a>.</p>

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

<p>Opens an archive for reading or writing. </p>
<p>Called by open. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">mode</td><td>may be IO_ReadOnly or IO_WriteOnly </td></tr>
  </table>
  </dd>
</dl>

<p>Implemented in <a class="el" href="classKAr.html#a2d27b97e5524986a6ab37a2ef4c82fe3">KAr</a>, <a class="el" href="classKTar.html#a74a40c20818f148211d5480c79567d66">KTar</a>, and <a class="el" href="classKZip.html#a974c7043300d0c25f45619eb6edbf413">KZip</a>.</p>

</div>
</div>
<a class="anchor" id="a2a44d91c957af94cd80111df993d022a"></a><!-- doxytag: member="KArchive::prepareWriting" ref="a2a44d91c957af94cd80111df993d022a" 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 KArchive::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="classKArchive.html#ac6cc6eb9cf66e19de86fc8b7631a35f3" title="Write data into the current file - to be called after calling 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 in <a class="el" href="classKTar.html#a7821bca5ab5c0bb35220577ac5522727">KTar</a>, and <a class="el" href="classKZip.html#a86336aa3d3023c5e7b8af641ab983070">KZip</a>.</p>

<p>Definition at line <a class="el" href="karchive_8cpp_source.html#l00235">235</a> of file <a class="el" href="karchive_8cpp_source.html">karchive.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a60b42cc93e203295157d6cff896dc225"></a><!-- doxytag: member="KArchive::prepareWriting" ref="a60b42cc93e203295157d6cff896dc225" args="(const QString &amp;name, const QString &amp;user, const QString &amp;group, uint size)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool KArchive::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> [pure virtual]</code></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="classKArchive.html#ac6cc6eb9cf66e19de86fc8b7631a35f3" title="Write data into the current file - to be called after calling 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, since it is needed in the header. For zip files, size isn't used.</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>
  </table>
  </dd>
</dl>
<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000006">Todo:</a></b></dt><dd>TODO(BIC): make this a thin non-virtual wrapper around prepareWriting(name,user,group,size,perm,atime,mtime,ctime) or eliminate it. </dd></dl>

<p>Implemented in <a class="el" href="classKAr.html#a932b01a896d5b23e137d0ab961e6345c">KAr</a>, <a class="el" href="classKTar.html#adae52467799ccc1cdfb096f1fb468633">KTar</a>, and <a class="el" href="classKZip.html#aced454a772ae28b5a68ca59b874cdef4">KZip</a>.</p>

</div>
</div>
<a class="anchor" id="a218da40618b5ea5623656d3dbf3d9ecc"></a><!-- doxytag: member="KArchive::rootDir" ref="a218da40618b5ea5623656d3dbf3d9ecc" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classKArchiveDirectory.html">KArchiveDirectory</a> * KArchive::rootDir </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retrieves or create the root directory. </p>
<p>The default implementation assumes that <a class="el" href="classKArchive.html#aa31f2331fa3be7abe14811eca7f2e54b" title="Opens an archive for reading or writing.">openArchive()</a> did the parsing, so it creates a dummy rootdir if none was set (write mode, or no '/' in the archive). Reimplement this to provide parsing/listing on demand. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>the root directory </dd></dl>

<p>Definition at line <a class="el" href="karchive_8cpp_source.html#l00368">368</a> of file <a class="el" href="karchive_8cpp_source.html">karchive.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="ac6cc6eb9cf66e19de86fc8b7631a35f3"></a><!-- doxytag: member="KArchive::writeData" ref="ac6cc6eb9cf66e19de86fc8b7631a35f3" args="(const char *data, uint size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool KArchive::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 into the current file - to be called after calling prepareWriting. </p>
<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000008">Todo:</a></b></dt><dd>TODO(BIC) make virtual.</dd></dl>
<p>For now virtual_hook allows reimplementing it. </p>

<p>Reimplemented in <a class="el" href="classKZip.html#a3ef7246739d81c3f5a6fdb088913c23c">KZip</a>.</p>

<p>Definition at line <a class="el" href="karchive_8cpp_source.html#l00353">353</a> of file <a class="el" href="karchive_8cpp_source.html">karchive.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="ae8a68fbcdc1daa3a125b5899676cecc1"></a><!-- doxytag: member="KArchive::writeDir" ref="ae8a68fbcdc1daa3a125b5899676cecc1" args="(const QString &amp;name, const QString &amp;user, const QString &amp;group)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool KArchive::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> [pure 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>Implemented in <a class="el" href="classKAr.html#a96af0a42abc26bb4a0d82d0e85cb32e0">KAr</a>, <a class="el" href="classKTar.html#a400a95909477dc244119cf205fa6f810">KTar</a>, and <a class="el" href="classKZip.html#a50ffe0a65d6a9bc415472dd23f89b70a">KZip</a>.</p>

</div>
</div>
<a class="anchor" id="a34c27e0aa9dc810ba1d5771f504162b3"></a><!-- doxytag: member="KArchive::writeDir" ref="a34c27e0aa9dc810ba1d5771f504162b3" args="(const QString &amp;name, 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 KArchive::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>, </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>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>
<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 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>
    <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#_todo000002">Todo:</a></b></dt><dd>TODO(BIC): make this virtual. For now use virtual hook </dd></dl>

<p>Reimplemented in <a class="el" href="classKTar.html#a4da59bfdb20847de10eddde558211076">KTar</a>.</p>

<p>Definition at line <a class="el" href="karchive_8cpp_source.html#l00304">304</a> of file <a class="el" href="karchive_8cpp_source.html">karchive.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a11a0ccee850c26cfcd835ec14c5c3d96"></a><!-- doxytag: member="KArchive::writeFile" ref="a11a0ccee850c26cfcd835ec14c5c3d96" 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 KArchive::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>If the file name is for example "mydir/test1" then the directory "mydir" is automatically appended first if that did not happen yet. </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">data</td><td>the data to write (<code>size</code> bytes) </td></tr>
  </table>
  </dd>
</dl>
<dl class="todo"><dt><b><a class="el" href="todo.html#_todo000004">Todo:</a></b></dt><dd>TODO(BIC): make this a thin non-virtual wrapper around writeFile(name,user,group,size,perm,atime,mtime,ctime,data) </dd></dl>

<p>Reimplemented in <a class="el" href="classKZip.html#aa7475947dea23ca81926c5f8d6f86182">KZip</a>.</p>

<p>Definition at line <a class="el" href="karchive_8cpp_source.html#l00228">228</a> of file <a class="el" href="karchive_8cpp_source.html">karchive.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a1b5fba2a65734a795d0d5109817fd651"></a><!-- doxytag: member="KArchive::writeFile" ref="a1b5fba2a65734a795d0d5109817fd651" 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 KArchive::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 in <a class="el" href="classKZip.html#aa706b1abdd999e282194ecc4798e4482">KZip</a>.</p>

<p>Definition at line <a class="el" href="karchive_8cpp_source.html#l00259">259</a> of file <a class="el" href="karchive_8cpp_source.html">karchive.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a3798b8058f9f0639a2102e12722c95bb"></a><!-- doxytag: member="KArchive::writeSymLink" ref="a3798b8058f9f0639a2102e12722c95bb" 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 KArchive::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 in <a class="el" href="classKTar.html#a56609fd3b04acd74fc0b3bc5e015af1c">KTar</a>, and <a class="el" href="classKZip.html#a10a0203bbc65aed39afceb498795527a">KZip</a>.</p>

<p>Definition at line <a class="el" href="karchive_8cpp_source.html#l00327">327</a> of file <a class="el" href="karchive_8cpp_source.html">karchive.cpp</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="karchive_8h_source.html">karchive.h</a></li>
<li><a class="el" href="karchive_8cpp_source.html">karchive.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>