@database MUI
@master Games:Blitz2_EquatesV3/Blitz2_EquatesV3.guide
@$VER: mui38dev-bb2.guide 1.0 (27.02.97)
@author "Erwan"
@remark Created with Heddley v1.1 (c) Edd Dumbill 1994

@node "main" "MUI_Blitz2_Equates  ©1997  by  Gary O'Connor"

          MUI_Blitz2_EquatesV3    by    Gary O'Connor    April 1997
          
  @{" Disclaimer              " link "Disclaimer" 0}     Legal stuff
  @{" What is it?             " link "What is it?" 0}     So tell me !
  @{" Requirements            " link "Requirements" 0}     What do I need ?
  @{" Installation            " link "Installation" 0}     How can I install this package ?
  @{" How do I use this thing?" link "How do I use this thing?" 0}     What can I do and how ?
  @{" Distribution            " link "Distribution" 0}     Aminet ...
  @{" Future                  " link "Future" 0}     Tomorrow ...
  @{" Bugs                    " link "Bugs" 0}     There can't be bugs !
  @{" Thanks                  " link "Thanks" 0}     Thanks !!!
  @{" Author                  " link "Author" 0}     ME !!!
@endnode

@node "Disclaimer" "Disclaimer"
@next "Introduction"
@prev "main"

   This programme was written with good intentions and with no thoughts of
damaging or harming you or your equipment in any way. Use it at your own
discretion and please, if your computer blows up whilst you are using it, bad
luck buddy!!! Just don't `ctrl A/A' your machine while it's saving any files
and you should be ok!

   No one's twisting your arm up your back.....you decide if you want to use
it and leave @{"me" link "Author" 0} out of it!!.......OK?



       @{"   Main    " link "main" 0}

       @{"What is it?" link "What is it?" 0}
@endnode

@node "What is it?" "What is it?"
@next "Requirements"
@prev "Disclaimer"
                      What is it?

  Blitz2 programmes can get to be enormous once compiled. Part of the problem
is that when you 'include' any of the include files Blitz2 compiles it all and
doesn't just take the bits you want to use.

  Have you seen how many equates there are in the MUI include files. I can
tell you. In MUI version 3.8 there are 823, that's if I didn't miss any.

  Now I don't know about you, but if I'm going to write a small programme that
only needs 20 or so, I don't want to include a document that has 823!!
So.....bring on Blitz2_EquatesV3.

  What this programme does is to scan the file of your choice and list all the
equates it can find in one list. You go through them and double click the ones
you want and they are transferred to another list. Once you are satisfied that
you have all the equates that you need, Blitz2_EquatesV3 saves them to an
ascii file.

  Unfortunately, Blitz2 wont 'include' an ascii file, so you load the file
into Blitz2 and then save it as a Blitz2 file and bingo, you can now 'include'
it in your programme and you only have the equates you want.

  There are a couple of other little bits too, that we'll get into in the
@{"How do I use this thing" link "How do I use this thing?" 0} section.


        @{"    Main    " link "main" 0}
        @{" Disclaimer " link "Disclaimer" 0}
        @{"Requirements" link "Requirements" 0}
@endnode

@node "Requirements" "Requirements"
@next "Installation"
@prev "Introduction"
       What do I need?

  - MUI (Version 3.8)
  - Blitz Basic 2 (Any version)
  - Blitz2:includes (included with this release)
  - DoMethodBBLib by Erwan Fouret (from Aminet on dev/basic)
    (Good for programming Data Types and MUI)
  - mui38dev.lha by Erwan Fouret (from Aminet/dev/mui)
  - an Amiga capable of using MUI

  If I can get Erwan's approval I will include his fabulous bits with this
programme. I haven't spoken to him yet but both these packages are worthwhile,
absolutely MUST HAVE additions to make your Blitz2 programming easier.

   @{"    Main    " link "main" 0}
   @{"Introduction" link "Introduction" 0}
   @{"Installation" link "Installation" 0}
