@database "Icon Deluxe"
@width 75

@node Main "Icon Deluxe documentation"


                        Icon Deluxe Version 1.03

                             by Brian Tietz
                            Copyright  1995


                          @{" Overview           " link Overview}
                          @{" Installation       " link Installation}
                          @{" Loading Icons      " link LoadIcons}
                          @{" Icon Size          " link IconSize}
                          @{" Window Size        " link WindowSize}
                          @{" Drawing Tools      " link DrawTools}
                          @{" Undo Feature       " link Undo}
                          @{" Gadgets            " link Gadgets}
                          @{" Menus              " link Menus}   
                          @{" Keyboard Shortcuts " link Shortcuts}
                          @{" Copyright          " link Copyright}
                          @{" Registering        " link Registering}
                          @{" History            " link History}

@endnode
@node Overview " Overview "
OVERVIEW:

   The Icon Deluxe screen has a few prominent features.  The most obvious
is the editing area.  In the editing area, the icon is drawn.  If the image
will not fit entirely within the drawing area, Icon Deluxe draws as much as
possible.  The hidden portion can be seen and edited by scrolling the view
using the arrow keys or the move view gadgets.  A border is drawn around
the image to show exactly where the drawing area ends given the current
icon size.  The border may be turned off using a button if available or the
Hide border menu item.  In the lower right corner of the border is a handle
which allows you to change the size of the icon.  The size may also be
changed using the icon size numeric string gadgets.
   Next to the drawing area is the palette.  It allows you to choose the
current drawing color.  The number of colors may be changed using the depth
menu item.  Below the palette are the move view and move image button
arrays.  Move view is represented by an image of an eye.  It moves the
location of your view if the icon won't fit entirely on the screen.  Move
image is represented by an image of a disk, and it scrolls image within the
drawing region.  Be careful, as it cuts off the edge of the image as it
moves out of the drawing area.  Any number of subsequent moves may be
undone using the undo button.
   There are other buttons and gadgets, all of which are documented below.

@endnode
@node Installation " Installation "
INSTALLATION:

   Installation is a simple procedure.  To do so place the files IconDeluxe
