KArchive design changes

Pier Luigi pierluigi.fiorini at gmail.com
Sun Jul 22 08:55:49 UTC 2012


Hi,

I'm working on alternative desktop environment based on Wayland and
Qt5 mainly designer for Maui, my Linux distribution, and I would like
to share some work with you.

Some time ago I needed to create an API for accessing archive files
that could be used by many programs.
The code is here:

https://gitorious.org/hawaii/vibe/trees/master/src/kits/core/archive

It's based on KArchive but uses the new MIME Type API provdied by Qt5
in order to determine the archive type and load the appropriate
plugin, so other people can extend it easily.

The VArchive class has no protected members, it's used by applications
that want to open archives by passing either the filename or a
QIODevice to the constructor.  VArchiveHandler is a base class to
implement plugins and contains all the KArchive protected members.

Plugins are here:

https://gitorious.org/hawaii/vibe/trees/master/src/plugins/archivehandlers

The code might need some changes, for example removing
VStandardDirectories which is my namespace to retrieve common paths
(Maui uses a different file hierarchy which separates what's installed
by the operating system from what's installed by the user using
bundles or manually building the software or whatever). Cleaning it up
shouldn't take you a lot of time.

I'm sharing this with you not only because it's a derivate work which
might benefit you but also because I know you are going to put a lot
of kdelibs stuff into Qt. This is amazing and it's what I always
hoped.  I've seen KArchive in tier1 (kdelibs, frameworks branch), if
this is going to be pushed for Qt 5.1 I might help porting the
VArchive staff to it and submit to Gerrit.

-- 
"Don't let the noise of other's opinions drown out your own inner
voice." (Steve Jobs)


More information about the Kde-frameworks-devel mailing list