@endnode

@node "Installation" "Installation"
@next "Using"
@prev "Requirements"
                 INSTALLATION

   Most importantly you need to have all those things that were mentioned in
the @{"Requirements" link "Requirements" 0} section.

   If you have all of those installed correctly then all you need to do is
drag this programme and it's icon to wherever you want it to be.

   If you don't already have the Blitz2:includes directory then just copy the
one that I included in this release to your Blitz2: folder.

   There you go......all done!


   @{"    Main    " link "main" 0}
   @{"Requirements" link "Requirements" 0}
   @{"   Using    " link "Using" 0}
@endnode

@node "How do I use this thing?" "How do I use this thing?"
@next "Distribution"
@prev "Installation"
                 HOW TO USE IT

   Nothing could be simpler!

   Just click on it's icon and a window will appear that sports two lists and
nine buttons.....

   @{" Strip Extras " link "Document_0" 0}
   @{"Clear Selected" link "Document_1" 0}
   @{"    Append    " link "Document_2" 0}
   @{"     Save     " link "Document_3" 0}
   @{"    MUIInfo   " link "Document_4" 0}
   @{"     About    " link "Document_5" 0}
   @{"     Print    " link "Document_6" 0}
   @{"    Search    " link "Document_7" 0}
   @{"     Quit     " link "Document_8" 0}

   and two File selectors....
                    
   @{" File to scan  " link "Document_16" 0}
   @{"Save File Ident" link "Document_17" 0}

   as well as two list views.......

   @{"MUI_Blitz2_EquatesV3" link "Document_14" 0}
   @{"  Selected Equates  " link "Document_15" 0}

   Click on the 'File to scan' file selector and a File Requester will appear
that is showing you all the directories that are in the Blitz2:includes
directory.

   Let us assume that you are working on an MUI programme, so you would open
the 'libraries' directory and double click on mui.bb2.

   The top list will fill with equates formatted for Blitz2 and, when it is
finished scanning, a little window will appear and tell you how many were
found. Now, all you have to do is double click on the equates you want -
they're all in alphabetical order - and they will appear in the bottom list.

   Once you have all the equates you need for your programme, click on the
Save File Ident button and select the directory you want to save the file in
then type in the name of your file and hit return. Now click on the Save
button and a file will be saved with that name. I suggest you call it
something like `MUI_Equates.asc'. We'll call this file `the ascii file'.

   Now all you have to do is load the file into Blitz2 and then save it as
MUI_Equates.bb2. We'll call this file the `tokenised file'. DO NOT SAVE IT
OVER THE TOP OF YOUR ORIGINAL SAVE FILE!!! I'll tell you why in a minute.

   When you start to write your programme, make one of your early lines .....

INCLUDE "MUI_Equates.bb2"

   and when you compile it the file will be included and everything will go
beautifully.

   Why shouldn't you save it over the top of your original file????

   Well you have to save it in a tokenised form or Blitz2 won't load it as an
include file but, if you're anything like me, you will probably want to add
some more equates as your programme progresses. If that is the case you simply
load up MUI_Blitz2_Equates again and select the new equates you want, then you
select your original save file (the ascii one) and click on the Append button
and your new equates will be added to that file. Then you just reload the
ascii file into Blitz2 and save the tokenised form over the top of your Blitz2
include file, the tokenised one.

   The other buttons give you the choice of Printing out the equates list,
give you information about MUI and give you information about this programme.
There are also other buttons to Append the equates you have selected to a
previously saved file and one to make the original save file.

   The button marked 'Strip Extras' will remove all comments on each line,
thats the bits after the semi-colon, as well as all spaces. This has the
effect of reducing the size of your source code but some people may frown at
removing comments which are sometimes very helpful. The other button is self
explanatory, it is 'Clear Selected' and it does just that. It clears the list
and memory of it. There is nothing left.

   There is also a 'Search' button there. Clicking on this button will open