and IconDeluxe.guide wherever you want them (I recommend SYS:Tools).  Then
move IDHelpFile into the S: directory.  Make sure that you have AmigaGuide
or MultiView in your SYS:Utilities drawer (they're needed for online help)
and you're ready to go.

@endnode
@node LoadIcons " Loading Icons "
LOADING ICONS:

   There are a number of ways which Icon Deluxe supports for loading icons
to edit.  The most obvious is the Load menu item.  Less obviously, Icon
Deluxe's window is an AppWindow, which means that you can drop icons from
the workbench into IconDeluxe's window, and Icon Deluxe will automatically
load the icon for editing.  Furthermore, you can click select an icon to
edit when you start Icon Deluxe.  That means that when starting Icon
Deluxe, if you select Icon Deluxe's icon and then hold down the shift key
and double click on any icon, Icon Deluxe will open its window and the icon
you double clicked will be loaded so you can edit it.  Finally, Icon Deluxe
accepts an icon name as a command line argument from the CLI.  Most people
use the workbench, and if so, this still helps you, because there are many
programs out there, such as ToolsX, which allow you to add programs to the
workbench's tools menu.  In ToolsX, if you select an icon and then select
an item from the tools menu, you can have ToolsX pass the name of that icon
to the program as a command line argument (in ToolsX, this is done by
entering "run >NIL: Path/IconDeluxe %s" in the command string.  Other
tools menu managing programs probably have similar features.)

@endnode
@node IconSize " Icon Size "
ICON SIZE:

   Commodore's user interface guidelines state that icons should be no
larger than 80x40 pixels.  Icon Deluxe does not enforce this limit, since
many icons already exist which are larger than that which you may wish to
edit.  It does, however, try to discourage you from creating icons which
are larger than this limit.  If you resize or create an icon such that it
becomes larger than the limit, Icon Deluxe will warn you that you have
exceeded the limit, but will allow you to continue if you wish.  For normal
users that's no problem, but for commercial developers, I strongly
recommend that you adhere to these guidelines.  Icon Deluxe's actual size
limit is 400x400 pixels, which is far more than enough.

@endnode
@node WindowSize " Window Size "
WINDOW SIZE:

   Icon Deluxe's window setup is dependent on the size of the workbench
screen.  For screens which are too small to fit the normal one, it opens a
window small enough to fit on the screen, which lacks the border on/off,
zoom grid on/off, and tool types buttons.  It also has a smaller drawing
area.  All of the missing features are still available in the menu,
regardless of window size.  To have all of these features available through
gadgets, you must open on a larger workbench.  Icon Deluxe is completely
font-friendly, so if you are using a high-resolution workbench and choose
to use a larger system default font for readability, Icon Deluxe will
accept and use it.

@endnode
@node DrawTools " Drawing Tools "
@next Undo
DRAWING TOOLS:

      @{" Freehand and lines              " link Freehand}
      @{" Rectangle, ellipse, and polygon " link Rectangle}
      @{" Flood, block, and text          " link Flood}

@endnode
@node Freehand " Freehand "

FREEHAND DOTS:
   The freehand dots tool is used to set single pixels to the current
color.  When the left mouse button is clicked, a single pixel is set.  If
the mouse button is held down and the mouse moved, dots appear as the mouse
is moved, however they are not connected.  This continues until the mouse
button is released.

FREEHAND CONNECTED:
   The freehand connected tool is a lot like the freehand dots tool, but
instead of individual dots, a line is drawn from the last dot to the next,
so that all of the dots are connected.

FREEHAND FILLED:
   The freehand filled tool is available when the fill button is selected.
This drawing tool behaves a lot like the freehand connected drawing tool,
but when the mouse button is released, the area outlined is filled in.

HORIZONTAL/VERTICAL LINE:
   This horizontal/vertical line drawing tool is used to draw lines which
are aligned horizontally or vertically.  Click on the starting point, then
click on the ending point and the line will be drawn.  While drawing is in
progress, the zoom and move view gadgets or the corresponding keys may be
used without terminating the operation.

NORMAL LINE:
   The line drawing tool is used to draw lines in the current color.  Click
on the starting point, then click on the ending point and the line will be
drawn.  While drawing is in progress, the zoom and move view gadgets or the
corresponding keys may be used without terminating the operation.

@endnode
@node Rectangle " Rectangle "
For any of these tools, while drawing is in progress, the zoom and move
view gadgets or the corresponding keys may be used without terminating the
operation.

RECTANGLE:
   The rectangle drawing tool is used to draw unfilled rectangles.  Click
where you want one corner to be, then click where the opposite one should
be and the rectangle will be rendered.

FILLED RECTANGLE:
   The filled rectangle drawing tool is used to draw filled rectangles.
Click where you want one corner to be, then click where the opposite one
should be and the filled rectangle will be rendered.

ELLIPSE:
   The ellipse drawing tool is used to draw unfilled ellipses and circles.
Click where you want the center to be, then move the icon until the ellipse
looks right.  Click again to render.  The mouse position relative to the
center determines the x and y radii.  

FILLED ELLIPSE:
   The filled ellipse drawing tool is used to draw filled ellipses and
circles.  Click where you want the center to be, then move the icon until
the ellipse looks right.  Click again to render.

POLYGON:
   The polygon drawing tool is used to draw filled polygons in the current
color.  Click on the starting point, then click on subsequent vertices.
When you click on the starting point again, the polygon is closed and
rendered.

@endnode
@node Flood " Flood "
FLOOD FILL:
   Click where you want to perform a flood fill operation.  All adjacent
pixels of the same color will be set to the current drawing color.

BLOCK CUT AND PASTE:
   To cut out a block, click where you want one corner to be, then click on
the opposite corner.  While this is in progress, the zoom and move view
gadgets or the corresponding keys may be used without terminating the
operation.  The block will be copied to the paste buffer and the cut out
area will be cleared to background color.  The drawing tool will then be
set to paste tool.  Click where you want the upper left corner of the image
to be, and it will be drawn.  The image can be pasted as many times as you
want until another action is performed.

TEXT:
   The text insertion drawing tool allows you to type text into the image.
Click where you want to insert the text and the editor will allow you to
enter text until you hit return or escape.  The only arrow key that has an
effect is the left arrow, and it works just like backspace, moving back a
space and deleting the last character.  The zoom gadget may be used while
text entry is in progress, and the color may be changed without
interrupting the operation.

@endnode
@node Undo " Undo feature "
@prev DrawTools
UNDO FEATURE:

   The undo feature allows you to undo the last action pertaining to the
image, for example drawing something.  If by selecting complement or
backfill selection you lose the selected image, the undo feature can be
used to set the select mode back to image and restore the lost image.  Undo
may not be used to undo changes to the size of the image, nor may it be
used to undo changes to non-image aspects of the icon.  Undo remembers the
last undo-able action even when switching image views or scrolling.

@endnode
@node Gadgets " Gadgets "
GADGETS:

   Palette:          Select the color you wish to draw in.

   Move view:        Moves the the view so you can work on an icon that
                     does not fit completely on the screen. (Usually when
                     in zoom mode)

   Move image:       Moves the icon image within its frame.

   Normal/selected:  Selects which icon image you wish to edit.

   Border:           Selects whether you wish to have the work area border
                     showing.

   Zoom grid:        Selects whether you want a grid to show where each
                     pixel is.  (Only in zoom mode)

   Tool types:       Allows you to edit an icon's tool types. (See "Using
                     the System Software"  which came with your Amiga)

   Width/height:     Allows you to set the size of the icon image.  It
                     applies to both images if highlight is set for image.

   Size handle:      Allows you to set the size of the icon image by
                     dragging the corner of the image border.

   Default tool:     Allows you to set this icon's default tool. (Only for
                     project and disk icon types)

   Stack:            Allows you to select the stack size to use with the
                     program which this icon will run.  (Only for tool and
                     project icon types)

