home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1993 #2 / Image.iso / comm / commo551.zip / SELECT.MAC < prev    next >
Text File  |  1993-08-07  |  5KB  |  183 lines

  1.   SELECT.MAC    Macro to select files for uploading.
  2.   ==========    (called from COMMO.MAC)
  3.  
  4.   by Fred Brucker; idea by Mark Scardina
  5.  
  6. {:start}
  7.         {setv dsksav,%_dsk}
  8.         {setv dirsav,%_dir}
  9.         {call del_send}
  10. {:cur_dir}
  11.         {setv drive,%_dsk}
  12.         {setv path,%_dir}
  13.         {comp uldir}
  14.         {ifco nouldir}
  15.         {setv path,%uldir}
  16.         {inst %uldir,:}
  17.         {comp _pos,2}
  18.         {ifco ,nodrive}
  19.         {subs drive,1,2,%uldir}
  20.         {subs path,3,66,%uldir}
  21. {:nouldir}
  22.         {call chk_path}
  23. {:nodrive}
  24.         {file %drive%%path\*.*}
  25.         {ifco dirok}
  26.         {info-q ULDIR is not a valid directory.  Change it?}
  27.         {ifco ,exit}
  28.         {input uldir,Enter new upload directory (no "\" at end)}
  29.         {goto cur_dir}
  30. {:dirok}
  31.         {exec-n %drive}
  32.         {comp path}
  33.         {ifco root}
  34.         {exec-n cd %path}
  35.         {goto topmenu}
  36. {:root}
  37.         {exec-n cd \}
  38. {:topmenu}
  39.         {file %drive%%path\*.*}
  40.         {setv x,1}
  41.         {setv endflag,0}
  42. {:f_loop}
  43.         {leng %_ffn}
  44.         {setv padlen,12}
  45.         {decr padlen,%_len}
  46.         {subs pad,1,%padlen,             }
  47.         {setv temp,%_ffn%%pad}
  48.         {leng %_ffs}
  49.         {setv padlen,9}
  50.         {decr padlen,%_len}
  51.         {subs pad,1,%padlen,             }
  52.         {setv temp,%temp%%pad%%_ffs}
  53.         {setv temp,%temp  %_ffd  %_fft}
  54.         {setv menu%x,%temp}
  55.         {setv xl,%x}
  56.         {incr x}
  57.         {file-x}
  58.         {ifco ,no_more}
  59.         {comp x,10}
  60.         {ifco ,f_loop}
  61. {:msetup}
  62.         {setv menu11,   N ■ Next page              T ■ Top of directory}
  63. {:lsetup}
  64.         {setv x,1}
  65. {:m_loop}
  66.         {comp menu%x}
  67.         {ifco disp_menu}
  68.         {setv-s temp,menu%x}
  69.         {setv _menu%x,     %x% ■  %temp}
  70.         {incr x}
  71.         {comp x,11}
  72.         {ifco ,m_loop}
  73. {:disp_menu}
  74.         {setv _menu11,%menu11}
  75.         {setv _menu12,   X ■ eXit, done selecting   W ■ vieW/edit send list}
  76.         {setv _menu13,   V ■ change driVe           M ■ Manual entry}
  77.         {setv _menu15,   "\.." = parent directory   "\xxxxx" = subdirectory}
  78.         {setv _mlabel,s,s,s,s,s,s,s,s,s,,,,manual,next,,,,,,topmenu,,drive,view,done}
  79.         {setv _mcolor,%mcolor}
  80.         {window-k}
  81.         {menu 19,60,Selecting files from: %drive%%path\}
  82.         {setv file}
  83.         {call del_send}
  84.         {goto exit}
  85. {:next}
  86.         {comp endflag,1}
  87.         {ifco end_disp}
  88.         {setv x,1}
  89.         {goto f_loop}
  90. {:no_more}
  91.         {call clrmenu}
  92.         {setv menu11,   ** LAST PAGE **            T ■ Top of directory}
  93.         {setv endflag,1}
  94.         {goto lsetup}
  95. {:end_disp}
  96.         {setv endflag,0}
  97.         {goto topmenu}
  98. {:s}
  99.         {comp _msn,%xl}
  100.         {ifco-g lsetup}
  101.         {setv-s temp,menu%_msn}
  102.         {inst temp,\}
  103.         {comp _pos,1}
  104.         {ifco ,is_file}
  105.         {subs temp,2,8,%temp}
  106.         {exec-n cd %temp}
  107.         {setv path,%_dir}
  108.         {call chk_path}
  109.         {goto topmenu}
  110. {:is_file}
  111.         {comp temp}
  112.         {ifco msetup}
  113.         {inst temp, }
  114.         {subs temp,1,%_pos,%temp}
  115.         {wopen-a %_hom%^(send^).lst}
  116.         {write %drive%%path%\%temp}
  117.         {wclose}
  118.         {goto lsetup}
  119. {:done}
  120.         {setv file,@%_hom%^(send^).lst}
  121. {:exit}
  122.         {call cleanup}
  123.         {macload %_mac,%m_call}
  124. {:cleanup}
  125.         {exec-n %dsksav}
  126.         {exec-n cd %dirsav}
  127.         {setv x,1}
  128.         {call clrmenu}
  129.         {setv endflag} {setv dsksav} {setv dirsav} {setv temp} {setv drive}
  130.         {setv path} {setv x} {setv xl} {setv pad} {setv padlen}
  131.         {wind-k0}
  132.         {return}
  133. {:clrmenu}
  134.         {setv menu%x,}
  135.         {incr x}
  136.         {comp x,12}
  137.         {ifco ,clrmenu}
  138.         {return}
  139. {:chk_path}
  140.         {leng %path}
  141.         {comp _len,1}
  142.         {ifco ,not_root}
  143.         {setv path}
  144. {:not_root}
  145.         {return}
  146. {:del_send}
  147.         {ifex %_hom%^(send^).lst,,no_lst}
  148.         {exec-n del %_hom%^(send^).lst}
  149. {:no_lst}
  150.         {return}
  151. {:view}
  152.         {edit %_hom%^(send^).lst}
  153.         {goto lsetup}
  154. {:drive}
  155.         {wind-k0}
  156.         {setv temp,%drive}
  157.         {sete-p0 esc_off}
  158.         {input temp,Enter new drive letter}
  159.         {setesc}
  160.         {comp temp}
  161.         {ifco lsetup}
  162.         {subs temp,1,1,%temp}
  163.         {setv drive,%temp:}
  164.         {exec-n %drive}
  165.         {setv path,%_dir}
  166.         {call chk_path}
  167.         {goto topmenu}
  168. {:manual}
  169.         {wind-k0}
  170.         {sete-p0 esc_off}
  171.         {setv temp,%uldir\}
  172.         {input temp,Enter a filename to UPLOAD}
  173.         {comp temp} {ifco esc_off}
  174.         {wopen-a %_hom%^(send^).lst}
  175.         {write %temp}
  176.         {wclose}
  177. {:esc_off}
  178.         {setesc}
  179.         {goto lsetup}
  180.  
  181.                                 - end -
  182.  
  183.