another window that has another list, a file selector, a string gadget and a
button. This area works a little differently to the other window.

   This window is for those occasions that you are looking for the value of a
specific equate and you don't know which directory it's in.

   If you look at the top string gadget you will see that the default 'Search
Dir' is Blitz2:includes. If you were to go to the string gadget under the
list, 'Search String', and enter a search string, the instant you hit return
the programme will begin scanning all the directories and files in
Blitz2:includes and, once it finishes it's scan, it will put all the matches
it found into the list. Now you can double click on the ones you want and they
will appear in the bottom list of the first window.

   It is possible to choose just one of the directories, or just one of the
files to search with this window. For instance, let us say you just want the
equate for #TAG_User. Open the file requester, click on the directory
'utility' then on tagitem.bb2. Now go to the bottom string gadget and type in
'#TAG_User' and hit return. The search function will search just that file,
tell you that it has two matches and you have the equate that you wanted in
only a fraction of the time it would take to search the entire Blitz2:includes
directory. If you did you would find 46 matches and it would take around one
and a half minutes.

   By the way, if you have searched for some equate, the search window will
retain all the items in the list until you search for something else. These
equates are retained even if you close the window, so you can open it back up
and select more....if you want to.

   I hope that's all clear.

   Oh, by the way, if you try to put an equate into the bottom list that is
already there, the programme will ask you if you really want to. You can do
that the choice is yours. Also, should you put an equate into the bottom list,
that you really don't want, just double click on it - in the bottom list - and
it will dissapear.

   Enjoy!


     @{"    Main    " link "main" 0}
     @{"Installation" link "Installation" 0}
     @{"Distribution" link "Distribution" 0}
@endnode

@node "Distribution" "Distribution"
@next "Future"
@prev "Using"

               DISTRIBUTION

    I will post this file to Aminet/dev/mui and all future updates, if I get
enough email asking for updates.

    Hey, you can use this programme and spread it round at will, just don't
make any money without getting me some.


     @{" Main " link "main" 0}
     @{"Using " link "Using" 0}
     @{"Future" link "Future" 0}
@endnode

@node "Future" "Future"
@next "Bugs"
@prev "Distribution"
        What's in the future?

    Well there are a couple of things I would like to see.

    The first, and most important, is that I suddenly get very, very rich!

    I think I might like to write a similiar programme to allow you to include
all the `Newtypes' (the Blitz2 equivalent to Structures).

    In this programme........
    (i)    Update the prog to include the HELP feature from MUI.
    (ii)   Upgrade the programme to do the same for 'C' and Assembly
           programmers.
    (iii)  Rewrite the code so that the programme Saves and Appends
           the files as Blitz2, tokenised, files.

    Other than that, If you can think of anything you'd like or you find any
bugs, in this programme, @{"email me now !" link "Author" 0}

  
   @{"    Main    " link "main" 0}
   @{"Distribution" link "Distribution" 0}
   @{"    Bugs    " link "Bugs" 0}
@endnode

@node "Bugs" "Bugs"
@next "Thanks"
@prev "Future"
                Little Crawley Things

    I haven't yet programmed the `Help' feature in. I will get around to
it.....wait for version 3.1.

    I'm not sure that there are any other bugs in there but, if you find one,
contact @{"me" link "Author" 0}.


   @{" Main " link "main" 0}
   @{"Future" link "Future" 0}
   @{"Thanks" link "Thanks" 0}
@endnode

@node "Thanks" "Thanks"
@next "Author"
@prev "Bugs"
   Thanks must go to...........

  ACIDSoftware for Blitz Basic 2
  Stefan Stuntz for MUI
  ALL Amiga users for supporting the machine !
  To Erwan Fouret for all the work he's done. Get his stuff if you want to
  programme MUI from Blitz2.


   @{" Main " link "main" 0}
   @{" Bugs " link "Bugs" 0}
   @{"Author" link "Author" 0}
