
                  	Kudo for Windows TechNote
                   (c) 1993 Imspace Systems Corporation.
                            All Rights Reserved.


This file documents the structure and syntax of the KUDO.INI file.
The KUDO.INI file follows the standard Windows syntax for all .INI files.


******************************************************************************
These are the sections in KUDO.INI and their function:

[KudoImageBrowserImports]       Associates a file extension with a filter DLL
[KudoPlacePacks]                Associates an application with a place module
[OLEDropTargets]                Identifies a registered OLE 2.0 drop target

Each of these sections can have zero or more entries following the section 
header.

******************************************************************************
[KudoImageBrowserImports]
-------------------------
The entries in this section list all of the file types that Kudo can recognize.  
This feature is provided to enable users to add more import filters & file types,
and redefine what file extensions Kudo uses to recognize each file type.

To read image and multimedia files of different formats, Kudo uses a modular 
system based on the industry standard Aldus filter specification.  This system 
allocates a specific external Dynamic Link Library file (a .DLL file) for each 
file type to be recognized.  These DLL's are known as import filters, or 
filters.

Kudo uses a file's extension to identify what type of file it is, and 
consequently, which filter DLL to load in order to read that file.  The 
[KudoImageBrowserImports] section  of KUDO.INI tells Kudo 1) what file 
extension represents a particular file format, and 2) which filter to load in 
order to read that file.

The syntax of one of these entries is:

        <description>=<path>,<extension>

where
        <description>:  Cosmetic text that describes the particular file type
        <path>:         Path (full or relative) to the .FLT or .DLL file
                        that functions as the import filter for this file
                        type.  This is a regular DOS pathname.  If it is not a
                        fully qualified path, it is interpreted as relative to
                        the directory where the currently executing copy of
                        KUDO.EXE was found.
        <extension>:    1-4 character text specifying the file extension to
                        associate with this file type.  The dot '.' is
                        optional.

There should be no spaces around the equal sign ('=') or comma (','). For 
example, the following entry:

        [KudoImageBrowserImports]
        ZSoft PC Paintbrush Bitmap=filters\IRPCX9.FLT,PCX

would be interpreted as follows:

        <description>: "ZSoft PC Paintbrush Bitmap"
        <path>: "filters\IRPCX9.FLT"
        <extension>: "PCX"

This entry tells Kudo that 1) files with a .PCX extension are "ZSoft PC 
Paintbrush Bitmap" files, and 2) the filter file "filters\IRPCX9.FLT" is the 
filter DLL to load when trying to read these files.

For readability, the entries in the default KUDO.INI also include the file 
extension at the beginning of the <description> field, but this is cosmetic - 
only the <extension> field is actually used to determine the file extension.

The same filter DLL can be specified in more than one entry.  This way it is 
possible to alias several file extensions as the same file type.  For example, 
the Micrographix Drawing File Format is listed twice in the default KUDO.INI 
file, for both the .DRW and .GRF file extensions.  However, you can only
have one entry for each file extension.  For example, you cannot have two
lines specifying .PCX as the file extension.

By convention, the filter DLL's that are shipped with kudo bear the file 
extension .FLT, but they can have any file extension.  It is recommended that 
abide by this convention and use a .FLT or .DLL extension.

New file types can be added to Kudo simply by modifying KUDO.INI.  Any DLL 
that implements the Aldus Graphic Import Mechanism, either Interface Version 
1.0 or 2.0, can be listed as an import filter in the [KudoImageBrowserImports] 
section.  This interface is documented in the Aldus "Filter Developer's 
Toolkit", published by Aldus Corporation. For questions about the Aldus 
standard, you can contact them at:

        Aldus Developers Desk
        Aldus Corporation
        411 First Avenue South
        Seattle, WA  98104-2871
        206/628-6593



******************************************************************************
[KudoPlacePacks]
----------------
This section lists each of the available place modules. These Place Modules 
are provided to enable Kudo to Drag and Drop with pinpoint accuracy onto 
applications that fall into one or more of the following three categories: 
1) applications that are not registered as OLE 2.0 drop targets in the 
[OLEDropTargets] section (see below), 2) applications that do not accept an 
image file drop from the File Manager, or 3) applications that require special 
handling for a drop.

Kudo uses an application's window caption to identify it, and consequently, 
match it with the appropriate place module, if it exists. The [KudoPlacePacks] 
section  of KUDO.INI tells Kudo 1) which applications have place modules, and 2) 
which place modules to load in order to drag and drop to that application.

The syntax of one of these entries is:

        <application name>=<path>,

where
        <description>:  The application caption as it appears on the title bar
        <path>:         Path (full or relative) to the .DLL file that functions 
                        as place module for this application. This is a regular 
                        DOS pathname.  If it is not a fully qualified path, it 
                        is interpreted as relative to the directory where the 
                        currently executing copy of KUDO.EXE was found.


As in the [KudoImageBrowserImports] section described above, there should be 
no spaces around the equal sign ('=') or comma (','). The ending comma is 
required even if there is no accompanying comment.


******************************************************************************
[OLEDropTargets]
----------------
This section identifies applications which have implemented an OLE 2.0 drop 
target interface and have been tested as drop targets with Kudo. 

Kudo uses an application's window caption to identify it, and consequently, 
match it with the appropriate data transfer object module. The [OLEDropTargets] 
section  of KUDO.INI tells Kudo 1) which applications are OLE 2.0 drop targets, 
and 2) which data transfer object to load in order to drag and drop to that 
application.

The syntax of one of these entries is:

        <application name>=<path>,

where
        <description>:  The application caption as it appears on the title bar
        <path>:         Path (full or relative) to the .DLL file that functions 
                        as the data transfer object module for this application. 
			This is a regular DOS pathname. If it is not a fully 
                        qualified path, it is interpreted as relative to the 
                        directory where the currently executing copy of KUDO.EXE 
                        was found. By default, this data transfer object is 
                        mdataxfr.dll.


As in the [KudoImageBrowserImports] section described above, there should be 
no spaces around the equal sign ('=') or comma (','). The ending comma is 
required even if there is no accompanying comment.



