home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 5 / 05.iso / a / a087 / 5.ddi / PAINTER.SP_ / PAINTER.bin
Encoding:
Text File  |  1994-02-02  |  16.8 KB  |  658 lines

  1. *       *********************************************************
  2. *       *                                                         
  3. *       * 01/27/94             PAINTER.SPR               10:36:44 
  4. *       *                                                         
  5. *       *********************************************************
  6. *       *                                                         
  7. *       * Author's Name                                           
  8. *       *                                                         
  9. *       * Copyright (c) 1994 Company Name                         
  10. *       * Address                                                 
  11. *       * City,     Zip                                           
  12. *       *                                                         
  13. *       * Description:                                            
  14. *       * This program was automatically generated by GENSCRN.    
  15. *       *                                                         
  16. *       *********************************************************
  17.  
  18.  
  19. #REGION 0
  20. REGIONAL m.currarea, m.talkstat, m.compstat
  21.  
  22. IF SET("TALK") = "ON"
  23.     SET TALK OFF
  24.     m.talkstat = "ON"
  25. ELSE
  26.     m.talkstat = "OFF"
  27. ENDIF
  28. m.compstat = SET("COMPATIBLE")
  29. SET COMPATIBLE FOXPLUS
  30.  
  31. m.rborder = SET("READBORDER")
  32. SET READBORDER ON
  33.  
  34. m.currarea = SELECT()
  35.  
  36.  
  37. *       *********************************************************
  38. *       *                                                         
  39. *       *     S8203958/Windows Databases, Indexes, Relations      
  40. *       *                                                         
  41. *       *********************************************************
  42. *
  43.  
  44. IF USED("painter")
  45.     SELECT painter
  46.     SET ORDER TO TAG "_qn10mqr58"
  47. ELSE
  48.     SELECT 0
  49.     USE (LOCFILE("painter.dbf","DBF","Where is painter?"));
  50.         AGAIN ALIAS painter ;
  51.         ORDER TAG "_qn10mqr58"
  52. ENDIF
  53.  
  54.  
  55. *       *********************************************************
  56. *       *                                                         
  57. *       *               Windows Window definitions                
  58. *       *                                                         
  59. *       *********************************************************
  60. *
  61.  
  62. IF NOT WEXIST("_qn10mquf6")
  63.     DEFINE WINDOW _qn10mquf6 ;
  64.         AT  0.000, 0.000  ;
  65.         SIZE 18.501,62.500 ;
  66.         TITLE "Painter" ;
  67.         FONT "ms sans serif", 10 ;
  68.         STYLE "B" ;
  69.         FLOAT ;
  70.         CLOSE ;
  71.         MINIMIZE ;
  72.         COLOR RGB(,,,192,192,192)
  73.     MOVE WINDOW _qn10mquf6 CENTER
  74. ENDIF
  75.  
  76.  
  77. *       *********************************************************
  78. *       *                                                         
  79. *       *         PAINTER/Windows Setup Code - SECTION 2          
  80. *       *                                                         
  81. *       *********************************************************
  82. *
  83.  
  84. #REGION 1
  85.  
  86.  
  87. #DEFINE C_DBFEMPTY    'Database is empty, add a record?'
  88. #DEFINE C_EDITS            'Please finish your edits.'
  89. #DEFINE C_TOPFILE        'Top of file.'
  90. #DEFINE C_ENDFILE        'End of file.'
  91. #DEFINE C_BRTITLE        'Locate Record'
  92. #DEFINE C_NOLOCK        'Sorry, could not lock record -- try again later.'
  93. #DEFINE C_ECANCEL        'Edits Canceled.'
  94. #DEFINE C_DELREC        'Delete selected record?'
  95. #DEFINE C_NOFEAT        'Feature not available yet.'
  96. #DEFINE C_NOWIZ            'Wizard application is not available.'
  97. #DEFINE C_MAKEREPO    'Creating report with ReportWizard.'
  98. #DEFINE C_NOREPO        'Could not create report.'
  99. #DEFINE C_DELNOTE         'Deleting records...'
  100.  
  101. MOVE WINDOW '_qn10mquf6' CENTER
  102. PRIVATE isediting,isadding,wzolddelete,wzolderror,wzalias,tempcurs
  103. m.isediting=.F.
  104. m.isadding=.F.
  105. m.wzolddelete=SET('DELETE')
  106. SET DELETED ON
  107. m.wzalias=SELECT()
  108. m.tempcurs=SYS(2015)  &&used if General field
  109.  
  110. IF RECCOUNT()=0
  111.   IF fox_alert(C_DBFEMPTY)
  112.     APPEND BLANK
  113.   ENDIF
  114. ENDIF
  115. GOTO TOP
  116. SCATTER MEMVAR MEMO
  117. m.wzolderror=ON('error')
  118. ON ERROR DO wizerrorhandler
  119.  
  120.  
  121. *       *********************************************************
  122. *       *                                                         
  123. *       *              PAINTER/Windows Screen Layout              
  124. *       *                                                         
  125. *       *********************************************************
  126. *
  127.  
  128. #REGION 1
  129. IF WVISIBLE("_qn10mquf6")
  130.     ACTIVATE WINDOW _qn10mquf6 SAME
  131. ELSE
  132.     ACTIVATE WINDOW _qn10mquf6 NOSHOW
  133. ENDIF
  134. @ 0.313,3.000 SAY "Painter"  ;
  135.     FONT "MS Sans Serif", 14 ;
  136.     STYLE "BT"
  137. @ 2.125,0.000 TO 2.125,62.500 ;
  138.     PEN 4, 8 ;
  139.     STYLE "1"
  140. @ 0.813,48.000 SAY "Date:"  ;
  141.     FONT "MS Sans Serif", 8 ;
  142.     STYLE "BT"
  143. @ 0.813,52.750 SAY date() ;
  144.     SIZE 1.000,11.200 ;
  145.     FONT "MS Sans Serif", 8
  146. @ 3.063,3.250 SAY "Lastname:" ;
  147.     SIZE 1.000,10.500 ;
  148.     FONT "MS Sans Serif", 8 ;
  149.     STYLE "BT" ;
  150.     PICTURE "@J" ;
  151.     COLOR RGB(,,,255,255,255)
  152. @ 3.250,13.500 TO 4.125,57.875 ;
  153.     PATTERN 1 ;
  154.     PEN 1, 8 ;
  155.     COLOR RGB(128,128,128,128,128,128)
  156. @ 3.063,13.250 GET m.lastname ;
  157.     SIZE 1.000,70.000 ;
  158.     DEFAULT " " ;
  159.     FONT "MS Sans Serif", 8 ;
  160.     PICTURE "@K XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ;
  161.     WHEN isediting ;
  162.     COLOR ,RGB(,,,255,255,255)
  163. @ 4.563,3.250 SAY "Firstname:" ;
  164.     SIZE 1.000,10.500 ;
  165.     FONT "MS Sans Serif", 8 ;
  166.     STYLE "BT" ;
  167.     PICTURE "@J" ;
  168.     COLOR RGB(,,,255,255,255)
  169. @ 4.750,13.500 TO 5.625,57.875 ;
  170.     PATTERN 1 ;
  171.     PEN 1, 8 ;
  172.     COLOR RGB(128,128,128,128,128,128)
  173. @ 4.563,13.250 GET m.firstname ;
  174.     SIZE 1.000,70.000 ;
  175.     DEFAULT " " ;
  176.     FONT "MS Sans Serif", 8 ;
  177.     PICTURE "@K XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ;
  178.     WHEN isediting ;
  179.     COLOR ,RGB(,,,255,255,255)
  180. @ 6.063,3.250 SAY "Nationalit:" ;
  181.     SIZE 1.000,10.500 ;
  182.     FONT "MS Sans Serif", 8 ;
  183.     STYLE "BT" ;
  184.     PICTURE "@J" ;
  185.     COLOR RGB(,,,255,255,255)
  186. @ 6.250,13.500 TO 7.125,57.875 ;
  187.     PATTERN 1 ;
  188.     PEN 1, 8 ;
  189.     COLOR RGB(128,128,128,128,128,128)
  190. @ 6.063,13.250 GET m.nationalit ;
  191.     SIZE 1.000,70.000 ;
  192.     DEFAULT " " ;
  193.     FONT "MS Sans Serif", 8 ;
  194.     PICTURE "@K XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" ;
  195.     WHEN isediting ;
  196.     COLOR ,RGB(,,,255,255,255)
  197. @ 7.563,3.250 SAY "Birthdate:" ;
  198.     SIZE 1.000,10.500 ;
  199.     FONT "MS Sans Serif", 8 ;
  200.     STYLE "BT" ;
  201.     PICTURE "@J" ;
  202.     COLOR RGB(,,,255,255,255)
  203. @ 7.750,13.500 TO 8.625,19.875 ;
  204.     PATTERN 1 ;
  205.     PEN 1, 8 ;
  206.     COLOR RGB(128,128,128,128,128,128)
  207. @ 7.563,13.250 GET m.birthdate ;
  208.     SIZE 1.000,9.200 ;
  209.     DEFAULT " " ;
  210.     FONT "MS Sans Serif", 8 ;
  211.     PICTURE "@K" ;
  212.     WHEN isediting ;
  213.     COLOR ,RGB(,,,255,255,255)
  214. @ 9.063,3.250 SAY "Datedeath:" ;
  215.     SIZE 1.000,10.500 ;
  216.     FONT "MS Sans Serif", 8 ;
  217.     STYLE "BT" ;
  218.     PICTURE "@J" ;
  219.     COLOR RGB(,,,255,255,255)
  220. @ 9.250,13.500 TO 10.125,19.875 ;
  221.     PATTERN 1 ;
  222.     PEN 1, 8 ;
  223.     COLOR RGB(128,128,128,128,128,128)
  224. @ 9.063,13.250 GET m.datedeath ;
  225.     SIZE 1.000,9.200 ;
  226.     DEFAULT " " ;
  227.     FONT "MS Sans Serif", 8 ;
  228.     PICTURE "@K" ;
  229.     WHEN isediting ;
  230.     COLOR ,RGB(,,,255,255,255)
  231. @ 10.563,3.250 SAY "Note:" ;
  232.     SIZE 1.000,10.500 ;
  233.     FONT "MS Sans Serif", 8 ;
  234.     STYLE "BT" ;
  235.     PICTURE "@J" ;
  236.     COLOR RGB(,,,255,255,255)
  237. @ 10.750,13.500 TO 14.875,48.125 ;
  238.     PATTERN 1 ;
  239.     PEN 1, 8 ;
  240.     COLOR RGB(128,128,128,128,128,128)
  241. @ 10.563,13.250 EDIT m.note ;
  242.     SIZE 5.000,55.000,0.000 ;
  243.     PICTURE "@K" ;
  244.     DEFAULT " " ;
  245.     FONT "MS Sans Serif", 8 ;
  246.     SCROLL ;
  247.     WHEN isediting ;
  248.     COLOR ,RGB(,,,255,255,255)
  249. @ 15.313,0.000 TO 15.313,62.500 ;
  250.     PEN 4, 8 ;
  251.     STYLE "1"
  252. @ 16.313,1.500 GET m.top_btn ;
  253.     PICTURE "@*HN \<Top" ;
  254.     SIZE 1.769,7.833,0.667 ;
  255.     DEFAULT 1 ;
  256.     FONT "MS Sans Serif", 8 ;
  257.     STYLE "B" ;
  258.     VALID btn_val('TOP') ;
  259.     MESSAGE 'Go to first record.'
  260. @ 16.313,7.500 GET m.prev_btn ;
  261.     PICTURE "@*HN \<Prev" ;
  262.     SIZE 1.769,7.833,0.667 ;
  263.     DEFAULT 1 ;
  264.     FONT "MS Sans Serif", 8 ;
  265.     STYLE "B" ;
  266.     VALID btn_val('PREV') ;
  267.     MESSAGE 'Go to previous record.'
  268. @ 16.313,13.500 GET m.next_btn ;
  269.     PICTURE "@*HN \<Next" ;
  270.     SIZE 1.769,7.833,0.667 ;
  271.     DEFAULT 1 ;
  272.     FONT "MS Sans Serif", 8 ;
  273.     STYLE "B" ;
  274.     VALID btn_val('NEXT') ;
  275.     MESSAGE 'Go to next record.'
  276. @ 16.313,19.500 GET m.end_btn ;
  277.     PICTURE "@*HN \<End" ;
  278.     SIZE 1.769,7.833,0.667 ;
  279.     DEFAULT 1 ;
  280.     FONT "MS Sans Serif", 8 ;
  281.     STYLE "B" ;
  282.     VALID btn_val('END') ;
  283.     MESSAGE 'Go to last record.'
  284. @ 16.313,25.500 GET m.loc_btn ;
  285.     PICTURE "@*HN \<Locate" ;
  286.     SIZE 1.769,7.833,0.667 ;
  287.     DEFAULT 1 ;
  288.     FONT "MS Sans Serif", 8 ;
  289.     STYLE "B" ;
  290.     VALID btn_val('LOCATE') ;
  291.     MESSAGE 'Locate a record.'
  292. @ 16.313,31.500 GET m.add_btn ;
  293.     PICTURE "@*HN \<Add" ;
  294.     SIZE 1.769,7.833,0.667 ;
  295.     DEFAULT 1 ;
  296.     FONT "MS Sans Serif", 8 ;
  297.     STYLE "B" ;
  298.     VALID btn_val('ADD') ;
  299.     MESSAGE 'Add a new record.'
  300. @ 16.313,37.500 GET m.edit_btn ;
  301.     PICTURE "@*HN Ed\<it" ;
  302.     SIZE 1.769,7.833,0.667 ;
  303.     DEFAULT 1 ;
  304.     FONT "MS Sans Serif", 8 ;
  305.     STYLE "B" ;
  306.     VALID btn_val('EDIT') ;
  307.     MESSAGE 'Edit current record.'
  308. @ 16.313,43.500 GET m.del_btn ;
  309.     PICTURE "@*HN \<Delete" ;
  310.     SIZE 1.769,7.833,0.667 ;
  311.     DEFAULT 1 ;
  312.     FONT "MS Sans Serif", 8 ;
  313.     STYLE "B" ;
  314.     VALID btn_val('DELETE') ;
  315.     MESSAGE 'Delete current record.'
  316. @ 16.313,49.500 GET m.prnt_btn ;
  317.     PICTURE "@*HN P\<rint" ;
  318.     SIZE 1.769,7.833,0.667 ;
  319.     DEFAULT 1 ;
  320.     FONT "MS Sans Serif", 8 ;
  321.     STYLE "B" ;
  322.     VALID btn_val('PRINT') ;
  323.     MESSAGE 'Print report.'
  324. @ 16.313,55.500 GET m.exit_btn ;
  325.     PICTURE "@*HN \<Close" ;
  326.     SIZE 1.769,7.667,0.667 ;
  327.     DEFAULT 1 ;
  328.     FONT "MS Sans Serif", 8 ;
  329.     STYLE "B" ;
  330.     VALID btn_val('EXIT') ;
  331.     MESSAGE 'Close screen.'
  332.  
  333. IF NOT WVISIBLE("_qn10mquf6")
  334.     ACTIVATE WINDOW _qn10mquf6
  335. ENDIF
  336.  
  337.  
  338. *       *********************************************************
  339. *       *                                                         
  340. *       *    WindowsREAD contains clauses from SCREEN s8203958    
  341. *       *                                                         
  342. *       *********************************************************
  343. *
  344.  
  345. READ CYCLE ;
  346.     ACTIVATE READACT() ;
  347.     DEACTIVATE READDEAC() ;
  348.     NOLOCK
  349.  
  350. RELEASE WINDOW _qn10mquf6
  351.  
  352. *       *********************************************************
  353. *       *                                                         
  354. *       *                Windows Closing Databases                
  355. *       *                                                         
  356. *       *********************************************************
  357. *
  358.  
  359. IF USED("painter")
  360.     SELECT painter
  361.     USE
  362. ENDIF
  363.  
  364. SELECT (m.currarea)
  365.  
  366.  
  367. #REGION 0
  368.  
  369. SET READBORDER &rborder
  370.  
  371. IF m.talkstat = "ON"
  372.     SET TALK ON
  373. ENDIF
  374. IF m.compstat = "ON"
  375.     SET COMPATIBLE ON
  376. ENDIF
  377.  
  378.  
  379. *       *********************************************************
  380. *       *                                                         
  381. *       *              PAINTER/Windows Cleanup Code               
  382. *       *                                                         
  383. *       *********************************************************
  384. *
  385.  
  386. #REGION 1
  387. SET DELETED &wzolddelete
  388. ON ERROR &wzolderror
  389.  
  390. ****Procedures****
  391.  
  392.  
  393. *       *********************************************************
  394. *       *                                                         
  395. *       *  PAINTER/Windows Supporting Procedures and Functions    
  396. *       *                                                         
  397. *       *********************************************************
  398. *
  399.  
  400. #REGION 1
  401. PROCEDURE readdeac
  402.   IF isediting
  403.     ACTIVATE WINDOW (WLAST())
  404.     WAIT WINDOW C_EDITS NOWAIT
  405.   ENDIF
  406.   IF !WVISIBLE(WOUTPUT())
  407.     CLEAR READ
  408.     RETURN .T.
  409.   ENDIF
  410. RETURN .F.
  411.  
  412. PROCEDURE readact
  413.   IF !isediting
  414.       SELECT (m.wzalias)
  415.       SHOW GETS
  416.   ENDIF
  417. RETURN
  418.  
  419. PROCEDURE fox_alert
  420.     PARAMETER wzalrtmess
  421.     PRIVATE alrtbtn
  422.     m.alrtbtn=2
  423.     DEFINE WINDOW _qec1ij2t7 AT 0,0 SIZE 8,50 ;
  424.       FONT "MS Sans Serif",10 STYLE 'B' ;
  425.       FLOAT NOCLOSE NOMINIMIZE DOUBLE TITLE WTITLE()
  426.     MOVE WINDOW _qec1ij2t7 CENTER
  427.     ACTIVATE WINDOW _qec1ij2t7 NOSHOW
  428.     @ 2,(50-txtwidth(wzalrtmess))/2 SAY wzalrtmess;
  429.       FONT "MS Sans Serif", 10 STYLE "B"
  430.     @ 6,18 GET m.alrtbtn ;
  431.       PICTURE "@*HT \<OK;\?\!\<Cancel" ;
  432.       SIZE 1.769,8.667,1.333 ;
  433.       FONT "MS Sans Serif", 8 STYLE "B"
  434.     ACTIVATE WINDOW _qec1ij2t7
  435.     READ CYCLE MODAL
  436.     RELEASE WINDOW _qec1ij2t7
  437. RETURN m.alrtbtn=1
  438.  
  439.  
  440. PROCEDURE BTN_VAL
  441.     PARAMETER m.btnname
  442.     DO CASE
  443.     CASE  m.btnname='TOP'
  444.         GO TOP
  445.         WAIT WINDOW C_TOPFILE NOWAIT
  446.     CASE  m.btnname='PREV'
  447.         IF !BOF()
  448.             SKIP -1
  449.          ENDIF
  450.          IF BOF()
  451.             WAIT WINDOW C_TOPFILE NOWAIT
  452.             GO TOP
  453.         ENDIF
  454.     CASE  m.btnname='NEXT'
  455.         IF !EOF()
  456.             SKIP 1
  457.         ENDIF
  458.         IF EOF()
  459.             WAIT WINDOW C_ENDFILE NOWAIT
  460.             GO BOTTOM
  461.         ENDIF
  462.     CASE  m.btnname='END'
  463.         GO BOTTOM
  464.         WAIT WINDOW C_ENDFILE NOWAIT
  465.     CASE  m.btnname='LOCATE'
  466.         DEFINE WINDOW wzlocate FROM 1,1 TO 15,35;
  467.             SYSTEM GROW CLOSE ZOOM FLOAT
  468.         MOVE WINDOW wzlocate CENTER
  469.         BROWSE WINDOW wzlocate NOEDIT NODELETE NOMENU ;
  470.             TITLE C_BRTITLE
  471.         RELEASE WINDOW wzlocate
  472.     CASE  m.btnname='ADD'  AND !isediting &&add record
  473.         isediting=.T.
  474.         isadding=.T.
  475.         =edithand('ADD')
  476.         _curobj=1
  477.         DO refresh
  478.         SHOW GETS
  479.         RETURN
  480.     CASE  m.btnname='EDIT'  AND !isediting &&edit record
  481.         IF EOF() OR BOF()
  482.             WAIT WINDOW C_ENDFILE NOWAIT
  483.             RETURN
  484.         ENDIF
  485.         IF RLOCK()
  486.             isediting=.T.
  487.             _curobj=1
  488.             DO refresh
  489.             RETURN
  490.         ELSE
  491.             WAIT WINDOW C_NOLOCK
  492.         ENDIF
  493.     CASE m.btnname='EDIT'  AND isediting &&save record
  494.         IF isadding
  495.             =edithand('SAVE')
  496.         ELSE
  497.             GATHER MEMVAR MEMO
  498.             UNLOCK
  499.         ENDIF
  500.         isediting=.F.
  501.         isadding=.F.
  502.         DO refresh
  503.     CASE m.btnname='DELETE'  AND isediting     &&cancel record
  504.         IF isadding
  505.             =edithand('CANCEL')
  506.         ENDIF
  507.         isediting=.F.
  508.         isadding=.F.
  509.         WAIT WINDOW C_ECANCEL NOWAIT
  510.         DO refresh
  511.     CASE m.btnname='DELETE'
  512.         IF EOF() OR BOF()
  513.             WAIT WINDOW C_ENDFILE NOWAIT
  514.             RETURN
  515.         ENDIF
  516.         IF fox_alert(C_DELREC)
  517.             DELETE
  518.             IF !EOF()
  519.                 SKIP 1
  520.             ENDIF
  521.             IF EOF()
  522.                 WAIT WINDOW C_ENDFILE NOWAIT
  523.                 GO BOTTOM
  524.             ENDIF
  525.         ENDIF
  526.     CASE m.btnname='PRINT'
  527.       PRIVATE sOldError,wizfname,saverec,savearea,tmpcurs,tmpstr
  528.       PRIVATE prnt_btn,p_recs,p_output,pr_out,pr_record
  529.       STORE 1 TO p_recs,p_output
  530.       STORE 0 TO prnt_btn
  531.       STORE RECNO() TO saverec
  532.       m.sOldError=ON('error')
  533.       DO pdialog
  534.       IF m.prnt_btn = 2
  535.         RETURN
  536.       ENDIF
  537.       IF !FILE(ALIAS()+'.FRX')
  538.           m.wizfname=SYS(2004)+'WIZARDS\'+'WIZARD.APP'
  539.           IF !FILE(m.wizfname)
  540.             ON ERROR *
  541.             m.wizfname=LOCFILE('WIZARD.APP','APP','Locate WIZARD.APP:')
  542.             ON ERROR &sOldError
  543.             IF !'WIZARD.APP'$UPPER(m.wizfname)
  544.                   WAIT WINDOW C_NOWIZ
  545.                   RETURN
  546.             ENDIF
  547.           ENDIF
  548.          WAIT WINDOW C_MAKEREPO NOWAIT
  549.         m.savearea=SELECT()
  550.         m.tmpcurs='_'+LEFT(SYS(3),7)
  551.         CREATE CURSOR (m.tmpcurs) (comment m)
  552.         m.tmpstr = '* LAYOUT = COLUMNAR'+CHR(13)+CHR(10)
  553.         INSERT INTO (m.tmpcurs) VALUES(m.tmpstr)
  554.         SELECT (m.savearea)
  555.           DO (m.wizfname) WITH '','WZ_QREPO','NOSCRN/CREATE','',m.tmpcurs
  556.         USE IN (m.tmpcurs)
  557.          WAIT CLEAR
  558.           IF !FILE(ALIAS()+'.FRX')  &&wizard could not create report
  559.              WAIT WINDOW C_NOREPO
  560.              RETURN
  561.           ENDIF
  562.       ENDIF
  563.     
  564.         m.pr_out=IIF(m.p_output=1,'TO PRINT NOCONSOLE','PREVIEW')
  565.       m.pr_record=IIF(m.p_recs=1,'NEXT 1','ALL')
  566.       ON ERROR *
  567.         REPORT FORM (ALIAS()) &pr_out &pr_record
  568.       ON ERROR &sOldError
  569.       GO m.saverec
  570.  
  571.     CASE m.btnname='EXIT'
  572.         m.bailout=.T.    &&this is needed if used with FoxApp
  573.         CLEAR READ
  574.         RETURN
  575.     ENDCASE
  576.     SCATTER MEMVAR MEMO
  577.     SHOW GETS
  578. RETURN
  579.  
  580. PROCEDURE REFRESH
  581.   IF isediting
  582.     SHOW GET top_btn DISABLE
  583.     SHOW GET prev_btn DISABLE
  584.     SHOW GET next_btn DISABLE
  585.     SHOW GET end_btn DISABLE
  586.     SHOW GET loc_btn DISABLE
  587.     SHOW GET add_btn DISABLE
  588.     SHOW GET del_btn DISABLE
  589.     SHOW GET exit_btn DISABLE
  590.     SHOW GET prnt_btn DISABLE
  591.     
  592.     SHOW GET edit_btn,1 PROMPT "\<Save"
  593.     SHOW GET del_btn,1 PROMPT "\<Cancel"
  594.   ELSE
  595.     SHOW GET edit_btn,1 PROMPT "\<Edit"
  596.     SHOW GET del_btn,1 PROMPT "\<Delete"
  597.     SHOW GETS ENABLE
  598.   ENDIF
  599. RETURN
  600.  
  601.  
  602. PROCEDURE pdialog
  603.     DEFINE WINDOW _qjn12zbvh ;
  604.         AT  0.000, 0.000  ;
  605.         SIZE 13.231,54.800 ;
  606.         TITLE "Microsoft FoxPro" ;
  607.         FONT "MS Sans Serif", 8 ;
  608.         FLOAT NOCLOSE MINIMIZE SYSTEM
  609.     MOVE WINDOW _qjn12zbvh CENTER
  610.     ACTIVATE WINDOW _qjn12zbvh NOSHOW
  611.     @ 2.846,33.600 SAY "Output:"  ;
  612.         FONT "MS Sans Serif", 8 ;
  613.         STYLE "BT"
  614.     @ 2.846,4.800 SAY "Print:"  ;
  615.         FONT "MS Sans Serif", 8 ;
  616.         STYLE "BT"
  617.     @ 4.692,7.200 GET m.p_recs ;
  618.         PICTURE "@*RVN \<Current Record;\<All Records" ;
  619.         SIZE 1.308,18.500,0.308 ;
  620.         DEFAULT 1 ;
  621.         FONT "MS Sans Serif", 8 ;
  622.         STYLE "BT"
  623.     @ 4.692,36.000 GET m.p_output ;
  624.         PICTURE "@*RVN \<Printer;Pre\<view" ;
  625.         SIZE 1.308,12.000,0.308 ;
  626.         DEFAULT 1 ;
  627.         FONT "MS Sans Serif", 8 ;
  628.         STYLE "BT"
  629.     @ 10.154,16.600 GET m.prnt_btn ;
  630.         PICTURE "@*HT \<Print;\<Cancel" ;
  631.         SIZE 1.769,8.667,0.667 ;
  632.         DEFAULT 1 ;
  633.         FONT "MS Sans Serif", 8 ;
  634.         STYLE "B"
  635.     ACTIVATE WINDOW _qjn12zbvh
  636.     READ CYCLE MODAL
  637.     RELEASE WINDOW _qjn12zbvh
  638. RETURN
  639.  
  640. PROCEDURE wizerrorhandler
  641. * This very simple error handler is primarily intended
  642. * to trap for General field OLE errors which may occur
  643. * during editing from the MODIFY GENERAL window.
  644. WAIT WINDOW message()
  645. RETURN
  646.  
  647. PROCEDURE edithand
  648.     PARAMETER m.paction
  649.     * procedure handles edits
  650.     DO CASE
  651.     CASE m.paction = 'ADD'
  652.         SCATTER MEMVAR MEMO BLANK
  653.     CASE m.paction = 'SAVE'
  654.         INSERT INTO (ALIAS()) FROM MEMVAR
  655.     CASE m.paction = 'CANCEL'
  656.         * nothing here
  657.     ENDCASE
  658. RETURN