Dec 212017
Menu generation system for creating FoxBase menus. | |||
---|---|---|---|
File Name | File Size | Zip Size | Zip Type |
FBOX.FOX | 693 | 693 | stored |
FX_MN_GN.FOX | 2685 | 2685 | stored |
ORDERFRM.DOC | 1575 | 484 | deflated |
POPBAR.FOX | 2925 | 2925 | stored |
POPMENU.FOX | 1185 | 1185 | stored |
PROMPT.FOX | 2162 | 2162 | stored |
README.DOC | 7143 | 2531 | deflated |
Download File FOXMENU.ZIP Here
Contents of the README.DOC file
Fred C. Wampler
Custom Programming Applications
Rt 3 Box 272
Church Hill TN 37642
(615)247-6674
Copyright (c) 1988 CPA
All Rights Reserved
License
This version of FX_MN_GN is being distributed as
"shareware".
Non-registered users of this software are granted a limited
license to make an evaluation copy for trial use on a
private, non-commercial basis, to determine whether FX_MN_GN
is suitable for your needs. At the end of this trial period,
you should either register your copy or quit using it [wink].
If you regularly use this program to build menus, then you
should pay for your copy. That way I'll be encouraged to
provide additional shareware products [wink].
Disclaimer
Use of this program acknowledges this disclaimer of
warranty: "This program is supplied as-is. CPA disclaims
all warranties, expressed or implied, including, without
limitation, the warranties of merchantability and of fitness
of this program for any purpose. CPA assumes no liability
for damages direct or consequential, which may result from
the use of this program."
Trademark
FoxBASE+ is a registered trademark of Fox Software
-------------------------------------------------------------------
FX_MN_GN.FOX
This is the main menu for calling each of the following programs.
FoxBASE+ ver 2.0 or higher is required to use these programs.
Usage: DO FX_MN_GN
-------------------------------------------------------------------
(1) FBOX.FOX (any version of FoxBASE+)
Utility that draws single, or double line boxes with a
centered header. Called by the other programs or from
the command line.
Example:
DO fbox with 3,50,10,75,2,[help screen]
3 = row 3 First line of box just beneath the header
50 = col 50 Upper left col just beneath the header
10 = row 10 Bottom line of box
75 = col 75 Bottom right col of box
2 = double lined 1 = singled lined 0 = clear box
[help screen] will be centered and in upper case on row 2
Top of the box will be on row 1
-------------------------------------------------------------------
(2) PROMPT.FOX (Requires ver 2.0 or higher of FoxBASE+)
Utility that generates code in a file TPROMPT.POP for a simulated
pop-up menu. The pop-up box can be made wider and longer than
necessary and PROMPT.FOX will adjust to an appropriate width and
length. FBOX.FOX is called by this program for the box handling.
Example:
DO PROMPT WITH 3,50,10,60,2,[test prompt],[pcho]
A screen is presented and asks for prompts and messages to be displayed.
The following code was generated based on screen input.
* TPROMPT.POP
* This code generated by above procedure (prompt.fox)
* Substitute .t. below to restore screen.
r0E20182E = .F. &&.t. saves and restores screen
IF r0E20182E
SAVE SCREEN TO x0E201849
ENDIF
DO fbox with 3,50,7,65,2, ' TEST PROMPT'
@ 3+1,50+2 PROMPT 'Next ' MESSAGE [This displays the next screen.]
@ 3+2,50+2 PROMPT 'Previous ' MESSAGE ;
[This displays the previous screen. Notice how the line wraps.]
@ 3+3,50+2 PROMPT 'Quit ' MESSAGE [Exit module.]
pcho=0
?? SYS(2002) &&turns cursor off (ver 2.1 and higher)
MENU TO pcho
?? SYS(2002,1)
@ 24,0
DO CASE
CASE READKEY()<>15
* Escape key pressed.
CASE pcho= 1
* Next
CASE pcho= 2
* Previous
CASE pcho= 3
* Quit
ENDCASE
IF r0E20182E
RESTORE SCREEN FROM x0E201849
RELEASE x0E201849
ENDIF
-------------------------------------------------------------------
(3) POPBAR.FOX (Requires ver 2.1 or higher of FoxBASE+)
Generates code for a complete pull-down menuing system and
stores it in the file TPOPBAR.POP. Can be called by the file
FX_MN_GN for prompting or by command line. Follow on-line
instructions for entering bar items and pull-down items. The
following example took only a few seconds to generate.
Example: (command line) && Note the protection of KEY words
DO popbar with [account]
RELEASE xaccount
DIMEN xaccount(5,2)
xaccount(1,1)= 'Reports'
xaccount(1,2)= 'Reporting Module.'
xaccount(2,1)= 'Payable'
xaccount(2,2)= 'Accounts payable'
xaccount(3,1)= 'Receivable'
xaccount(3,2)= 'Accounts receivable module'
xaccount(4,1)= 'Payroll'
xaccount(4,2)= ''
xaccount(5,1)= 'Quit'
xaccount(5,2)= ''
RELEASE mreports
DIMEN mreports(11)
mreports(1)= 'report 1'
mreports(2)= 'report 2'
mreports(3)= 'spare 1'
RELEASE mpayable
DIMEN mpayable(11)
mpayable(1)= 'Payable 1'
mpayable(2)= 'Pay 2'
mpayable(3)= 'Pay 3'
RELEASE mreceivabl
DIMEN mreceivabl(11)
mreceivabl(1)= 'Rec 1'
mreceivabl(2)= 'Rec 2'
mreceivabl(3)= 'Spare rec 3'
RELEASE mpayroll
DIMEN mpayroll(11)
mpayroll(1)= 'Pay 1'
mpayroll(2)= 'Pay 2'
RELEASE mquit
DIMEN mquit(11)
mquit(1)= 'Quit'
MENU BAR xaccount, 5
MENU 1, mreports, 3
MENU 2, mpayable, 3
MENU 3, mreceivabl, 3
MENU 4, mpayroll, 2
MENU 5, mquit, 1
STORE 1 TO row,col
DO WHILE (.t.)
READ MENU BAR TO row,col SAVE
DO CASE
CASE row = 1 .AND. col = 1
* mreports, report 1
CASE row = 1 .AND. col = 2
* mreports, report 2
CASE row = 1 .AND. col = 3
* mreports, spare 1
CASE row = 2 .AND. col = 1
* mpayable, Payable 1
CASE row = 2 .AND. col = 2
* mpayable, Pay 2
CASE row = 2 .AND. col = 3
* mpayable, Pay 3
CASE row = 3 .AND. col = 1
* mreceivabl, Rec 1
CASE row = 3 .AND. col = 2
* mreceivabl, Rec 2
CASE row = 3 .AND. col = 3
* mreceivabl, Spare rec 3
CASE row = 4 .AND. col = 1
* mpayroll, Pay 1
CASE row = 4 .AND. col = 2
* mpayroll, Pay 2
CASE row = 5 .AND. col = 1
* mquit, Quit
CASE READKEY()<>15
EXIT
ENDCASE
ENDDO
-------------------------------------------------------------------
(4) POPMENU.FOX (Requires ver 2.1 or higher of FoxBASE+)
Generates code necessary for a pop-up menu and stores it
in the file tpopmenu.pop.
Example:
DO popmenu with 50,[test],[temp],[pcho]
50 = col 50 (row 3 by default)
test = pop-up header (displayed at top of menu)
temp = name of array holding prompts
pcho = memory variable for CASE evaluations
RELEASE mtemp
DIMEN mtemp(3)
mtemp(1)= 'next'
mtemp(2)= 'previous'
mtemp(3)= 'quit'
@ 3, 50 MENU mtemp,3,3 TITLE 'TEST'
pcho=0
@ 24,0 SAY SPACE(13)+'Highlight AND press Enter TO ACCEPT - OTHERWISE Esc'
READ MENU TO pcho
@ 24,0
DO CASE
CASE pcho= 1
* next
CASE pcho= 2
* previous
CASE pcho= 3
* quit
ENDCASE
December 21, 2017
Add comments