home *** CD-ROM | disk | FTP | other *** search
- +-------------------------------------------------------------------+
- | Documentation for "RalphTools" version 1.0. |
- | ------------------------------------------- |
- | "Nothing earthshaking, but darn handy" |
- +-------------------------------------------------------------------+
- Introduction:
- -------------
- Here are a few Workbench Icon tools I've whipped up to make life using the
- Workbench a little easier. They are first versions of the programs, and if
- you find any problems running them or have suggestions for new features or
- tools, or know a better way to go about what I'm trying to program, please
- send me a message. I access BIX and PLINK once every week or two. I read my
- Usenet/Internet mail every other day.
-
- Legal stuff:
- ------------
- These executable programs, their source code and this document are
- ©Copyright 1988 by Ralph L. Vinciguerra. They are freely redistributable,
- but may not be sold for profit without my permission. If you have ideas
- about special distributions or products which could include all or part of
- these programs you should contact me. If you are creating other Freely
- Redistributable, Public Domain, or Freeware programs please feel free to
- use my examples.
-
- Contacting me:
- --------------
- I am available several ways:
-
- BIX & PLINK: ralphv
- Usenet: ...!mit-eddie!mit-atrp!davinci!rlv
- ...!mit-eddie!mit-atrp!ralph
- Internet: davinci!rlv@atrp.media.mit.edu
- ralph@atrp.media.mit.edu
-
- Usage of these programs:
- ------------------------
- (General)
- These programs use the Workbench concept of Shift-Selection. Each tool can
- be considered an "operator" and the icons you wish to alter considered
- "arguments". Thus to operate on some arguments use this procedure:
-
- - Hold down the left or right shift key.
- - Click on the tool once.
- - Click once on each icon to be processed, except...
- - ...Double click the last one.
- - Let go of the Shift key.
-
- For all these tools, just double-clicking the tool alone (shift key
- ignored) will give a short description of function and use.
-
- (FloatIcon)
- The tool FloatIcon processes it's shift-selected arguments and makes them
- have a special property offered by the Workbench: they have no fixed
- position in their Workbench windows. Rather, they will float to an open
- position determined by the Workbench. Double click this tool with no
- arguments to receive instructions. The algotihm used seems to be the same
- as the one in the "Cleanup" menu choice in the Workbench menus.
-
- (CopyIconImage)
- The tool CopyIconImage processes the icon image of it's first selected
- argument and copies that image to the remaining shift-selected arguments.
- Double click this tool with no arguments also to receive instructions.
-
- (3) BecomeTool
- This tool makes the shift-selected icons into tool icons.
-
- (4) BecomeProject
- This tool makes the shift-selected icons into project icons.
-
- Shortcomings:
- -------------
- Due to a problem of the workbench, it is necessary to close and reopen the
- window containing any icons you modify using these programs. For some
- reason, the workbench will not see the changes until it is forced to read
- the icon data into memory again. Hopefully this will be fixed in a newer
- version of the Workbench.
-
- These programs also cannot process the icons for Drawers and Disks. They
- attempt to exit gracefully with an error indication in this case.
-
- I have plans to improve these programs along these lines but I'm not there
- yet. These operations are not as easy to figure out. I am releasing them in
- this earlier form because I believe they are already useful now. I intend
- to improve them as I learn more about the Workbench.
-
- Using the Source Code:
- ----------------------
- I wrote and debugged these programs using the Manx Aztec C compiler version
- 3.6a. Also, I did all my work using AmigaDOS 1.2.
-
- I have included the makefile so you cansee which pieces are used to create
- each tool.
-
- Also, I have included icons for every file contained in this package. The
- default tool I use for my text editor is "Edit:Edit". This allows me to
- dynamically assign a symbol called "Edit" to point to where ever I feel
- like having my editor (named Edit) come from. I find this flexibility
- useful, but if you'd rather use something like "C:Ed" then just use the
- CopyDefTool program to fix things up right away !
-
- Philosophy:
- -----------
- The Amiga is what I consider a new breed of personal computer, with it's
- powerful graphics, advanced operating system, and competitive price. It
- saddens me, however, to see programs for the Amiga which do not properly
- support the Workbench. I am also disturbed by the fact that books which
- describe how to program the Amiga ignore the Icon and Workbench
- environment. I feel that the bulk of future Amiga users will operate their
- machines using the Workbench and NOT the CLI. Therefore, the future of this
- machine is intimately related to it's ability to be easy and INTUITIVE to
- use via the Workbench. I personally perform nearly ALL my day to day
- operations using the Workbench, unless I am forced to use the CLI by a
- short-sighted program. We should all be allowed the choice to operate from
- EITHER environment properly. This is a special advantage of the Amiga !
-
- The programs included here demonstrate a technique to make an invokation
- from the CLI be similar to an invokation from the Workbench. Thus the same
- front-end instructions can be placed in many programs and they will run
- smoothly and properly from both the CLI and the workbench. These programs
- also show how it is relatively easy to use the icon data structures. It is
- interesting to note that this approach is the opposite to one used by some
- folks who covert the workbench arguments into CLI style ones. This is
- inappropriate when one wants to be able to manipulate the Icon data
- structures.
-
- Most programs should also work from the CLI, since the expression of
- programs via ARexx or other command scripting languages requires access to
- tools via the CLI style of calling. Thus the support of the CLI environment
- is also important.
-
- Some additional philosophy at work here is related to why I choose to make
- very small separate tools instead of large multi-functioned ones. This
- comes to some extent from my experiences with the UNIX operating system.
- There many different programmers creating small tools which can work in
- concert on larger problems. I hope to maintain a similar attitude here and
- have small tools that each perform their individual jobs well without
- trying to do too much. This also allows the users to select just those
- tools for the tasks of interest to them instead of carrying around the
- baggage of a oversized multi-functional program. This attitude is also
- prevalent in the ARexx enviroment that is now coming about on the Amiga.
- Here it is best to let smaller programs each do their own tasks best and
- allow them to communicate through a common environment so the each user can
- select their favorite tools to get any particular job done without being
- forced to use an "integrated" enviroment with no flexibilty. If you think
- Hypertext is a "big" concept, you should really think about the
- significance of ARexx. I predict that the Amiga community will get far more
- mileage out of the ARexx environment then the Macintosh community will get
- from HyperCard.
-
- Conclusion:
- -----------
- Thanks for reading so far. I hope some of the information (and opinions)
- provided here along with these tools are useful to you.
-
- Ralph
-
-