This is the first public release of a small utility that I wrote for my ownuse to aid the making of GEM menus within GFA Basic a lot quicker, and for the
beginner, a lot easier. I have tried to make it as easy to use as possible but
as it was originally written for myself you might find some of the menu options
and prompts a little confusing. Hopefully this document should help.
-- Copyright Stuff --
Version 1.0 is totally Public Domain. All I ask is that the program file,
MENUMAKE.PRG, and this MENUMAKE.DOC file stay together. All future releases of
MenuMaker will be released as Licenceware and will be available through any PD
library that is a member of the PD Confederation. ONLY version 1.0 is available
from anywhere.
--- How It Works (or Does It Work?) ---
When you first try to save any work you have done the program will create
a folder on the root directory of the drive from which the program was started,
this also includes hard drives, called MENUMAKE. In this folder all the files
created will be stored. The idea of this feature is to keep all the menu files
and final source code in one directory instead of all over the place, this is ifyoyr anything like me anyway. When you create a menu it can be saved as raw dataso it can be re-loaded at a later date and added to or changed. When it is savedas code a GFA Basic file in ASCII format, should have a .LST extension, is
created. This code can be merged into GFA Basic and run immediatly. The only
thing you have to add is the routines for your program. There are certain do's
and dont's but I will explain these in their specific sections later. When you
are creating the menu any entries can have the routine that they are to call
entered, this is optional, and the final source code will have Procedure and
return commands for them ready made, also the function within GFA Basic that
calls a Procedure when it is selected will be included, again, this is only if
the procedure to be called was entered into MenuMaker. If no procedure was
entered the only code created for that entry is for the actual code needed to
create the display menu, not the call routines. Examine the source code to see
how it works if you are a beginner. Throughout the creation of your menu you canalways see what the finished product will look like as there is a test menu
function, so there is no need to keep saving the source code and having to mergeit into GFA Basic. The code produced has been tested on GFA Basic v2.0 and v3.6
and it worked without any problems, SO FAR. When ever any code is created it
will always allow the maximum of 6 desktop accessories to be selected form the
first menu list. You do not have to enter any details about these as the programwill do it automatically.
The following sections will try to explain what each menu option does and
how to use it. Each section title will show the menu heading and the menu entry
to be found under it.
Info
---------------
GFA MenuMaker
This is just a small information screen. Any desktop accesories loaded willbe displayed below this line.
File
-----------------
Load Menu Info
Loads a raw menu data file.
File
-----------------
Save Menu Info
Saves a raw menu data file.
File
-----------------
Quit MenuMaker
Need I say more? The option to save any work is given before quitting.
Options
---------------------
Clear Present Menu
*** USE WITH CAUTION *** Any menu data held in memory will be deleted so
make sure any work you have done has been saved. This is used to clear an old
menu so a new one can be started.
Options
---------------------
Add New Menu Heading
You will be prompted for a menu heading name. This is the text displayed
above the line all the time. As you enter them MenuMaker will create the menu
bar in the same order from the left. There can be a maximum of 10 menu headings
but you must be careful not to go off the end of the screen.
Options
---------------------
Delete A Menu List
You can delete a complete dropdown menu by choosing the menu heading. Use
this function with care. Once a list has been deleted the existing menu details
that came after it are moved into it's place. Any deleted list cannot be
recovered, unless it was saved on disk.
Options
---------------------
Add To Menu Heading
Form here you can create the part of the menu that drops down. First you
are asked to enter which menu heading you want to add to. If it is the first
heading you can only add 1 item because of having to reserve space for any
desktop accessories. This is a feature of GEM that cannot be changed. Any other
headings can have upto 20 entries. After you have entered this you can then
enter the name of the procedure to be called. This is optional, but if it is
entered the appropriate GFA commands to call this procedure are created when themenu is saved as code. Also the procedure command and return are done. All you
need do then is insert you own code in between these two lines for example:
you enter the menu name as TEST and the procedure as TESTONE. Menumaker will
create the code to check if TEST was choosen from the menu and if so will branchof to the line PROCEDURE testone, after which your code will be run and then thelast line entered by MenuMaker which will be RETURN which will go back to
monitoring the menu again. Try it and see. When you enter a procedure name you
cannot have any spaces but you can use the underscore, for example you cannot
have TEST ONE but you can have TEST_ONE.
Options
---------------------
Edit A Menu Entry
First you select the menu heading and then the menu entry. From here you
can change the menu entry and the procedure to call.
Options
---------------------
Delete A Menu Entry
As the name suggests you can delete a menu entry, First choose the menu
heading and then the menu entry to be deleted. All other menu entries below
the deleted one will be shifted to fill its space.
Options
---------------------
Test Menu So Far
You can see what your finished menu will look like without having to save
it and quit the program. The screen colours will change to the default desktop
colours and your menu bar will be shown, complete with the dropdown menus. Move
the mouse over the menu headings to see what they will look like. This is a
new feature written in for the v1.0 release. To return to the 'REAL' menu
just click the right mouse button. Any changes or deletions you make will
always be shown here so keep checking your menu.
Right, I think thats about it. Hopefully most things will be simple enough
to follow, but I remember when I first started to program menus in GFA and it
took me hours to get it the way I wanted it, this utility should make life that
bit easier. Not only that, IT'S FREE.
I am more than welcome to recieve any letters giving me suggestions and
ideas to make the program better and easier to use, or even a letter letting
me know if the program was of any use to you. As I am a member of the PdC
(Public Domain Confederation) as a Licenceware programmer all future versions
will be available from PdC PD Libraries. One of which is Jennix PD which can
be contacted at 66 Abbey Rd, Strood, Kent, ME2 3QB. Alternativly you can send meTwo Pounds and your address and I will send you the next version, when its done.Any users who give me ideas which I use will be mentioned in the program, nows
your chance to get your name seen by hundreds of ST users, well 2 anyway, Me andYou!
Thanks to the following:-
ST Format - It was the GFA Surgery section that made me release the program as I was suprised at the amount of questions asked about GEM menus, also
for giving us ST users a great magazine, I get mine every month, DO
YOU?
Nick Klee - A good friend who runs Jennix PD and first suggested that I release
some of the programs I have written, both his catalogue and invoice
programs are by me, and for introducing me to the PdC.
GFA Basic - This must be the Rolls Royce of the basic programming languages. In
my 10 years of computing as a hobby I have never used or admired a
program as much as I do this. If only all things were as good as GFA
YOU! - For taking the time to read this document and for possibly trying
out the program. Please let me know what you think. Just a letter
of appreciation (no money) will mean a lot.
Finally and most importantly -
My wife, Geraldine - Thanks for my 2 wonderful sons, Richard & Daniel, and for
putting up with me being on the computer all night. I love you...
This mush is killing me. The truth is as long as she gets her go