Contents of the READ.ME file
** Exploding Boxes **
*** Files that should be in this Archive:
BOXES.PRG = A demo of the exploding boxes
MARVELUS.LIB = the actual library
READ.ME = the file you are now reading
** To see thes boxes in action;
Note: You must always link in the EXTEND.LIB, as many of the items
used by these functions are in the EXTEND.LIB.
While some people consider things like an exploding box in a Clipper
application frivolus, I personally like them. After all, that's all
Before I get started, a word of caution. These exploding boxes will
only be effective on COLOR monitors. I've tried them on a monochrome
system, and to be honest, the word "blah" came to mind! Oh yea, and
this can only be used with Summer '87, but then why would anyone still
be using anything else.
As with any other library you use, this will need to be linked in to
your application if you are to use any of these functions.
I have tried to link with all three (3) of the more popular linkers,
(Tlink,Link,Plink86) and they will all work. Syntax as follows:
Tlink yourfile,,,clipper extend marvelus
Link yourfile,,,clipper extend marvelus
Plink86 fi yourfile Lib clipper,extend,marvelus
The main object of this excersize is for the exploding boxes, however,
also included on this library are a couple of other things that I have
been playing with. If you look in BOXES.PRG you will see not only
EXPLODE(), but also CLRSCR(), LOGO() and CNTR().
** EXPLODE **
t = the top line of the box (expN)
l = left column (expN)
b = bottom line (expN)
r = right column (expN)
s = the explosion SPEED (1 instant, 2 fast, 60 sloooowww) (expN)
"color" = the color you want the box to be ie., "+w/b" (expC)
type = a number to designate the box type (expN) explained
BOX TYPES: TYPE 1 = TYPE 2 =
TYPE 3 = TYPE 4 =
TYPE 5 = TYPE 6 =
TYPE 7 =
I'm sure that this is NOT all of the different box combinations that
are available, but it was enough to satisfy me.
The purpose of all this is to allow the programmer a SIMPLE method of
displaying a box on the screen WITHOUT all of the normal hassles of the
Clipper BOX command, and yet offer something more appealing than the
@n,n TO n,n or @n,n TO n,n DOUBLE.
NOTE: The speed will vary, based on the type of hardware being used.
If you use an XT class machine, the speeds will need to be faster than
those used on an AT or 386 class machine. If you want the simplicity
of EXPLODE() but DON'T want the actual exploding effect, just enter the
number 1 in the speed slot and the effect will be INSTANT BOX.
** CLRSCR **
s = the speed you want the screen cleared (expN)
This will clear the screen in a manor simular to the reverse of the
exploding box. It clears the screen in "n/n", but will reset your
screen colors that were in effect BEFORE you issued CLRSCR()
The speed is optional, and is also affected by hardware type.
** CNTR **
(expC) = the charactor string to be centered
(expN) = a number representing the line the charactor string
is to be centered on.
[(expN)] = the length of the line to be centered on (80 or 132 or ..)
optional and will default to 80 if not specified
Example: CNTR("Good morning, Jim",01)
This will center the charactor string on line 1 on the screen. This uses
the @say command and DOES NOT pad the string with leading spaces, unless
you want them there. So if you are like me, and like to display your
headings in a reversed type image, CNTR() will work GREAT.
Example 2: SETCOLOR("+gr/r")
CNTR(" MAIN MENU ",02)
If you write your reports using @say, this will be very helpful since you
will even be able to specify the page width.
Example 3: CNTR("MONTHLY REPORT",2,132)
** LOGO() **
Is that gawd awful logo that you see when you fire off or exit BOXES.
If you find any of these things useful or otherwise handy, just drop me a
line and let me know. Who knows, I might even be encouraged to try something
a little more challangeing next time.
This library has been released into the public domain and is not to be sold.
The author is not to be held responsible for ANYTHING (my wifes input).
** Happy Clippering
16641 Mt. Darwin Circle
Fountain Valley, Ca. 92708