@endnode
@node Menus " Menus "
@next Shortcuts
MENUS:

   @{" Project       " link Project}
   @{" Icon          " link Icon}
   @{" Image         " link Image}
   @{" Miscellaneous " link Miscellaneous}

@endnode
@node Project " Project "
   Project

      New           Resets the icon back to the default icon.

      Load...       Brings up a requester to select an icon to load.

      Save          Saves the icon's to disk as a .info file.

      Save as...    Brings up a requester to save the icon with a new name.

      Make default  Allows you to make this icon the amiga's default icon
                    for files of this type. (i.e. tool, project, disk)

      About...      Gives you information about Icon Deluxe.

      Help...       Brings up this help window.

      Quit          Exits Icon Deluxe.

@endnode
@node Icon " Icon "
   Icon

      Type            Sets the icon to one of the following types:  Disk,
                      Device, Drawer, Tool, Project, Garbage, Kickstart

      Select mode     When you click an icon to select it, one of three
                      methods is used to indicate that it is selected:

         Image        The icon has a second image for when it is selected.

         Backfill     Backfills the icon image.

         Complement   Inverses the icon image colors.

      Tool types...   Allows you to edit an icon's tool types. (Same as
                      tool types gadget; see "Using the System Software"
                      which came with your Amiga)

@endnode
@node Image " Image "
   Image

      Load IFF               Allows you to load an IFF file and use it as
                             the normal image or selected image.

      Save IFF               Allows you to save the icon's normal image or
                             selected image as an IFF file.

      Load icon image        Allows you to load the normal image of another
                             icon and use it as the normal or selected
                             image for this one.

      Load icon sel image    Allows you to load the selected image of
                             another icon and use it as the normal or
                             selected image for this one.

      Swap images            Exchanges the normal and selected images.

      Copy to other          Copies the currently displayed image to the
                             other one.

      Clear                  Clears the currently displayed image.

      Resize                 Perform various resizing and flipping
                             operations on the icon's images.

         Arbitrary           Allows the image to be stretched to any size.
                             If the size drag handle is visible, move the
                             mouse until the box is the size you want, then
                             click.  You may also click the width gadget to
                             abort the drag operation and enter the new
                             size directly.  If the size drag handle is not
                             visible, then the numerical size gadgets are
                             activated.

      Swap colors...         Exchanges every instance of two colors.  You
                             will be asked to click on the colors within
                             the palette which you wish to swap.  Hit
                             escape before selecting second color to abort.

      Replace color...       Replaces every instance of one color with
                             another.  You will be asked to click the color
                             in the palette which you want replaced, then
                             the color you want it replaced with.  Hit
                             escape before the second color to abort.

@endnode
@node Miscellaneous " Miscellaneous "
   Miscellaneous

      View              Selects which image you want to view and edit.

      Colors            Selects how many colors you want this icon to have.
                        You cannot edit an icon with more colors than the
                        workbench screen, so the 8 and 16 color items may
                        me disabled.  To enable them, exit Icon Deluxe
                        and use the ScreenMode preferences tool to give the
                        workbench screen more colors.

      Palette...        Allows you to edit the workbench palette.

      Set text font...  Selects the font which you want to use for
                        drawing text into the image.

      Hide border       Selects whether you wish to have the work area
                        border showing.  (Same as border gadget)

      Zoom grid         Selects whether you want a grid to show where each
                        pixel is.  (Only in zoom mode; same as zoom grid
                        gadget)

      Black grid        Selects whether you want the grid drawn in black or
                        grey.  (Only in zoom mode)

      Load brush...     Allows you to load an iff brush and paste it

      Brush handle      Allows you to select where the mouse holds the
                        brush

