home *** CD-ROM | disk | FTP | other *** search
-
-
- Doctor Icon
-
- Version 1.0
-
- Created by Ray Lambert
-
- Copyright 1990 Ray Lambert
-
-
-
- » Introduction: A brief history of the Amiga and Workbench Icons «
-
- When I first got my Amiga I was excited. The machine seemed to have
- everything. The graphics and the sound were fantastic -- better than
- anything else on the market. The CLI interface was similar to what I had
- used in the past (MS-DOS) which shortened the learning curve for me. And
- the graphical interface, Workbench, was so intuitive it seemed I knew it
- before I had even used it for the first time. It wasn't long before I had
- gotten into more advanced things some of which required new icons for
- Workbench. Much to my disappointment, I quickly found that creating icons
- for the Workbench was not nearly as easy as using it was.
- I was somewhat dismayed at this discovery -- an interface that relies so
- heavily on such things as icons should certainly allow the everyday user to
- easily create and manipulate them. The supplied program "IconEd" was simply
- not sufficient.
- For example, to create an icon of a particular type, IconEd required
- that the user load an already existing icon of the desired type. It allowed
- editing of the icon's image and certain other parameters, and then it would
- allow you to save the new icon to disk with a different name. If there was
- no icon of the desried type around the user was out of luck. Finding an
- existing icon of the desired type could prove to be rather difficult for new
- users who weren't sufficiently familiar with the system. Further
- complicating the matter was the annoying lack of documentation of such
- things, eg. "How do you discover what an icon's type is?"; "How do you find
- an icon of a particular type?"; "What does a 'Tool'-type icon do?"; etc. I
- certainly never received any manuals which explained these things.
- While IconEd did allow icon images from other icons to be imported and
- copied to your icon, it did not allow importing of images drawn elsewhere --
- for example brushes saved by the excellent paint program "Deluxe Paint".
- Lastly, it did not allow the creation of "dual-image" icons (my, and
- nearly everyone else's, favorite type!)
- Since that time many utilities have been created to help manipulate
- icons in ways which should have been available since the beginning. The
- majority of these utilities are designed to perform a single operation such
- as creating an icon from an IFF brush. Some create a simple icon of any
- type which can then be edited in IconEd. Some will join two existing icons
- resulting in a single, dual-image icon. All are very useful and valuable.
- However, most also require the knowledge and ability to use the CLI -
- something which not all of us possess. Many people prefer NOT to use the
- CLI - they would rather do all their computing from the Workbench. For
- these people CLI utilities are effectively useless. And even if a user does
- not mind "getting their hands dirty" in the CLI once in awhile, they still
- need to have a whole collection of little utilities to edit and create
- icons. And one fact always remains; there _should_ be an easier way!
- Some utilities have gone beyond the simple CLI-based, single-operation
- stage. Some of these are commercial products which may cost more than most
- people are willing to spend. Others are in the public domain or are
- "ShareWare". Most combine the abilities of the CLI-based utilities into one
- uniform environment. Many offer specialized features which for the most
- part are not really useful -- such as the ablity to create icons of up to
- sixteen colors (Workbench only uses four colors unless it is "hacked" to use
- more). While the majority of these programs are very well done and
- certainly a far cry from what was formerly available, many continue to
- ignore some basic and simple features which would be very useful and few
- actually integrate their combined utilities.
-
-
- » Enter Doctor Icon «
-
- This brings us to Doctor Icon - the last word in icon editors. Doctor
- Icon provides all the tools neccessary for the creation and editing of all
- icon types. Doctor Icon not only combines the features of many of the
- CLI-based icon utilities but also integrates them into a single omni-tool.
- Doctor Icon covers all the bases, offering nearly every possible method for
- the import and export of icons and their images. Doctor Icon allows all
- components of an icon to be created and/or modified. And above all, Doctor
- Icon does all of this through a powerful, user-friendly interface which is
- equally intuitive to both the novice and the power-user alike. Doctor Icon
- is the program which _should_ have come with Workbench!
-
- (All right so maybe that's laying it on a bit thick! But it really is a
- good program... trust me :)
-
-
- » Doctor Icon Features «
-
- * Runs from either CLI or Workbench; automatically detaches itself from
- the CLI when run from the CLI, allowing the CLI to be closed.
-
- * Runs in a custom screen to avoid "crowding" the Workbench screen -
- Doctor Icon's custom screen is a clone of the Workbench screen in medium
- resolution mode (sorry, no interlace).
-
- * Automatically loads any icon on startup from either the CLI or the
- Workbench (via extend-select with the SHIFT key).
-
- * Allows Workbench "Info"-style editing of Stack Size, Default Tool, and
- Tool Types.
-
- * Allows setting of icon's "Highlight Type"; three possible choices are:
- "Image", "Complement" and "Backfill".
-
- * Supports icons of the following type: "Tool", "Project", "Drawer",
- "Garbage" and "Disk".
-
- * Allows editing of existing icons through "Load" and "Save" options or
- the creation of new icons of any type through the "New Icon" option.
-
- * Imports images from IFF brush files or existing icons, even the second
- image of dual-image icons!
-
- * Allows imported images to be either the first or the second image of
- the icon being edited.
-
- * Allows deletion of the images in an icon.
-
- * Allows swapping the first and second images of a dual-image icon.
-
- * Allows images belonging to the icon being edited to be previewed on
- both the Doctor Icon custom screen and the Workbench screen.
-
- * Allows editing of the spacing between an icon's image and its text
- label.
-
- * Allows the user to define the position and size of the window
- associated with "Drawer", "Garbage" and "Disk" icons.
-
- * Allows icons to be "un-Snapshotted" - this feature reverses the effect
- of Workbench's "Snapshot" command, allowing previously Snapshotted icons to
- once again "float" into Workbench's idea of the "best" position for them.
-
- * Allows any icon image to be saved as an IFF brush which can then be
- loaded into a paint program to be edited or used otherwise.
-
- * Uses an advanced file requester for all loading and saving. (Please
- see the seperate document file describing the features of the file
- requester).
-
- * For programmers: saves icons as "C" source code for inclusion in
- original programs, allowing the creation of icons for new "projects".
-
-
- « Basic Operation »
-
- Doctor Icon may be loaded from either CLI or Workbench. From either
- environment a "Start-up Icon" may be specified. The "Start-up Icon" will be
- automatically loaded by Doctor Icon.
- From the CLI you may specify the "Start-up Icon" on the command line.
- Any valid icon name may be used. Note that the ".info" filename extension
- which is given to icons is optional -- Doctor Icon will append the extension
- if you do not.
- From Workbench you may use Workbench's extend-select feature to choose
- one icon to load. To do this, first click ONCE on Doctor Icon's icon, next
- press and hold-down either of the SHIFT keys on the keyboard, lastly
- double-click on the icon that you want to edit. (you may release the SHIFT
- key now :)
- If no start-up icon is specified when Doctor Icon is run, it will come
- up in "New Icon" mode, just as if you had used the "New Icon" command.
-
- Doctor Icon's screen is divided into seven rectangular areas. Each
- region is clearly labeled in a large font. The most important of these is
- in the upper right hand corner and is called the "Control Panel".
-
- * The "Control Panel" contains four gadgets to perform the following
- functions:
- 1) "Load Icon" loads any existing icon from disk to be edited. The
- act of choosing which icon to load is done through the file requester (which
- is described in a seperate document).
- 2) "Save Icon" saves the icon which is currenty being edited to
- disk. This function will fail if the proper number of images haven't been
- attached to the icon. The number of images that are needed is defined by
- the "Highlight Type" of the icon: "Image" requires two images, "Complement"
- and "Backfill" require only one.
- 3) "New Icon" clears the current icon from memory allowing you to
- create a new icon from scratch. Any loaded images will be lost, and most
- icon parameters will be set to default values. Because of the potentially
- destructive nature of this command you will always be asked to verify it
- before it is performed.
- 4) "Quit" allows you to end a Doctor Icon session. This command is
- also potentially destructive as you may have an icon loaded which you have
- edited and have forgotten to save. Because of this you will always be asked
- to verify that you want to quit, giving you the opportunity to catch your
- mistake.
-
- The remaining six rectangular regions are each used to display and edit
- a specific icon parameter. Following is a description of each area:
-
- * "Stack Size": Icon types which, when clicked on, cause a program to
- be executed (namely, "Tool" and "Project" icons) allow a stack size to be
- defined which is normally used by the program that gets run. The stack size
- that is defined in the currently loaded icon is always displayed in a small
- rectangular box in this area. If you wish to change the stack size, simply
- click in the box and use the editing keys to change the value. (This is a
- normal Intuition string gadget). Please note that you _must_ press RETURN
- when you are finished editing the stack size or your change will not be
- saved with the icon.
-
- * "Default Tool": "Project" and "Disk" type icons require a "Default
- Tool". The "Default Tool" that is defined in the currently loaded icon is
- always displayed in a small rectangular box in this area. If you wish to
- change the "Default Tool", simply click in the box and use the editing keys
- to change the value. (This is a normal Intuition string gadget).
-
- * "Tool Types": All icon types may have "Tool Types" values defined
- within them. "Tool Types" are analogous to the command line parameters
- which are used in the CLI environment -- they are optional arguments or
- parameters that are fed to the tool (or program) that is associated with the
- icon containing the tool types. There is no known limit to the number of
- tool types that an icon may have, however, Doctor Icon does enforce a
- practical limit of 50 (which should be far more than enough!). Just to the
- right of the "Tool Types" label is a "tool types counter display" which
- indicates the number of tool types that are currently defined and the number
- of the currently displayed one. If there are 5 tool types defined and
- number 3 is currently visible the display will read "(3/5)", meaning "You
- are viewing tool type number 3 out of a total of 5". When there are no tool
- types defined the display reads "(0/0)". Below the "Tool Types" label is a
- small control panel that allows you to manipulate the tool types. The tool
- types control panel contains four buttons. The first button is labeled
- "Add", and it allows you to add one additional tool types definition to the
- total (assuming there are less than the limit; 50). When there are no tool
- types defined, the remaining three buttons are disabled and their labels are
- unreadable. When there are no tool types defined and you click on the "Add"
- button the tool types counter display will change to "(1/1)" (viewing #1 of
- 1), the cursor will appear in the tool types text area at the very bottom of
- the tool types area, and the second of the three buttons on the control
- panel will become visible. The second button says "Delete" - it will delete
- the currently displayed tool type. The third and fourth buttons are labeled
- with up and down arrows respectively. They are not visible unless there are
- two or more tool types defined. Their purpose is to allow you to scroll
- through the list of tool types. The up arrow will move you closer to the
- top (number one) while the down arrow moves closer to the bottom of the
- list. To edit the definition of any of the defined tool types you should
- first cause that one to be visible in the text area. Using the arrow and
- the "Add" buttons will automatically cause the cursor to appear in the text
- area allowing you to begin editing immediately. If the cursor is not there
- however, simply click in the text box with the mouse. The tool types text
- area is a normal Intuition string gadget. If you are familiar with
- Workbench's "Info" command, then you will notice that Doctor Icon's Tool
- Types editing panel works in a manner almost identical to Info's, the only
- functional difference being the addition of the Tool Types Counter Display.
-
- * "Highlight Type": When you click on an icon its appearance must
- change in order to demonstrate that it has actually been selected. There
- are three different types of highlighting that may be used in an icon. This
- selection panel allows you to choose which method you desire for your icon
- and also to view which type is currently being used:
- 1) "Image": This highlighting type is used to make "dual-image" or
- "animated" icons. It requires that a second image be attached to the icon.
- When the user clicks on the icon, Workbench draws the secondary image on top
- of the primary. If the two images are drawn properly this action can appear
- as simple animation (see Doctor Icon's Workbench icon for an example of this
- type of icon). Some functions in Doctor Icon will refuse to operate on an
- icon which has "Image" type highlighting specified but has no second image
- attached.
- 2) "Complement": When an icon using this highlight type is clicked
- on, Workbench "complements" the whole icon by drawing a solid rectangle
- covering its entire area. This causes all the colors of the icon's imagery
- to change including the background color. With some icons this may leave a
- filled area around the edges that is unsightly.
- 3) "Backfill": This highlighting type is really a special version
- of "Complement" which does not highlight around the edges of the icon's
- image. Therefore, unsightly edges are normally eliminated. However,
- because of the method that Workbench uses to achieve this effect there may
- be another undesirable side-effect: Workbench draws the icon's image,
- "complements" the image as in "Complement", and then performs an area-fill
- on the outside edge of the icon thereby removing the edge highlighting. The
- problem is that in this mode, Workbench allows the icon to be selected only
- by clicking (with the mouse) on areas of the icon which are drawn in a color
- other than the background color, or areas that are completely enclosed by
- areas which are drawn in a color other than the background color. Depending
- on the icon's image, it is sometimes difficult to select an icon of this
- type with the mouse.
- For example, if you made the letters of the alphabet into icons, the
- letter "O" would be easy to select because you would be allowed to click
- anywhere on the solid portion of the "O" as well as inside the belly of it
- which is an enclosed area. When the "O" is highlighted its solid portion
- would change color and its belly would be filled with the "complement"
- color. The area around the "O" would be unchanged - this would be most
- notable in the corners where the "O" is curved. You would not be able to
- select the "O" by clicking in this outside area.
- On the other hand, the letter "I" would be difficult to select,
- especially if it where drawn using very thin lines. You would only be
- allowed to select the "I" by clicking on its solid portion. Clicking
- anywhere else would have no effect. When you did manage to select it, only
- its solid portions would change color.
- All other highlight types allow an icon to be selected by clicking
- anywhere in the rectangular area which contains the icon. As you can see,
- "Backfill" presents a digression from the normal operation of Workbench
- icons which is not always desirable. For a further example of the
- difference between the "Complement" and "Backfill" highlight types compare
- the "DiskCopy" icon from the "System" drawer on the "Workbench1.3" disk to
- the "CopyPrefs" icon from the "Prefs" drawer, also on "Workbench1.3".
- "DiskCopy" uses "Backfill" mode while "CopyPrefs" uses "Complement". Notice
- the filled areas in the upper and lower right corners of the "CopyPrefs"
- icon after it gets selected. This is the edge highlighting that I just
- described. Try selecting the "DiskCopy" icon by clicking above or below the
- arrow in its center but in between the two disk images -- you cannot -- you
- must click either on the arrow or one of the two disks. Also notice the way
- the arrow in the "DiskCopy" icon dissappears after highlighting - this is
- because the complement of the color that the arrow is drawn in is the same
- as the background color. The arrow in the "CopyPrefs" icon also turns the
- same color as the background but it does not disappear because the area
- around it changes color. You may load these icons into Doctor Icon to
- verify that they are using the highlight type I have said -- you may also
- change the highlighting type to see what will happen. Most of the other
- icons on the Workbench disk use "Backfill" highlighting.
- There are many other good examples of "Backfill" -- one is the
- "Preferences" icon in the "Prefs" drawer. The "Shell" icon in the root
- directory is also a good example -- you can select it by clicking in its
- center area even though that area is in the background color because it is
- completely enclosed. Notice that the enclosed area changes color when you
- select it.
- The moral of all this is simple: "Backfill" can be very useful and much
- more desirable than "Complement" in some cases but please be sure when you
- use it that it works well with your icon's imagery. (NOTE: For you
- programmer-types out there, Workbench implements "Backfill" through extended
- boolean gadgets. It appears to create a bool mask by or'ing all planes of
- the image into a single plane in an off-screen buffer.)
-
- * "Icon Type": This selection panel allows you to view and select the
- "type" of the icon. For a description of the different types please see the
- discussion below.
-
- * "Import Icon Image": This selection panel is the main control panel
- for importing images into your icons. Below the title is two columns. The
- first column is labeled "From" and contains three buttons - the second is
- labeled "To" and contains two buttons. A line is drawn between the two
- columns linking one button from the "From" column to one button from the
- "To" column. This is referred to as a "patch-panel". It allows you to
- easily control importing of images from multiple sources into multiple
- destinations. The three sources (in the "From" column) are:
- 1) "IFF Brush": Imports a standard IFF brush such as those created
- by "Deluxe Paint".
- 2) "Icon Image": Imports the primary image from any existing icon
- on disk.
- 3) "Icon Alt.": Imports the secondary (or alternate) image from any
- existing icon on disk. Note that only icons which use "Image" highlighting
- (dual-image icons) actually have a secondary image -- choosing another type
- of icon will result in an error.
-
- The two possible destinations for imported images (as listed in the "To"
- column) are:
- 1) "Main Image": Places the imported image into your icon as its
- primary image.
- 2) "Alt. Image": Places the imported image into your icon as its
- secondary image. If your icon is not currently using "Image" highlight type
- when you import into its "Alt. Image", its highlight type will be changed.
-
- To change the source or destination of an import operation simply click
- on the appropriate button. When you do so the connecting line will be
- redrawn to reflect the new selection. To actually perform an import
- operation click in the rectangular box which surrounds the words "Import
- Icon Image". Besides containing the section's title, this box is also a
- button which is used to trigger an import operation using the source and
- destination defined on the patch-panel. When you begin an import operation
- you will be asked to select the file to import using the file requester --
- this will be either an IFF brush or an existing icon. You may import images
- into the same destination as many times as you like. The old image will
- automatically be replaced by the new one.
-
- * One last area on Doctor Icon's screen that needs to be mentioned is
- the "Icon Name:" area at the top of the screen just under the title bar.
- This area always holds the current _disk_file_name_ for the icon in memory.
- If the file is unnamed (as it is after selecting "New Icon") this area will
- simply say "New".
-
-
- « Special (advanced) Operations »
-
- Doctor Icon uses a menu to allow selection of six special functions.
- These are described here:
-
- * "Set Drawer": Some icon types (namely "Drawer", "Garbage" and "Disk")
- cause a Workbench window to be opened when they are double-clicked. This
- option allows you to set the position and size of the window which will be
- opened. This option will not work for icon types which do not support
- windows. When you select this function with an icon of the legal type
- loaded, Doctor Icon will close its screen, bring the Workbench screen to the
- front and open a small window on it. The window contains all the standard
- system gadgets (close, drag, depth and sizing) and will have a set of
- instructions written into it which reads: "Adjust the size and position of
- this window to your satisfaction then click on the close gadget to return to
- Doctor Icon..." Do as it says... position the window using the drag gadget
- and resize it using the sizing gadget until it is at the position and size
- that you want the icon's window to be at when it opens. When you click on
- the close gadget the window will be closed and Doctor Icon will re-open its
- screen. The small window's last position and size will be recorded in the
- icon when it is saved.
-
- * "Un-Snapshot": Normally when Workbench draws icons into a drawer
- window it places them in an orderly fashion so they do not overlap each
- other. When icons are such that Workbench is allowed to choose where they
- will be placed in a window they are thought of as "floating" icons.
- Workbench has an option in its menus called "Snapshot". This feature causes
- all selected icons to be written back to disk with their current positions
- saved inside. These icons are then referred to as "snapshotted" icons.
- When a drawer containing snapshotted icons is opened the snapshotted icons
- are placed back into their saved position. This feature is very useful but
- in some cases it is undesirable. For example, it is normally better if disk
- icons are "floating" so that Workbench can neatly stack them on the
- right-hand side of the screen. Using the "Un-Snapshot" command you can
- cause an icon to "forget" its saved (snapshotted) position and once again be
- a "floating" icon.
-
- * "Preview": This feature allows you to look at the images of an icon
- that you have loaded into Doctor Icon. If there are no images loaded for
- the current icon this feature will not work. When you select this option, a
- small window will open on Doctor Icon's screen. The window will have the
- icon's primary image drawn into it. When you click on the icon it will
- mimic the action that usually occurs on the real Workbench. Clicking once
- will highlight the icon or display its secondary image. Clicking twice will
- have no effect for icons which do not open windows, however for "Disk",
- "Drawer" and "Garbage" icons a window will be opened just like on Workbench.
- If this window is resized and/or repositioned before it is closed (using the
- close gadget) its last size and position will be recorded in the icon when
- it is saved (much like Doctor Icon's "Set Drawer" option).
- The preview window has a drag bar and depth gadgets so that it can be
- manipulated in the same manner as all normal Intuition windows. It also
- contains a small control panel which has the following commands:
-
- 'Jump': Causes the preview window to migrate between the Workbench
- screen and Doctor Icon's custom screen. When the preview window changes
- screens, the screen that it migrates to will come to the front. Note that
- it is not possible to move the preview window to a screen other than the
- Workbench screen and Doctor Icon's screen.
-
- 'End': Ends the preview and closes the preview window.
-
- 'T': Toggle the two images of a dual-image icon. The currently
- displayed image is indicated in the preview window's title bar.
-
- Up Arrow: Adjust the spacing between the icon image and its text by
- moving the text closer to the image.
-
- Down Arrow: Adjust the spacing between the icon image and its text by
- moving the text further away from the image.
-
- * "Icon to IFF": This option allows you to save one of the currently
- loaded icon's images as an IFF brush. This option will not work if the
- current icon has no images attached to it. If two images are attached to
- the icon a requester will appear asking you which image you would like to
- save. When the time comes to actually save the image the file requester
- will appear so you can enter a file name to save the file as.
-
- * "Icon to C": This option is provided for programmers who would like
- to have their own programs create icons to go with "projects" that their
- programs create. It dumps all images and support structures to represent
- the icon as C source code. The structures can be modified at runtime, for
- example, to allow the user to set the icon's default tool. The icon can be
- written out to disk by a simple call: PutDiskObject( (char *)icon_name,
- (struct DiskObject *)&the_icon );
-
- * "Swap Images": This option only works with icons using "Image" type
- highlighting (dual image icons) and which have two images currently
- attached. Just as it says, it swaps the two images so that the secondary
- image becomes the primary and the primary becomes the secondary. This is
- especially useful if you need to delete the primary image (as explained in
- the following section).
-
-
- « Image Manipulation »
-
- Doctor Icon's image manipulation capabilities are simple, practical and
- functional - nothing fancy but they are sufficient to get the job done.
- Doctor Icon is capabale of importing, exporting, swapping, previewing and
- deleting images.
-
- * Importing Images: The interface which allows you to import images
- into Doctor Icon is decribed above ("Import Icon Image"). As stated there,
- images can be imported from IFF brushes or other icons. Also, imported
- images can be attached to the current icon as either its primary or its
- secondary image. There are some limitations imposed on importing of images
- and those are described below in the section entitled "Limitations".
- Briefly, imported images are only limited by the current limitations of
- Workbench.
-
- * Exporting Images: Two facilities exist to export images from Doctor
- Icon. Images can be saved as IFF brushes (as described above under "Icon to
- IFF") and they can also be saved as C source code in an icon dump to C (as
- described above under "Icon to C").
-
- * Swapping Images: Icons which have two images can have their primary
- and secondary images swapped (as described above under "Swap Images").
-
- * Previewing Images: The images belonging to an icon can be previewed
- using the "Preview" option (as described above).
-
- * Deleting Images: When an image is imported into an icon the icon's
- old image is automatically deleted. This precludes the need for an actual
- "delete" command in all except one case. Sometimes it is necessary to
- convert a dual-image icon into a single image icon. To do this, one of the
- icon's images must be deleted. The mechanism for doing this may not be
- completely obvious. Changing the icon's highlight type from "Image" to
- "Complement" or "Backfill" will always cause the icon's secondary image to
- be deleted. Because of the potential destructiveness of this procedure,
- Doctor Icon will always ask you to verify your intentions before proceeding.
- In some cases you may wish to delete the icon's primary image instead of its
- secondary image when converting to a single image icon. This may be
- achieved by first using the "Swap Images" command (described above), and
- then changing the icon's highlight type. When you do this, the icon's
- primary image (the one you wish to delete) will become its secondary image
- after using the "Swap Images" command, then it will be deleted when you
- change the highlight type of the icon, effectively resulting in a single
- image icon which uses the icon's former secondary image.
-
-
- « Workbench and its Icons »
-
- Icons are used by Workbench to represent objects which are stored on
- disk. There are five icon types that Workbench supports. Each has a
- specific purpose and behaves in a slightly different manner. Each of the
- five types can use any of the three highlight types and each allows you to
- specify "Tool Types" parameters that identify particular characteristics of
- the object that the icon represents. Also, some of the icon types allow you
- to specify a "Default Tool" and some allow you to specify a "Stack Size".
- To Workbench, an application program is really a "tool". Therefore the
- term "Default Tool" refers to a default application program which is to be
- used in the absence of a specific application program. Some of the icon
- types cause a "tool" to be executed when they are selected and some of these
- use the "Default Tool" parameter. In addition, those icon types which
- execute tools also use a "Stack Size" parameter. The "stack" is an area
- which an application program uses for temporary memory storage. All
- programs need and use a stack. Workbench uses the "Stack Size" parameter to
- determine how large to make a program's stack. If an icon does not specify
- a "Stack Size", the default is 4000 bytes. This is usually plenty for
- smaller programs but will likely to be too little for larger programs. If
- you have a program that crashes on you, try raising its stack size, it may
- be running out. Note that programs which are run from the CLI inherit their
- stack size from the CLI that they are run from. The CLI's stack size can be
- viewed and set using the STACK command.
- Note that I have provided this brief Workbench tutorial/description
- because Commodore did not. I hope that it helps those novice users who may
- fall into possession of it. Following are descriptions of the five icon
- types used by Workbench as well as a few other Workbench-specific subjects.
-
- * Tools: "Tool" icons are the most common type of icon and the
- simpliest to understand. A tool icon represents a specific application
- program on disk, such as a word processor, and uses the same name as the
- application program. When you double-click on a tool icon Workbench
- executes the program that the icon is associated with. Tool icons allow the
- specification of a "Stack Size" but not a "Default Tool".
-
- * Projects: "Project" icons are probably the second most common icon
- type and the most difficult to understand. A data file created by an
- application program is thought of by Workbench as a "project", and
- project-type icons represent this type of file. For example, a document
- produced by a word processor is a "project"; so is a spreadsheet which is
- produced by a spreadsheet program and a data base produced by a data base
- program. A "project" is not a program and therefore cannot be executed.
- Because of this, Workbench must have a way to associate a project with a
- tool in order to be able to do something with the project. The "Default
- Tool" parameter is one way* to establish this association. If you place the
- name of your word processor into the "Default Tool" field of your document's
- project icon, when you double-click on the project icon Workbench will
- execute your word processor and give it the name of your project. If your
- word processor supports Workbench it will load your document and allow you
- to edit it. Note that in most situations it will be necessary to supply a
- full path name in the "Default Tool" field with the tool's name. For
- example, you would probably use "Workbench:Utilities/Notepad" to specify the
- Notepad program as a "Default Tool". Project icons also allow the
- specification of a "Stack Size" which is applied to the tool that gets
- executed when the project icon gets selected -- regardless of whether or not
- the "tool" has an icon of its own with a "Stack Size" specified.
- (*Another way to establish the association between a project and a tool
- is through the use of the extend-select feature of Workbench which is
- described below.)
-
- * Drawers: The next most used icon type is the "drawer" type. Drawer
- icons are fairly easy to understand, IF you already understand how a
- heirarchical directory structure works. It is beyond the scope of this
- document to explain directory structures, so, assuming that you do
- understand them, drawer icons are used to represent drawers (also known as
- sub-directories) which are found in a directory structure. Selecting a
- drawer icon causes Workbench to open a window representing the new directory
- and to read and display in the window all icons that are found in the new
- directory. Drawer icons never execute programs and therefore they do not
- allow the "Default Tool" or "Stack Size" parameters.
-
- * Garbage (Trashcan): Garbage icons are nearly identical to drawer
- icons. The only difference is the special feature, "Empty Trash", as found
- in the Workbench menu. Whenever a garbage icon is selected the "Empty
- Trash" menu item is enabled. Selecting "Empty Trash" causes everything in
- the directory associated with the garbage icon to be deleted from disk. A
- good example of a garbage icon is the "Trashcan" icon found on the Workbench
- disk. Garbage icons are supposed to provide a mechanism by which to delete
- unwanted stuff from disks. Files may be moved into the "trashcan" directory
- by dragging them into the open trashcan window or simply dropping them on
- the garbage icon. The files are not actually deleted after this. You can
- still get them back by double-clicking on the garbage icon, which, as with
- drawer icons, opens a window containing the contents of the drawer (in this
- case it is the garbage drawer) and dragging the files that you want to save
- out of the window to somewhere else. To actually delete the files that you
- have moved into a garbage directory you must select the "Empty Trash" menu
- item. Note that you can also delete files by selecting them and then
- selecting the "Discard" menu item. As with drawer icons, garbage icons do
- not allow the "Default Tool" and "Stack Size" parameters.
-
- * Disks: Disk icons are very closely related to drawer icons. While
- drawer icons represent the sub-directories found in the directory structure
- of a specific volume, disk icons represent the volume itself and the root
- directory of its directory structure. Disk icons are the ones which appear
- automatically on the Workbench screen when you insert a new disk in one of
- your drives. When you double-click a disk icon Workbench opens a window and
- displays in that window all icons found in the root directory of the volume.
- In addition to this double-click action, Workbench also supports a
- special feature for disk icons: copying of volumes through icon dragging.
- If you drag a disk icon and drop it on another disk icon of compatible type,
- Workbench will copy the contents of the disk represented by the icon that
- you dragged, onto the disk represented by the icon that you dropped the other
- onto. To do the actual copying, Workbench must execute a tool which is
- capable of copying the type of disk which is implicated in the operation.
- Workbench looks in the "Default Tool" field of the source disk to find the
- name of the copying program to use. If no name appears in this field, the
- copy operation will fail. Despite the fact that this operation will cause a
- program to be executed, disk icons do not use the "Stack Size" parameter.
- Disk icons present some limitations and peculiarities which other types
- do not. With all other icon types, the icon inherits its disk file name
- from the name of the object it represents, with ".info" appended to it. For
- example, if you have a word processor called "QuickWrite", its tool-type
- icon will be called "QuickWrite.info" on disk. Likewise, if QuickWrite
- creates a document called "TeaPricesInChina" and gives it a project-type
- icon, its icon will be called "TeaPricesInChina.info". Also, drawer and
- garbage icons get their name from the drawer they represent. This is not so
- of disk icons which are _always_ called "Disk.info" on disk. Disk icons DO
- NOT inherit their disk file name from the volume name of the disk as one may
- expect. This peculiarity creates a limitation for disk icons: only one
- disk icon may exist for each volume. In addition, the file "Disk.info" must
- be in the root directory of the volume. The latter two limitations are of
- course very practical and should never cause any difficulties. However, the
- former (fixed disk file name) does represent at least one minor problem for
- Doctor Icon.
- As described earlier, Doctor Icon allows a start-up icon to be specified
- when it is run from Workbench. Workbench's extended-select feature is used
- to select the start-up icon. When selecting a disk icon in this fashion,
- Workbench does not pass the disk file name of the icon, but rather the same
- name which is displayed on the Workbench screen, the diskette's volume name.
- This is unlike all other icon types. When this happens, Doctor Icon must
- attempt to find the volume and load the file called "Disk.info" from it.
- This normally works okay, however there may be some situations where this
- will not work properly and Doctor Icon will fail when it tries to load the
- start-up icon. All is not lost though... if this happens, you can still
- use the "Load Icon" command and the file requester to find the icon file and
- load and edit it, or run Doctor Icon from the CLI and specify its disk file
- name on the command line.
- There is one other disk icon peculiarity which deserves to be mentioned
- here. As a special feature of Workbench, when a disk is inserted which does
- not contain a file called "Disk.info" (the actual disk icon), Workbench uses
- a special default disk icon so that all of your disks can be manipulated
- from Workbench even if they do not have an icon assigned to them. This
- special default disk icon that Workbench uses CANNOT be edited in Doctor
- Icon. Doctor Icon can only edit icons which are stored on disk.
- Workbench's default icon is stored in the Kickstart ROM (or Kickstart Disk
- for you faithful Amiga 1000 owners).
-
- * Extend-Selection: This is a feature supported by Workbench which
- allows you to select multiple icons at one time. This is accomplished by
- pressing and holding either of the SHIFT keys on the keyboard while you
- click _once_ on each of the icons that you wish to select and finally
- _twice_ on the last icon that you wish to select. Before beginning any
- extend-select procedure I recommend that you click once on the Workbench
- screen to unselect any icons that may already be (erroneously) selected.
- This will help you to avoid any mix-ups, some of which are potentially
- disasterous -- for example when deleting a batch of icons, if you do not
- take this precaution you may accidentally delete a file that you wanted.
- There are many good uses for extend-selection. For example, if you wish
- to "Snapshot" a whole batch of icons at once, simply use extend-selection to
- select all the icons that you wish to snapshot, and then select the
- "Snapshot" menu item. The same procedure can be used to delete a whole
- batch of icons at once using the "Discard" menu item. You can even use
- extend-select to copy or move a whole batch of icons at once. One of the
- most common uses for extend-selection is when you want to pass one or more
- projects to a tool. To do this, first click in the background to unselect
- any icons that you do not want included, press and hold either of the SHIFT
- keys, click on each of the project icons that you wish to use and finally,
- _double_click_ on the tool icon while still holding the SHIFT key. The tool
- will be executed and passed all of the projects that you have selected. If
- your program supports Workbench projects it should load the specified
- project(s). Some programs may support Workbench projects but may not
- support multiple projects. See your application program's documentation to
- find this out. Of course, it should also be safe to just try it -- if it
- doesn't work then the program most likely doesn't support it.
-
- * Tool Types: All of the icon types that Workbench supports allow "Tool
- Types" to be specified. Tool Types are parameters which can be assigned to
- an icon to identify certain characteristics of the object that the icon
- represents. Each individual tool type is a free-form text string --
- Workbench does not impose any limitations on the contents of a tool type.
- However, the use of one specific form is encouraged. This one form looks
- like this:
- OPTIONNAME=OPTION|ALTERNATE
- where "OPTIONNAME" is a keyword such as "FILETYPE", and "OPTION" and
- "ALTERNATE" are values such as "ILBM" and "TEXT". The equal sign ("=") is
- used to seperate OPTIONNAME from a list of OPTIONs and the vertical bar
- character ("|") is used to seperate OPTIONs. There can be many OPTIONs to
- each OPTIONNAME, each seperated from the rest by a vertical bar character.
- When a list of multiple OPTIONs is provided it signifies that OPTIONNAME has
- multiple values or alternate values each of which appears in the list. Here
- is an example of the usefulness of tool types: remember our fictional word
- processor called "QuickWrite"? Well let's assume now that it can handle
- both text files and IFF picture files. In Workbench lingo, the "QuickWrite"
- tool can handle multiple project types. In order to distinguish between the
- two types of projects that our tool uses, we use a tool type called
- "FILETYPE". When a text file is saved, the following tool type is used:
- "FILETYPE=TEXT". Likewise, when an IFF picture file is saved the following
- tool type is used: "FILETYPE=ILBM". Note that we would never use
- "FILETYPE=TEXT|ILBM" with this example because the two types are mutually
- exclusive. In other situations however, specifying multiple values may be
- legal and extremely important.
-
-
- « Limitations »
-
- Doctor Icon was written in such a manner as to avoid artificial
- limitations whenever and wherever possible. In fact there is only one
- limitation in the program which I consider to be a _real_ artificial
- limitation, and that is the limitation of 50 tool types. Of course,
- realistically, 50 tool types should be far more than one will ever need.
- There are a few other limitations however that should be mentioned.
- Generally, Doctor Icon does not allow anything which is not considered
- officially supported under version 1.3 of the operating system and of
- Workbench. Most notably, is the number of colors allowed in icon imagery.
- The current version of Workbench uses a two bit-plane screen for four
- colors. This is a fixed limitation in the current version of Workbench.
- Even though there are 'hacks' that allow Workbench to use more or less than
- two bitplanes, and even though there are other programs which allow the
- creation and editing of icons which use images that contain more or less
- than four colors, Doctor Icon does not allow this. I chose to create a
- program which conforms to the current limitations of the operating system
- when I wrote Doctor Icon and that is why these things are not supported by
- the program. Whenever Doctor Icon imports an image, if the image is not
- already made-up of two bit-planes the image is either padded or stripped to
- make it conform to the two bit-plane limitation.
- As far as I know, Workbench 1.3 does not impose any limitations on the
- size of images used for icons, therefore, neither does Doctor Icon. This
- means that you can actually import a full sized IFF picture into Doctor Icon
- and save the icon sucessfully. Workbench will even display it, although you
- will never see the whole image at once. Doctor Icon's preview feature
- however, will not display icons possessing images which will not fit in the
- maximum size of the preview window, which in turn must fit on a 640 by 200
- screen. If an image is too large to be previewed, Doctor Icon will inform
- you with an error message when you try to preview it.
-
-
- « Miscellaneous »
-
- As mentioned earlier, documentation for the file requester is in a
- seperate file -- this is because of its copyright status.
- During the execution of Doctor Icon, you will undoubtably meet-up with
- Doctor Icon's message window. The message window may contain either one or
- two buttons. When it contains only one button it is only meant to inform
- you of a condition or the result of some operation. You must reply to the
- message window to make it go away and continue using the program. To reply
- to you may either click on the "Okay" button or press any key on the
- keyboard. When the message window contains two buttons it is trying to ask
- you a question. You must answer either by clicking on the appropriate
- button or by pressing one of the following keys on the keyboard: "Y" or
- RETURN for an affirmative answer; "N" or ESC for a negative answer.
-
-
- « Disclaimers »
-
- Doctor Icon Version 1.0 is copyright 1990 by Ray Lambert, all rights
- reserved. The author assumes no responsibility for any use or misuse of
- this program. The author makes no warranties either implied or stated.
-
- Doctor Icon is freely-distributable, COPYWRITED software.
-
- If you have questions, complaints, suggestions, propositions, etc., you
- may contact me at the following places:
-
- BIX: AnalogKid
-
- PLink: Analog*Kid
-
- U.S. Snail: Ray Lambert
- PO Box 1253
- Westport, Massachusetts 02790
-
- Phone: (508) 677-9217
-