@endnode

@node "Author" "Author"
@next "main"
@prev "Thanks"

       Who wrote this thing?????

  Gary O'Connor.

  I am basically a lazy man that likes to write programmes that make my life
easier. I call my work `@{b}LAZY BASTARD WARE@{ub}', as opposed to all those other
things - Free Ware, GiftWare etc. etc.

  If you are a lazy bastard like me and like to write similiar things then, if
you can be bothered, get in touch and we'll start a line of `@{b}LAZY BASTARD
WARE@{ub}' programmes and the world will beat a path to our doors.

  Hey, contact me anyway! Surely that's not too much to ask when you think
about all the trouble I'm saving you.
  
  I live in Australia and my email address is.....

   raptor@lisp.com.au

  If you want to reach me through snail mail, maybe you wanna send me heaps of
cash or a postcard or something, my snail mail address is.........

   Gary O'Connor
   `Nullegai'
   Cookamidgera
   NSW Australia 2870.

 @{"Back to the index" link "main" 0}
@endnode

@node "Document_0" "Document_0"
@next "Document_1"
@prev "Author"


   @{i}@{fg shine}Strip Extras@{ui}@{fg text}

   Once you have loaded some equates into the lists, this button gives you the
oportunity to remove all comments and spaces. This action applies to both
lists.

   This action has the result of making your source code much more tidy, and
smaller, but some people think that you should never remove comments. This
button gives you the choice.
@endnode

@node "Document_1" "Document_1"

   @{i}@{fg shine}Clear Selected@{ui}@{fg text}

   This button will clear all selected equates from the bottom list.

   When that happens, all memory of your selections is lost as well.
@endnode

@node "Document_2" "Document_2"


   @{i}@{fg shine}Append@{ui}@{fg text}

   Once you have selected your equates you have the option of saving them to a
new file or appending them to one you have already saved.

   If you're like me, you will never select all the equates you need the first
time, so this is the best option. Just append it to the one you've already
saved.
@endnode

@node "Document_3" "Document_3"


   @{i}@{fg shine}Save@{ui}@{fg text}

   This is, of course, the button to use whaen you are ready to save your
selected equates to an include file.

   If you try to use this button before you enter a save file name into the
@{"Save File Ident" link "Document_10" 0} string gadget, you will be told to enter a save name.
@endnode

@node "Document_4" "Document_4"


   @{i}@{fg shine}MUIInfo@{ui}@{fg text}

   This button will give you all the information about MUI.

   Are you a registered user????

   If you're not you should be! Press this button to find out how.
@endnode

@node "Document_5" "Document_5"


   @{i}@{fg shine}About@{ui}@{fg text}

   This button puts up another screen that tells you all about @{"me" link "Author" 0}. Take notice
of my email address and send me your thoughts on the programme. That's not too
much to ask.....surely.
@endnode

@node "Document_6" "Document_6"


   @{i}@{fg shine}Print@{ui}@{fg text}

   Pressing this button will print out the list of equates that you have
selected into the bottom list.
@endnode

@node "Document_7" "Document_7"


   @{i}@{fg shine}Search@{ui}@{fg text}

   Clicking on this button opens another screen that has one button......

   @{"Return" link "Document_9" 0}

   and one file selector.....

   @{"Search Dir" link "Document_10" 0}

   as well as two string gadgets.......

   @{"Searching" link "Document_11" 0}
   @{"Search String" link "Document_12" 0}

   and one......

   @{"List view" link "Document_13" 0}

   This window allows you to search for just one equate, or any number of
equates, that contain the string you enter into the @{"Search String" link "Document_14" 0} string
gadget.
@endnode

@node "Document_8" "Document_8"


   @{i}@{fg shine}Quit@{ui}@{fg text}

   Well.....I think this is self explanatory.
@endnode

@node "Document_9" "Document_9"


   @{i}@{fg shine}Return@{ui}@{fg text}

   Clicking this button will take you back to the first window.

   This action does not remove any equates you found during your search, so
you can go back and everything will still be there.

   All search results will be cleared the next time you search for another
equate.
@endnode

@node "Document_10" "Document_10"


   @{i}@{fg shine}Search Dir@{ui}@{fg text}

   This is a bit of a misnomer. You can select a directory and all it's
directories and files will be searched but, you can also select one of the
files and it will be searched too.

   In other words, should you be looking for let's say #TAG_User and you know
that it's in the include file "Blitz2:includes/utility/tagitem.bb2" then you
can enter that in the Search Dir string gadget and just that file will be
searched.

   It is much quicker if you can narrow your search parameters like that
because, once you start the programme searching, you have to wait until it's
finished. On my computer, an A1200 with a 68030, 68882, 40mhz Cobra
accelerator and 16 megs of fast ram, it takes about 1min 30secs to search the
entire "Blitz2:includes" directory.

   When you open the Search window, "Blitz2:includes" will be the default
search dir but you can change that and select your own by clicking on the
little pop gadget and using the file selector. Just select a directory or a
file and that will be searched.

   The programme will not start searching until you enter a @{"Search String" link "Document_11" 0} and
hit return.
@endnode

@node "Document_11" "Return"
@prev "Document_10"


   @{i}@{fg shine}Searching@{ui}@{fg text}

   This string gadget just shows you the current file that is being searched.
@endnode

@node "Document_12" "Search Dir"
@prev "Document_11"


   @{i}@{fg shine}Search String@{ui}@{fg text}

   This is where you enter the string you want to search for.

   Once you have selected a @{"Search Dir" link "Document_10" 0}, enter your string here and, when you
press Return, the programme will begin the search.

   You have to enter this string manually and the action of hitting Return is
the trigger to make the search function begin.
@endnode

@node "Document_13" "Searching"
@prev "Document_12"


   Search List View

   Once the search is completed and, given that some matching equates were
found, the equates are entered into the list view just double click on any
that you might want and they will be entered into the lower list view of the
main window.

   Closing the search window will not remove any equates from this list view.
They will still be there if you open the Search window again.

   This list view will only be cleared the next time you search for an equate.
@endnode

@node "Document_14" "Search String"
@prev "Document_13"


   @{i}@{fg shine}MUI_Blitz2_EquatesV3@{ui}@{fg text}

   This list will display all the equates that can be found in your selected
include file.

   Once they are there just double click on the ones you want and they will be
copied into the @{"Selected Equates" link "Document_15" 0} list.
@endnode

@node "Document_15" "Selected Equates"
@prev "Document_14"


   @{i}@{fg shine}Selected Equates@{ui}@{fg text}

   As you double click on all the equates that you wanted in the
@{"MUI_Blitz2_EquatesV3" link "Document_14" 0} list, they are copied into this list so that you can save
them out to your Blitz2 include file.

   As you check through them, if you find any here that you dont want anymore,
just double click on them and they will be removed.

   Now you can use the other features of the programme to prepare the equates
and then you can @{"Save" link "Document_3" 0} them or @{"Append" link "Document_2" 0} them to a previously saved file.
@endnode

@node "Document_16" "File to scan"
@prev "Document_15"


   @{i}@{fg shine}File To Scan@{ui}@{fg text}

   Choosing a file here is the trigger that begins the scan. As soon as you
select a file with the file selector or type into the string gadget and hit
Return the scan begins.

   When it is completed the upper list will contain all the equates, in Blitz2
format that were found in that include file.
@endnode

@node "Document_17" "Save File Ident"
@prev "Document_16"


   @{i}@{fg shine}Save File Ident@{ui}@{fg text}

   This is the name of the file that you want to @{"Save" link "Document_3" 0} or @{"Append" link "Document_2" 0} to.

   Should you have forgotten to enter a name here, the programme will let you
neither Save nor Append.
@endnode