@endnode
@node Shortcuts " Keyboard Shortcuts "
@prev Menus
KEYBOARD SHORTCUTS:

   Arrow keys - Move the view area (See move view gadgets)
   R - Rectangle drawing tool
   E - Ellipse drawing tool
   L - Skew line drawing tool
   H - Horizontal and vertical line drawing tool
   D - Freehand drawing tool
   F - Flood fill drawing tool
   B - Block cut/paste drawing tool
   T - Text insert drawing tool
   Z - Zooms in on the image 
   U - Undoes last action
   Amiga L - Load icon
   Amiga S - Save icon
   Amiga Q - Exit Icon Deluxe
   Amiga H - Cut the image size in half
   Amiga D - Double the image size
   Amiga F - Change text fonts
   Amiga B - Selects whether you wish to have the work area border showing
             (Same as border gadget)
   Amiga G - Selects whether you want a grid to show where each pixel is
             (Only in zoom mode; same as zoom grid gadget)

@endnode
@node Copyright " Copyright "
COPYRIGHT:

   The registered version is copyrighted and may not be distributed, so
please do not allow it to be pirated.  Ten dollars isn't much, so anybody
who wants or uses it can afford it.  If you use IconDeluxe, please register
and encourage me to write more cheap but high-quality Amiga software.
   The public version is full-featured and is not "cripple-ware."  It does
have a short delay before saving the icon, to remind and encourage the user
to register.  It's not long, just long enough to contemplate the hundreds
of hours I spent writing this program when I should have been studying so
you could harvest the fruits of my labors.  Do you feel guilty yet?  Hee
hee...  The demo is freely distributable and perfectly usable, so please
spread it around.

                               @{" Register " link Registering}

@endnode
@node Registering " Registering "
REGISTERING ICON DELUXE:

   Icon Deluxe was written by me in my spare time while attending college.
I wrote it because of frustration with the icon editor that comes on the
extras disk.  I disliked the fact that it enforces the 80x40 size limit,
since that means you can't edit existing icons which are larger than that,
not even to cut them down to size, and there are many, especially for
games, that are larger than the size limit.  I also didn't like the fact
that the enlarged pixels are still too small to work with easily, that you
can't insert text into the bitmap, that you can't click select icons to
edit, that you can't cut and paste blocks, and the list goes on.  There are
other icon editors in the public domain, but all the ones I saw had as many
problems as the Commodore one.
   I figured that many other users and developers probably felt the same
frustration, so I set out to write an icon editor which is powerful and
easy to use.  I think I've accomplished this.  If you think so too, you can
reward me for the hundreds of hours I spent writing it by sending a small
contribution of $10.  If you have done so already, I would like to express
my thanks to you, as that $10 fed me for a week.  If you have not
registered, think of all the time I spent writing this for you, and how
nice it would be to help out a poor student who's struggling to get by.  In
return, I will send you the registered version of Icon Deluxe, which does
not include the save delay which is in the demo version.  Additionally,
although I don't anticipate there being any bugs, since I thoroughly tested
every bit of code, I'm only human so there might be some bug reports or
requests for additional features.  If so, I'll send the upgrade to all
registered users.  For bug reports or feature requests, I can be reached on
the internet at btietz@ucsd.edu.
   If you live outside the United States, please send an extra $5, since
postage costs more.
   If you would like to get the source code to Icon Deluxe, send an extra
$5.  The source is very well commented so beginning programmers should
have no trouble understanding and learning from it, and even skilled
programmers might find it useful or at least interesting.

Send cash or check to:

   Icon Deluxe
   Brian Tietz
   10520 Castine Ave.
   Cupertino, CA 95014

Thanks in advance!

@endnode
@node History " History "
HISTORY:

Started October, 1991
Began 2nd revision January 8, 1992
Finished version 1.00 May 8, 1995
Version 1.01 May 13, 1995: Fixed minor bug in size drag handle
Version 1.02 May 14, 1995: Fixed minor bug in arbitrary resize, added
   graphical resizing to arbitrary resize.  Fixed minor bug in processing
   of command line argument.
Version 1.03 May 16, 1995: Fixed bug in save as and load when no file
   specified (for loading a drawer).

@endnode
