.\" This macro package has been constructed to draw boxes.  It works
.\" with all standard Mark Williams COHERENT macro packages.
.\"
.\" Copyright (c) 1991 Mark Williams Company.
.\"
.\" set a thin line
.de LT
.co
.1 setlinewidth
.co
..
.\" set a wide line
.de LW
.co
1 setlinewidth
.co
..
.\" Enclose \\$1 within a little box
.de BX
.LT
\\$1\h'-(\w'\\$1'+1p)'\v'2p'\L'-\\n(.v'\l'(\w'\\$1'+2p)'\L'\\n(.v'\l'-(\w'\\$1'+2p)'\v'-2p'\h'-\w'\\$1''
..
.\" initiate processing of stacked boxes
.\".de S1
.\".B1
.\".it 1 SP
.\"..
.\".\" end processing of stacked boxes
.\".de S2
.\".it
.\".KE
.\".\" following line hangs the printer
.\".\" \v'-\\n(.v'\h'-0.125i'\L'-\\n(dn'\l'\\n(BWu+0.25i'\L'\\n(dn'
.\"\h'-0.125i'\L'-\\n(dn'\l'\\n(dlu+0.25i'\L'\\n(dn'
.\".nr J \\nJ-\\n(IN
.\".in \\nJu
.\".ft R
.\".fi
.\"..
.\".\" process stacked boxes
.\".de SP
.\".sp \\n(pDu
.\"\\\\h'-0.125i'\\\\l'\\\\n(dlu+0.25i'
.\".sp \\n(pDu
.\".it 1 SP
.\"..
.\" Begin diverting text for enclosing within a box
.de B1
.nr J \\nJ+\\n(IN
.DM
.ll \\n(PWu
..
.\" Print diverted text and enclose it within a box
.de B2
.br
.di
.if \\n(dn>=\\n(.t .bp
.LW
.LB (\\n(.o+\\n(IN)/10 (\\n(.p-\\n(.h)/10 (\\n(.l-\\n(IN)/10 -\\n(dn/10
.sp \\n(pDu
.nf
.Kd
.rm Kd
.ev
.nr J \\nJ-\\n(IN
.in \\nJu
.ft R
..
.de SL
.SB (\\n(.o+\\n(IN)/10 (\\n(.p-(\\n(.h-7p))/10 (\\n(.l-\\n(IN)/10 -(\\n(.v/10)
.br
..
.de S1
.B1
..
.de S2
.br
.di
.if \\n(dn>=\\n(.t .bp
.SB (\\n(.o+\\n(IN)/10 (\\n(.p-\\n(.h)/10 (\\n(.l-\\n(IN)/10 -\\n(dn/10
.sp \\n(pDu
.nf
.Kd
.rm Kd
.ev
.nr J \\nJ-\\n(IN
.in \\nJu
.ft R
..
.\" Draw a line box.  Here follows some more truly ugly code ...
.\" args:  $1=X position; $2=Y position; $3=box's width; $4=box's height
.de LB
.co \\$1 \\$2 
moveto
.co
.co \\$3 0 
rlineto
.co
.co 0 \\$4 
rlineto
.co
.co -\\$3 0 
rlineto
closepath
stroke
.co
..
.\" Draw a shaded box.  Here follows some truly ugly code ...
.\" args:  $1/$2=X/Y position of box; $3=box's width; $4=box's height
.de SB
.co \\$1 \\$2 
moveto
.co
.co \\$3 0 
rlineto
.co
.co 0 \\$4 
rlineto
.co
.co -\\$3 0 
rlineto
closepath
.95 setgray
fill
0 setgray
.co
..
