ZipMan Plugin - Developer Documentation v2.1

(C) WildPalm Ltd. 2004

 

ZipMan allows for the use of plugins to add additional functionality. ZipMan supports two plugin types : Resource plugins, for selecting file filters and Dll plugins. This document describes the format of resource plugins. Dll plugins are of two types - file selection plugins and archive plugins. File selection plugins are used to select a type of file from the filesystem and ask the user for a selection. An example of this is the Messaging attachment plugin, which scans the Messaging folders for attachments and presents this list to the user for selection. The archive plugins allow alternative archive types to be opened by ZipMan. This is currently used to access Rar, Tar and Gzip archives. Access to these archives is read-only and some limitations are imposed - i.e. any password management must be done within the plugin - for security, any user entered password is not passed to the plugin for use.

For information on writing dll plugins, please contact zipman_plugin@wildpalm.co.uk. We would welcome help from interested users in creating plugins for alternative open archive formats, i.e. bzip2.

 

ZipMan Resource plugins are standard resource files placed in the ZipMan application directory, with a .zmr extension. They can be placed in the \system\apps\zipman directory on any available drive. The resource file has just a single resource which describes the name of the plugin, and the directory and file types which the plugin allows to be added. Further resources may be added in the future to define extra capabilities.

 

The format of the resource file is as follows:

 

STRUCT ZIPMAN_FILE_RESOURCE
{
LTEXT name;
LTEXT directory;
LTEXT filemask;
}

 

Name is a text resource describing the plugin. This is the name that will be displayed from the Add Files query.

Directory is a list of semi-colon separated directories that should be searched for files. If a drive letter is set, then only that drive is searched. Otherwise, if the drive letter is set to !, all user drives are searched. (i.e. everything except z:\).

Filemask is a list of semi-colon separated filemasks to search. All files which match the file masks are added to the file query which is shown to the user.

 

Example: The following resource is used to allow the user to add .wav and .mid files from the digital sound directories of any user drive :-

 

RESOURCE ZIPMAN_FILE_RESOURCE zipman_example_resource
{
name = "Example";
directory = "!:\\nokia\\sounds\\digital\\;!:\\system\\sounds\\digital\\";
filemask = "*.wav;*.mid";
}

Please note : The Symbian Resource compiler tool is required for compiling ZipMan resource files. This tool is part of the Nokia Series 60 C++ SDK, and can be downloaded from http://forum.nokia.com. Future versions of ZipMan may support XML based resources, removing the need for compiled resource files.