home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 5 / 05.iso / a / a075 / 1.img / TOOLKIT1.EXE / SST911.PRG < prev    next >
Encoding:
Text File  |  1989-08-08  |  5.8 KB  |  229 lines

  1. *******************
  2.  
  3. PROCEDURE Pop_phon
  4.  
  5.    PARAMETERS p, l, v
  6.  
  7.    IF TYPE("scrleft_1") = "U"
  8.       RETURN
  9.    ENDIF
  10.  
  11.    KEYBOARD ""
  12.  
  13.    IF TYPE("phonfile") = "U" .OR. TYPE("_ptext") = "U"
  14.       IF TYPE("phonfile") = "U"      
  15.          PUBLIC phonfile
  16.          phonfile = "\PHONE.DIR"
  17.       ENDIF
  18.       IF TYPE("_ptext") = "U"
  19.          PUBLIC _ptext
  20.          _ptext = ""
  21.       ENDIF
  22.  
  23.       IF !FILE(phonfile)
  24.          _ptext = ""
  25.          KEYBOARD CHR(27)
  26.       ELSE
  27.          IF INT(MEMORY(0)/2 * 1024) > FILESIZE(phonfile)
  28.             IF FILESIZE(phonfile) > 22000
  29.                _ptext = ""
  30.             ELSE
  31.                _ptext = MEMOREAD(phonfile)
  32.             ENDIF
  33.          ELSE
  34.             _ptext = ""
  35.          ENDIF
  36.       ENDIF
  37.    ENDIF
  38.  
  39.    IF TYPE("scrcursor") = "U"
  40.       scrcursor = .T.
  41.    ENDIF
  42.  
  43.    PRIVATE _poprow, _popcol, _ocolor, _srchon, _disprow, _srchpnt
  44.    PRIVATE _nimo, _temp, _dummy
  45.  
  46.    _temp = ""
  47.    _poprow = ROW()
  48.    _popcol = COL()
  49.    _ocolor = SETCOLOR()
  50.    _srchon = .F.
  51.    _srchpnt = 1
  52.    _disprow = 0
  53.    _nimo  = SPACE(20)
  54.    SET CURSOR ON
  55.    PUSHSCREEN(14,0,24,79,.T.,.F.,.F.)
  56.    @ 14,0 SAY scrleft_1 + " / " + scrleft_2
  57.    @ 14,RIGHT_JUST("Pop-phone") SAY "Pop-phone"
  58.    SETCOLOR(IF( (ISCOLOR() .AND. !(IF(TYPE("scrmono")="U", .T., scrmono))), "W+/B", "N/W"))
  59.    CLEAR_AREA(15,0,24,79)
  60.    @ 15,0 TO 23,79 DOUBLE
  61.    @ 16,1 SAY ""
  62.    @ 16,78 SAY ""
  63.  
  64.    SETCOLOR(IF ( (ISCOLOR() .AND. !(IF(TYPE("scrmono")="U", .T., scrmono))), "W+/G", "W+/N"))
  65.  
  66.    @ 24,00 SAY " [ Scroll]  [F2:New File]  [F4:Search]  [PgUp / PgDn / Home]  [ESC: To Exit]"
  67.    DISP_PHONE(_ptext, .F.)
  68.    DO WHILE .T.
  69.       _dummy = INKEY(0)
  70.       DO CASE
  71.       CASE _dummy = 3
  72.          WORKWITH()
  73.          _disprow = _disprow + 6
  74.          DISP_PHONE(OCCUR_AT(CHR(13)+CHR(10), _ptext, _disprow), .T.)
  75.       CASE _dummy = 18
  76.          WORKWITH()
  77.          IF _disprow <= 6
  78.             _disprow = 0
  79.             DISP_PHONE(_ptext, .F.)
  80.          ELSE
  81.             _disprow = _disprow - 6
  82.             DISP_PHONE(OCCUR_AT(CHR(13)+CHR(10), _ptext, _disprow), .T.)
  83.          ENDIF
  84.       CASE _dummy = 1
  85.          _disprow = 0
  86.          DISP_PHONE(_ptext, .F.)
  87.       CASE _dummy = 27
  88.          EXIT
  89.       CASE _dummy = -1   && New phonfile
  90.          DO WHILE !GETPHONE(.F.)
  91.             IF LASTKEY() = 27
  92.                EXIT
  93.             ENDIF
  94.          ENDDO
  95.          IF LASTKEY() <> 27
  96.             IF INT(MEMORY(0)/2 * 1024) > FILESIZE(phonfile)
  97.                IF FILESIZE(phonfile) > 22000
  98.                   _ptext = ""
  99.                ELSE
  100.                   _ptext = MEMOREAD(phonfile)
  101.                ENDIF
  102.             ELSE
  103.                _ptext = ""
  104.             ENDIF
  105.             DISP_PHONE(_ptext, .F.)
  106.             @ 24,00 SAY " [ Scroll]  [F2:New File]  [F4:Search]  [PgUp / PgDn / Home]  [ESC: To Exit]"
  107.          ENDIF
  108.       CASE _dummy = -3   && Start Search
  109.          START_SEARCH()
  110.       CASE _dummy = 5
  111.          WORKWITH()
  112.          IF _disprow = 0
  113.             DISP_PHONE(_ptext, .F.)
  114.          ELSE
  115.             DISP_PHONE(OCCUR_AT(CHR(13)+CHR(10), _ptext, _disprow), .T.)
  116.             _disprow = _disprow - 1
  117.          ENDIF
  118.       CASE _dummy = 24
  119.          WORKWITH()
  120.          _disprow = _disprow + 1
  121.          DISP_PHONE(OCCUR_AT(CHR(13)+CHR(10), _ptext, _disprow), .T.)
  122.       ENDCASE
  123.    ENDDO
  124.    SET CURSOR (scrcursor)
  125.    SETCOLOR(_ocolor)
  126.    POPSCREEN(14,0,24,79)
  127.    @ _poprow, _popcol, ""
  128.  
  129. ********************
  130.  
  131. FUNCTION Getphone
  132.  
  133.    PARAMETERS assume_new
  134.  
  135.    @ 24,00 CLEAR
  136.    SET KEY 13 TO End_edit
  137.    phonfile = FILL_OUT(phonfile, 50)
  138.    @ 24,00 SAY IF(assume_new,  "Enter New Phone File = ", "Phone File NOT found!   Enter New Name ")
  139.    phonfile = LTRIM(TRIM(STRTRAN(MEMOEDIT(phonfile,24,IF(assume_new,27,43),24,60,.T.), CHR(141)+CHR(10), "")))
  140.    SET KEY 13 TO
  141.    WORKWITH()
  142.    IF LASTKEY() = 27
  143.       RETURN (.F.)
  144.    ELSEIF CHR(LASTKEY()) $"Yy"
  145.       RETURN(.T.)
  146.    ELSE
  147.       IF FILESIZE(phonfile) > 12000
  148.          @ 24,00
  149.          @ 24,00 SAY "File is TOO big for program.  Any key..."
  150.          INKEY(0)
  151.          @ 24,00
  152.          RETURN(.F.)
  153.       ELSE
  154.          RETURN(FILE(phonfile))
  155.       ENDIF
  156.    ENDIF
  157.  
  158. ********************
  159.  
  160. PROCEDURE Workwith
  161.  
  162.    @ 24,00 CLEAR
  163.    @ 24,00 SAY "Working.....  ESC for Command Line"
  164.  
  165. ********************
  166.  
  167. PROCEDURE Stop_search
  168.  
  169.    _srchon = .F.
  170.    _srchpnt = 1
  171.    @ 24,00 CLEAR
  172.    @ 24,00 SAY "Search Stopped..."
  173.    INKEY(1)
  174.    @ 24,00 SAY " [ Scroll]  [F2:New File]  [F4:Search]  [PgUp / PgDn / Home]  [ESC: To Exit]"
  175.  
  176. ********************
  177.  
  178. PROCEDURE Start_search
  179.  
  180.    PARAMETERS p, l, v
  181.  
  182.    search = .T.
  183.    @ 24,00 CLEAR
  184.    SET KEY 13 TO End_edit
  185.    SET KEY 27 TO Aborting
  186.    @ 24,01 SAY "Enter search criteria is = "
  187.    _nimo = LTRIM(TRIM(MEMOEDIT(_nimo, 24, 28, 24, 60,.T.)))
  188.    SET KEY 13 TO
  189.    SET KEY 27 TO
  190.    _srchpnt = AT(_nimo, SUBSTR(_ptext, _srchpnt))
  191.    IF _srchpnt <> 0
  192.       WORKWITH()
  193.       DISP_PHONE(OCCUR_AT(CHR(13)+CHR(10), SUBST(_ptext, _srchpnt-60), 1), .T.)
  194.       _disprow = OCCURENCE( CHR(13)+CHR(10), SUBSTR(_ptext, 1, _srchpnt))
  195.    ELSE
  196.       @ 24,00 CLEAR
  197.       @ 24,00 SAY "Text Not Found.  Any Key to Continue.."
  198.       INKEY(0)
  199.       @ 24,00 SAY " [ Scroll]  [F2:New File]  [F4:Search]  [PgUp / PgDn / Home]  [ESC: To Exit]"
  200.    ENDIF       
  201.  
  202. ********************
  203.  
  204. PROCEDURE End_edit
  205.  
  206.    PARAMETERS p, l, v
  207.  
  208.    KEYBOARD CHR(23)
  209.  
  210. ********************
  211.  
  212. PROCEDURE Disp_phone
  213.  
  214.    PARAMETERS _phonew, _dtoggle
  215.  
  216.    IF !_dtoggle
  217.       MEMOEDIT(_phonew, 16,2,22,77,.F.)
  218.    ELSE
  219.       MEMOEDIT(SUBSTR(_phonew, 3), 16, 2, 22, 77, .F.)
  220.    ENDIF
  221.    IF EMPTY(_phonew)
  222.       @ 24,00
  223.       @ 24,00 SAY " No File was found.  Any Key to Continue..."
  224.       INKEY(0)
  225.    ENDIF
  226.    @ 24,00 SAY " [ Scroll]  [F2:New File]  [F4:Search]  [PgUp / PgDn / Home]  [ESC: To Exit]"
  227.  
  228. * End of File
  229.