xDrop 2.21
==========

XPK-based Workbench packer/unpacker.


------------------------------------------------------------------------
Versions
--------

2.0  - First version, distributed with xpk 1.0
2.01 - Small bug fix (original window positioning was wrong)
2.02 - Memory leek fixed
2.1  - Layout slightly changed, larger listview, mode descriptor
2.11 - Bug causing Enforcer hit in panel disable code fixed
       (Ch. Schneider)
2.12 - Bug with long filenames fixed
2.20 - New option `Keep file dates'
2.21 - Now also keeps protection bits and file comments, displays
       name of selected packer if no icon name is specified in
       tool types


------------------------------------------------------------------------
Disclaimer
----------

xDrop is Copyright © 1992 by Martin A. Blatter. All rights reserved.

xDrop may be freely distributed for non-commercial purposes only!

The entire risk as to the quality and performance of this program is
with you. The author assumes no responsibility or liability whatsoever
with respect to your use or inability to use of this software.


------------------------------------------------------------------------
Purpose
-------

xDrop is an easy to use visual user interface to the XPK library
system. It allows you to choose from different packers and
different operation modes by a simple mouse click.

It sports a Style Guide compliant user interface and uses Workbench
2.0's appicon and appwindow features to make operation as simple and
convenient as possible. Through the use of Commodore-Amiga's
commodities.library, xDrop can be installed on any hotkey and
fully controlled with the Commodities Exchange program.


------------------------------------------------------------------------
Requirements
------------

· Any Amiga
· Kickstart 2.0 or higher
· The xpk package (xpkmaster.library and at least one sublibrary)


------------------------------------------------------------------------
Start xDrop
-----------

xDrop can be used either from Workbench or from the CLI.


* Workbench use

  Double click on the xDrop icon. An appicon will appear on the
  Workbench screen. If this appicon doesn't appear several things could
  have gone wrong:

  · Do you use Kickstart 2.0 or higher?
  · Is there any memory left on your system?
  · Do you have commodities.library (supplied with Workbench 2.04)
    in libs:?
  · Is the xpk package properly installed?

  Requesters will try to tell you the cause if xDrop fails to run.

  If the tool type `CX_POPUP' (see below for an explanation of tool
  types) is set to `yes', a configuration window will appear. See
  the section entitled `Configuration Window' for more information
  about this window.


* CLI use

  Type 'xDrop' in any Shell window. An appicon will appear on the
  Workbench screen.

  To remove xDrop from memory, just press CONTROL-C in the Shell
  window where xDrop has been started from.

  Notice

  xDrop will use its pre-set default settings if started from the 
  Shell. It is therefore recommended to launch xDrop from Workbench
  or the WBStartup drawer.


------------------------------------------------------------------------
Operation
---------

Operation of xDrop is very easy:

To compress files:

   Just select one or more file icons (no drawers) on the Workbench,
   drag them to the xDrop appicon or the xDrop configuration window
   (if it's open) and drop them.

   The Progress Report Window (see below) will appear and the file
   will be compressed using the packer selected in the configuration
   window or pre-set with the XPK_METHOD tool type (see below for
   a discussion of tool types).

To uncompress files:

   To uncompress a compressed file, drag its icon on the xDrop
   appicon or the xDrop configuration window (if it's open).

   You may drop arbitrary many icons (compressed or uncompressed)
   simultaneously on xDrop. Note that xDrop currently only handles
   single files (no drawers). You cannot concatenate several files
   to one archive like with lharc or zoo.

To remove xDrop from memory:

   xDrop can be removed from memory at any time.

   - Use the `Commodities Exchange' program to kill xDrop
   - Send xDrop a CTRL-C signal with the `break' command.
     xDrop will exit gracefully.
   - Run another copy of xDrop. Both xDrop processes will quit
     immediately.


------------------------------------------------------------------------
Configuration Window
--------------------

The configuration window is divided into three visually separated
parts labelled `Packer', `Settings' and `Description':


________________________________________________________________
|                                                              |
|    Packer                        Description                 |
| ____________     ___________________________________________ |
| |          |     |                                         | |
| |          |     |                                         | |
| |          |     |                                         | |
| |          |     |                                         | |
| |          |     |                                         | |
| |          |     ------------------------------------------| |
| |          |                                                 |
| |          |                       Settings                  |
| |          |                                                 |
| |          |                        ________________________ |
| ------------                        |                      | |
| |          |                        |----------------------| |
| ------------                        |______________________| |
|                                                              |
| ____________                                    ____________ |
| |   Save   |                                    |   Hide   | |
| ------------                                    ------------ |
----------------------------------------------------------------


1. Packer

The Packer list view allows you to choose from a list of available
XPK packers and encryptors by clicking on its entry (the packer
libraries are usually located in the drawer `libs:compressors').
The recessed box below the list view shows the selected packer.


2. Description

This view-only box displays more information about the currently
selected packer/encryptor consisting of the full name of
the packer and two lines of additional information.


3. Settings

The Settings part of the configuration window consists of two
gadgets that can be ghosted, depending on the capabilities of the
currently selected packer:

   A. Efficiency

      This proportional gadget allows you to manipulate the
      efficiency of the packer. The value for efficiency
      can be in the range from 0 to 100%. Neither must every
      packer support 100 different levels nor does every packer
      have more than one level.

      An ASCII name of the current efficiency level can be obtained
      by selecting the `Mode Info' menu.

      As of version 2.1, the ASCII name is now also being displayed
      at the left side of the proportional gadget.

   B. Password

      This string gadget allows you to specify a password for
      packers that support data encryption.

      The password may not be longer than 15 characters.


4. Buttons

   A. Save

      Saves the current settings to the xDrop disk icon.
      Keyboard equivalent: S

   B. Hide

      Hides the configuration window but doesn't quit xDrop.
      Uses the current configuration settings but doesn't save
      them.
      Keyboard equivalent: H


5. Close gadget

The window close gadget does exactly the same as the `Hide' button.


6. Menus

   A. Project

      About - Displays information about the program and its author.
              Keyboard equivalent: Rt. Amiga - A

      Mode Info - Displays settings and additional information for
                  the currently selected packer.
                  Keyboard equivalent: Rt. Amiga - I

      Hide - Hides the configuration window but doesn't quit xDrop.
             Uses the current configuration settings but doesn't save
             them.
             Keyboard equivalent: Rt. Amiga - H

      Quit - Completely removes xDrop from memory.

   B. Option

      Keep Original - If checked, xDrop will save the original
                      file and append `.xpk' to the filename
                      for the compressed version of the file.
                      Icons will be copied as well. The `.xpk'
                      extension will be deleted when the file
                      is going to be decompressed.

                      If the menu item is not checked, xDrop
                      will overwrite the original file with the
                      compressed version.

      Keep File Info - If this option is enabled, the compressed
                       file will get the same date stamp, file comment
                       and protection bits as the original.
                       This is very useful if you're processing
                       files (e.g. different versions of a source code)
                       and you're depending on the file date to tell
                       which version is newer.


------------------------------------------------------------------------
Progress Report Window
----------------------

While packing/unpacking, xDrop will show a progress report in a special
window that appears in the upper left corner of your Workbench screen.
A bar that moves from the left to the right shows the degree of completion.
This  will not work with all packers, some will only show a change when
done. The progress report also shows the amount of bytes already processed,
the total amount of bytes to be processed and the (de)compression speed.

(De)compression can be aborted at any time using the close gadget;
you will not lose any data. xDrop never overwrites the original file
before having successfully completed the (de)compression.


------------------------------------------------------------------------
Tool Types
----------

The following tool types are supported:


CX_POPUP  - If you want the xDrop configuration window to pop up the
            first time xDrop is started, set this to yes:
                        CX_POPUP=yes

			If you want xDrop to run in the background the first
            time it is being started e.g. if you're running it from the
            WBStartup drawer, set this to no:
                        CX_POPUP=no

CX_POPKEY - Key combination for the commodity `hotkey'. Default:
                        CX_POPKEY=alt shift f9

CX_PRIORITY Commodity priority. Default value:
                        CX_PRIORITY=0

XPK_METHOD - Sets the default packer. This tool type will be maintained
             by the configuration window and should not be changed by
             the user.
                        XPK_METHOD=NUKE

XPK_PRIORITY - Sets the task priority of the packing/unpacking task.
               Don't change this value unless you know what you're doing.
               Default value: 0

LANGUAGE  - Determines the language to use for the user interface.
            Possible values:
			           LANGUAGE=German
                       LANGUAGE=English
            This tool type overrides global language settings. Remove
            it if you want to use the system's default language...

ICONNAME  - Allows you to specify the label string of the appicon.
            Example:
                       ICONNAME=Slurp

			If this Tool Type is not given, the appicon will get the
            name of the currently selected packer.

ICONXPOS  - Specifies the desired x coordinate of the appicon. Note that
            as of Kickstart 2.0, Workbench may move your icon to another
            position than specified here.
            Example:
                       ICONXPOS=600

ICONYPOS  - Specifies the desired y coordinate where the appicon should
            appear. Note that as of Kickstart 2.0, Workbench may move your
            icon to another position than specified here.
                       ICONYPOS=400

KEEPORIGINAL - If this tool type is set to `yes', xDrop will save the
               original file and append `.xpk' to the filename for the
               compressed copy of the file. Icons will be copied as well.
               The `.xpk' extension will be deleted when the file
               is going to be decompressed.

               If the tool type is set to `no' (the default), xDrop
               will overwrite the original with the compressed version.

               Example:
                       KEEPORIGINAL=no

               If this tool type is not specified, it defaults to `no'.


KEEPFILEINFO - If this tool type is set to `yes', the processed file
               will get the same date stamp, file comment and protection
               bits as the original. Otherwise, new files will get the
               current date and time and default protections.

               Example:
                       KEEPFILEINFO=yes

               Default value is `no'.


------------------------------------------------------------------------
Credits
-------

Author: Martin A. Blatter
        Pfaffächerstr. 59
        CH-8913 Ottenbach
        Switzerland

E-Mail: blatter@amiga.physik.unizh.ch
        cbmvax!cbmehq!cbmswi!zethos!blatter

Bug reports or suggestions are welcome but *please* use e-mail or snail
mail (no phone calls!). Thanks.

This program uses Relog AG's ITools(tm), the object-oriented user
interface system by Christian A. Weber.

Special thanks to 

- U. Dominik Mueller for parts of the manual.
- Frank Neumann for the german manual.

