home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / World_Of_Computer_Software-02-387-Vol-3of3.iso / p / projman1.zip / PROJMAN.SPR < prev    next >
Text File  |  1993-02-27  |  35KB  |  1,073 lines

  1. *       *********************************************************
  2. *       *                                                         
  3. *       * 02/27/93             PROJMAN.SPR               22:24:25 
  4. *       *                                                         
  5. *       *********************************************************
  6. *       *                                                         
  7. *       * Author's Name                                           
  8. *       *                                                         
  9. *       * Copyright (c) 1993 Company Name                         
  10. *       * Address                                                 
  11. *       * City,     Zip                                           
  12. *       *                                                         
  13. *       * Description:                                            
  14. *       * This program was automatically generated by GENSCRN.    
  15. *       *                                                         
  16. *       *********************************************************
  17.  
  18.  
  19. *       *********************************************************
  20. *       *                                                         
  21. *       *         PROJMAN/Windows Setup Code - SECTION 1          
  22. *       *                                                         
  23. *       *********************************************************
  24. *
  25.  
  26. #REGION 1
  27.  
  28.  
  29. #REGION 0
  30. REGIONAL m.currarea, m.talkstat, m.compstat
  31.  
  32. IF SET("TALK") = "ON"
  33.     SET TALK OFF
  34.     m.talkstat = "ON"
  35. ELSE
  36.     m.talkstat = "OFF"
  37. ENDIF
  38. m.compstat = SET("COMPATIBLE")
  39. SET COMPATIBLE FOXPLUS
  40.  
  41. m.rborder = SET("READBORDER")
  42. SET READBORDER ON
  43.  
  44. m.currarea = SELECT()
  45.  
  46.  
  47. *       *********************************************************
  48. *       *                                                         
  49. *       *               Windows Window definitions                
  50. *       *                                                         
  51. *       *********************************************************
  52. *
  53.  
  54. IF NOT WEXIST("_qdp1c0z9n")
  55.     DEFINE WINDOW _qdp1c0z9n ;
  56.         AT  0.000, 0.000  ;
  57.         SIZE 28.154,75.000 ;
  58.         TITLE "Project Mover" ;
  59.         FONT "MS Sans Serif", 8 ;
  60.         STYLE "B" ;
  61.         FLOAT ;
  62.         NOCLOSE ;
  63.         SHADOW ;
  64.         NOMINIMIZE ;
  65.         DOUBLE ;
  66.         FILL FILE LOCFILE("\COMMON25\BITMAPS\MARBLE.BMP","BMP|ICO", ;
  67.             "Where is marble?")
  68.     MOVE WINDOW _qdp1c0z9n CENTER
  69. ENDIF
  70.  
  71.  
  72. *       *********************************************************
  73. *       *                                                         
  74. *       *         PROJMAN/Windows Setup Code - SECTION 2          
  75. *       *                                                         
  76. *       *********************************************************
  77. *
  78.  
  79. #REGION 1
  80. * llNoSort  - If .T. don't sort the select list.
  81. * lnSelect  - Highlight on currently selected Selected List item
  82. * lnFull    - Highlight on currently selected Full List item
  83. * lnFullCnt - Number of un-moved items (used to dim MOVE)
  84. * lnSeleCnt - Number of selected items (used to dim REMOVE)
  85. PRIVATE m.lnSelect, m.lnFull, m.lnFullCnt
  86. PRIVATE m.lnSeleCnt, laOrigList, lhOk,lcExSet
  87. dimension lafullList[1,2]
  88. dimension laSeleList[1,2]
  89. regional lnCurrent
  90. lnCurrent=select(0)
  91. lhOk = ""                                && Initialize to char
  92. lcExSet=Set('EXCLUSIVE')
  93. set EXCLUSIVE OFF
  94.  m.lnFullCnt=0
  95.  m.lnSeleCnt=0
  96.  m.lholdtype=0
  97.  m.lhftype=0
  98. m.lcSAlias=''
  99. m.lcDAlias=''
  100. lcOldExact = SET("EXACT")
  101. SET EXACT ON
  102. dimension lafiletypes[1,2]
  103. llnoSort=.t.
  104.  
  105.  
  106. *       *********************************************************
  107. *       *                                                         
  108. *       *              PROJMAN/Windows Screen Layout              
  109. *       *                                                         
  110. *       *********************************************************
  111. *
  112.  
  113. #REGION 1
  114. IF WVISIBLE("_qdp1c0z9n")
  115.     ACTIVATE WINDOW _qdp1c0z9n SAME
  116. ELSE
  117.     ACTIVATE WINDOW _qdp1c0z9n NOSHOW
  118. ENDIF
  119. @ 21.077,49.833 TO 27.154,72.166 ;
  120.     PATTERN 1 ;
  121.     PEN 1, 8 ;
  122.     STYLE "32" ;
  123.     COLOR RGB(255,0,0,255,0,0)
  124. @ 21.846,51.833 GET lhOk ;
  125.     PICTURE "@*VN \?Cancel;\<Done" ;
  126.     SIZE 2.077,18.167,0.692 ;
  127.     DEFAULT 1 ;
  128.     FONT "MS Sans Serif", 8 ;
  129.     STYLE "B" ;
  130.     VALID _qdp1c11ph()
  131. @ 4.538,0.333 TO 20.307,74.666 ;
  132.     PATTERN 1 ;
  133.     PEN 1, 8 ;
  134.     COLOR RGB(255,255,0,255,255,0)
  135. @ 6.154,53.333 SAY "Selected Files"  ;
  136.     FONT "MS Sans Serif", 8 ;
  137.     STYLE "BT"
  138. @ 4.846,9.500 SAY "View File Types"  ;
  139.     FONT "MS Sans Serif", 8 ;
  140.     STYLE "BT"
  141. @ 6.154,6.333 SAY "Source Files"  ;
  142.     FONT "MS Sans Serif", 8 ;
  143.     STYLE "BT"
  144. @ 0.308,7.833 GET m.lhsource ;
  145.     PICTURE "@*HN Source Project..." ;
  146.     SIZE 1.615,21.167,0.500 ;
  147.     DEFAULT 1 ;
  148.     FONT "MS Sans Serif", 8 ;
  149.     STYLE "B" ;
  150.     VALID _qdp1c12lm()
  151. @ 0.615,30.667 GET m.lhSProj ;
  152.     SIZE 1.000,40.000 ;
  153.     DEFAULT " " ;
  154.     FONT "MS Sans Serif", 8 ;
  155.     STYLE "B" ;
  156.     PICTURE "@K" ;
  157.     VALID _qdp1c13cx()
  158. @ 2.538,7.833 GET m.lhdestin ;
  159.     PICTURE "@*HN Destination Project..." ;
  160.     SIZE 1.615,21.167,0.500 ;
  161.     DEFAULT 1 ;
  162.     FONT "MS Sans Serif", 8 ;
  163.     STYLE "B" ;
  164.     WHEN _qdp1c144e() ;
  165.     VALID _qdp1c14a0()
  166. @ 2.846,30.667 GET m.lhDProj ;
  167.     SIZE 1.000,40.000 ;
  168.     DEFAULT " " ;
  169.     FONT "MS Sans Serif", 8 ;
  170.     STYLE "B" ;
  171.     PICTURE "@K" ;
  172.     WHEN _qdp1c15dy() ;
  173.     VALID _qdp1c15li()
  174. @ 4.846,27.333 GET m.lhftype ;
  175.     PICTURE "@^" ;
  176.     FROM lafiletypes ;
  177.     SIZE 1.538,20.333 ;
  178.     DEFAULT 1 ;
  179.     FONT "MS Sans Serif", 8 ;
  180.     STYLE "B" ;
  181.     WHEN _qdp1c16i4() ;
  182.     VALID _qdp1c16o6() ;
  183.     DISABLE
  184. @ 7.615,1.833 GET m.lnFull ;
  185.      PICTURE "@&N" ;
  186.     FROM lafulllist ;
  187.     RANGE 1, sizearry(@laFullList) ;
  188.     SIZE 10.385,24.800 ;
  189.     DEFAULT 1 ;
  190.     FONT "MS Sans Serif", 8 ;
  191.     VALID _qdp1c1716() ;
  192.     DISABLE
  193. @ 7.077,30.500 GET m.lhMove ;
  194.     PICTURE "@*VN   \<Move  ;Move \<All" ;
  195.     SIZE 2.308,14.000,0.231 ;
  196.     DEFAULT 1 ;
  197.     FONT "MS Sans Serif", 8 ;
  198.     STYLE "B" ;
  199.     VALID _qdp1c17cf() ;
  200.     DISABLE
  201. @ 12.154,30.500 GET m.lhRemove ;
  202.     PICTURE "@*VN \<Remove;Remove \<All" ;
  203.     SIZE 2.308,14.000,0.231 ;
  204.     DEFAULT 1 ;
  205.     FONT "MS Sans Serif", 8 ;
  206.     STYLE "B" ;
  207.     VALID _qdp1c1844() ;
  208.     DISABLE
  209. @ 7.615,51.000 GET m.lnSelect ;
  210.      PICTURE "@&N" ;
  211.     FROM laSeleList ;
  212.     RANGE 1, SizeArry(@laSeleList) ;
  213.     SIZE 10.385,24.800 ;
  214.     DEFAULT 1 ;
  215.     FONT "MS Sans Serif", 8 ;
  216.     VALID _qdp1c18i8() ;
  217.     DISABLE
  218. @ 17.615,27.667 GET m.lhcopy ;
  219.     PICTURE "@*HN Copy Selected Files" ;
  220.     SIZE 2.308,19.833,0.500 ;
  221.     DEFAULT 1 ;
  222.     FONT "MS Sans Serif", 8 ;
  223.     STYLE "B" ;
  224.     VALID _qdp1c18tg() ;
  225.     DISABLE
  226. @ 21.615,10.667 GET m.lhviewde ;
  227.     PICTURE "@*HN View Destination..." ;
  228.     SIZE 2.308,27.333,0.500 ;
  229.     DEFAULT 1 ;
  230.     FONT "MS Sans Serif", 8 ;
  231.     STYLE "B" ;
  232.     VALID _qdp1c1a5b() ;
  233.     DISABLE
  234. @ 24.769,10.667 GET m.lhchngnm ;
  235.     PICTURE "@*HN Change Screen Set Name..." ;
  236.     SIZE 2.308,27.500,0.500 ;
  237.     DEFAULT 1 ;
  238.     FONT "MS Sans Serif", 8 ;
  239.     STYLE "B" ;
  240.     VALID _qdp1c1aey() ;
  241.     DISABLE
  242.  
  243. IF NOT WVISIBLE("_qdp1c0z9n")
  244.     ACTIVATE WINDOW _qdp1c0z9n
  245. ENDIF
  246.  
  247. READ CYCLE ;
  248.     ACTIVATE _qdp1c1b0o()
  249.  
  250. RELEASE WINDOW _qdp1c0z9n
  251. SELECT (m.currarea)
  252.  
  253.  
  254. #REGION 0
  255.  
  256. SET READBORDER &rborder
  257.  
  258. IF m.talkstat = "ON"
  259.     SET TALK ON
  260. ENDIF
  261. IF m.compstat = "ON"
  262.     SET COMPATIBLE ON
  263. ENDIF
  264.  
  265.  
  266. *       *********************************************************
  267. *       *                                                         
  268. *       *              PROJMAN/Windows Cleanup Code               
  269. *       *                                                         
  270. *       *********************************************************
  271. *
  272.  
  273. #REGION 1
  274.     SET EXACT &lcOldExact
  275.     set EXCLUSIVE &lcExSet
  276.     IF USED(m.lcDAlias)
  277.     SELECT (m.lcDAlias)
  278.     USE
  279. ENDIF
  280. IF USED(m.lcSAlias)
  281.     SELECT (m.lcSAlias)
  282.     USE
  283. ENDIF
  284. IF USED('HOLDPROJ')
  285.     SELECT HOLDPROJ
  286.     USE
  287. ENDIF
  288. SELECT (lnCurrent)
  289.  
  290.  
  291. *       *********************************************************
  292. *       *                                                         
  293. *       *  PROJMAN/Windows Supporting Procedures and Functions    
  294. *       *                                                         
  295. *       *********************************************************
  296. *
  297.  
  298. #REGION 1
  299. FUNCTION ValRemAll
  300.    FOR i = 1 TO lnSeleCnt        && Remove every row
  301.     =ADEL(laSeleList,1)
  302.   ENDFOR
  303.   m.lnSeleCnt = 0
  304.   m.lnSelect = 0
  305.   m.lnFullCnt = sizearry(@laFullList)
  306.   FOR i = 1 TO m.lnFullCnt
  307.     IF LEFT(laFullList[i,1],1) = "\"
  308.       laFullList[i,1] = RIGHT(laFullList[i,1],LEN(laFullList[i,1])-1)
  309.     ENDIF
  310.   ENDFOR
  311.   SHOW GET m.lnSelect
  312.   SHOW GET m.lnFull
  313.   SHOW GET m.lhMove ENABLE
  314.   SHOW GET m.lhRemove DISABLE
  315.   SHOW GET m.lhCopy DISABLE
  316.  
  317. FUNCTION QUITITOUT
  318.   deactivate popup mypop
  319. FUNCTION MAKELIST
  320. DO CASE
  321. CASE lafiletypes[lhftype,2]='*'
  322.     SELE PADR(strippat(name),15),TYPE,RECN() FROM (m.lhSproj) ;
  323.         INTO ARRAY laFulllist ;
  324.         order by 1 ;
  325.         WHERE TYPE #'H' and type#'s'
  326. OTHERWISE
  327.     SELE PADR(strippat(name),15),TYPE,RECN() FROM (m.lhSproj) ;
  328.         INTO ARRAY laFulllist ;
  329.         order by 1 ;
  330.         WHERE TYPE=lafiletypes[lhftype,2]
  331. ENDCASE
  332. IF NOT EMPTY(laFullList)
  333.     DIMENSION laSeleList[1,ALEN(laFullList,2)]
  334.     STORE .F. TO laSeleList
  335. ELSE
  336.     WAIT WINDOW 'Cannot find any items to move'
  337. ENDIF
  338. STORE 1 TO m.lnFull, m.lnSelect         && highlight initial selections
  339. m.lnFullCnt = sizearry(@laFullList)
  340. IF EMPTY(laSeleList)
  341.     m.lnSeleCnt = 0
  342. ELSE
  343.     m.lnSeleCnt = SizeArry(@laSeleList)
  344. ENDIF
  345. SHOW GETS ENABLE
  346. SHOW GET m.lhRemove DISABLE
  347.   SHOW GET m.lhCopy DISABLE
  348.   if m.lnFullCnt > 0
  349.     show get m.lhMove ENABLE
  350.     endif
  351.  
  352. *- Dim already selected items
  353. FOR i = 1 TO m.lnSeleCnt
  354.     lnFound = ASCAN(laFullList,laSeleList[i,1])
  355.     IF lnFound # 0
  356.         lnFound = ASUBSCRIPT(laFullList,lnFound,1)
  357.         laFullList[lnFound,1] = "\"+laFullList[lnFound,1]
  358.         m.lnFullCnt = m.lnFullCnt - 1
  359.     ENDIF
  360. ENDFOR
  361.  
  362. FUNCTION makearr
  363. IF EMPTY(m.lhsproj)
  364.     RETURN
  365. ENDIF
  366. PRIVATE lconer
  367. STORE ON('ERROR') TO lconer
  368. STORE .F. TO llfner
  369. ON ERROR STORE .T. TO llfner
  370. lnCurWa=SELECT(0)
  371. SELECT 0
  372. USE (m.lhsproj) AGAIN SHARE
  373. m.lcSAlias=ALIAS()
  374. USE
  375. SELECT (lnCurWa)
  376. ON ERROR &lconer
  377. IF llfner  && error found
  378.     WAIT WINDOW m.lhsproj+' is not a valid project'
  379.     m.lcSAlias=''
  380.     RETURN
  381. ENDIF
  382. DIMENSION lafiletypes[1,2]
  383. STORE 'All' TO lafiletypes
  384. STORE '*' TO lafiletypes[1,2]
  385. RELEASE laabbrev
  386. SELECT DISTINCT TYPE,SPACE(15) FROM (m.lhSproj) ;
  387.     INTO ARRAY laabbrev WHERE TYPE #'H' and type#'s' ;
  388.     ORDER BY TYPE
  389.  
  390. IF TYPE('laabbrev') ='C'
  391.     PRIVATE lnI
  392.     FOR lnI=1 TO ALEN(laabbrev,1)
  393.         DIMENSION lafiletypes[ALEN(lafiletypes,1)+1,2]
  394.         DO CASE
  395.         CASE laabbrev[lni,1]='Z'
  396.             lcSt='Application'
  397.         CASE laabbrev[lni,1]='x'
  398.             lcSt='File'
  399.         CASE laabbrev[lni,1]='I'
  400.             lcSt='Index'
  401.         CASE laabbrev[lni,1]='D'
  402.             lcSt='Database/Table'
  403.         CASE laabbrev[lni,1]='F'
  404.             lcSt='Format'
  405.         CASE laabbrev[lni,1]='B'
  406.             lcSt='Label'
  407.         CASE laabbrev[lni,1]='R'
  408.             lcSt='Report'
  409.         CASE laabbrev[lni,1]='Q'
  410.             lcSt='Query'
  411.         CASE laabbrev[lni,1]='M'
  412.             lcSt='Menu'
  413.         CASE laabbrev[lni,1]='P'
  414.             lcSt='Program'
  415.         CASE laabbrev[lni,1]='s' && Case is important here
  416.             lcSt='Screen'
  417.         CASE laabbrev[lni,1]='S'
  418.             lcSt='Screen Set'
  419.         ENDCASE
  420.         lafiletypes[ALEN(lafiletypes,1),1]=lcSt
  421.         lafiletypes[ALEN(lafiletypes,1),2]=laabbrev[lni,1]
  422.     ENDFOR
  423. ENDIF
  424.  
  425.  
  426. FUNCTION ValMover
  427. IF LEFT(laFullList[m.lnFull,1],1) # "\"
  428.     IF m.lnSeleCnt+1 > ALEN(laSeleList,1)
  429.         DIMENSION laSeleList[m.lnSeleCnt+1,ALEN(laFullList,2)]
  430.     ENDIF
  431.     FOR i = 1 TO ALEN(laFullList,2)       && Fill all columns
  432.         laSeleList[m.lnSeleCnt+1,i] = laFullList[m.lnFull,i]
  433.     ENDFOR
  434.     laFullList[m.lnFull,1] = "\"+laFullList[m.lnFull,1]
  435.     m.lnSeleCnt = m.lnSeleCnt + 1
  436.     m.lnFullCnt = m.lnFullCnt - 1
  437.     m.lnSelect = m.lnSeleCnt
  438.     IF NOT llNoSort
  439.         =ASORT(laSeleList,1,lnSeleCnt)
  440.     ENDIF
  441.     SHOW GET m.lnSelect
  442.     SHOW GET m.lnFull
  443.     SHOW GET m.lhRemove ENABLE
  444.     SHOW GET m.lhCopy ENABLE
  445.     IF m.lnFullCnt = 0
  446.         SHOW GET m.lhMove DISABLE
  447.     ENDIF
  448. ENDIF
  449. RETURN .T.
  450.  
  451. FUNCTION ValRemove
  452. lnFound = ASCAN(laFullList,"\"+laSeleList[m.lnSelect,1])
  453. IF lnFound # 0
  454.     lnFound = ASUBSCRIPT(laFullList,lnFound,1)
  455.     laFullList[lnFound,1] = ;
  456.         RIGHT(laFullList[lnFound,1],LEN(laFullList[lnFound,1])-1)
  457.     m.lnFullCnt = m.lnFullCnt + 1
  458. ENDIF
  459. =ADEL(laSeleList, m.lnSelect)
  460. m.lnSeleCnt = m.lnSeleCnt - 1
  461. m.lnSelect = m.lnSeleCnt
  462. IF m.lnSeleCnt = 0
  463.     SHOW GET m.lhCopy DISABLE
  464.     SHOW GET m.lhRemove DISABLE
  465. ENDIF
  466. IF m.lnFullCnt > 0
  467.     SHOW GET m.lhMove ENABLE
  468. ENDIF
  469. SHOW GET m.lnSelect
  470. SHOW GET m.lnFull
  471. RETURN .T.
  472.  
  473.  
  474. *       *********************************************************
  475. *       *                                                         
  476. *       * _QDP1C11PH           lhOk VALID                         
  477. *       *                                                         
  478. *       * Function Origin:                                        
  479. *       *                                                         
  480. *       * From Platform:       Windows                            
  481. *       * From Screen:         PROJMAN,     Record Number:    3   
  482. *       * Variable:            lhOk                               
  483. *       * Called By:           VALID Clause                       
  484. *       * Snippet Number:      1                                  
  485. *       *                                                         
  486. *       *********************************************************
  487. *
  488. FUNCTION _qdp1c11ph     &&  lhOk VALID
  489. #REGION 1
  490. IF m.lhOk='Cancel'
  491.     IF not empty(m.lhDProj) and choice('Choose OK to restore original Destination Project')
  492.         IF USED('HOLDPROJ')
  493.             PRIVATE lcSSet
  494.             lcSSet=SET('SAFE')
  495.             SET SAFE OFF
  496.             IF USED(m.lcDAlias)
  497.                select (m.lcDAlias)
  498.                use
  499.             endif
  500.                SELECT holdproj
  501.             COPY TO (m.lhDProj)
  502.             SET SAFE &lcSSet
  503.             USE
  504.         ENDIF
  505.     ENDIF
  506. ELSE
  507.     IF m.lnSeleCnt = 0 OR choice('Items selected. Quit anyway')
  508.         CLEAR READ
  509.     ENDIF
  510. ENDIF
  511.  
  512.  
  513. *       *********************************************************
  514. *       *                                                         
  515. *       * _QDP1C12LM           m.lhsource VALID                   
  516. *       *                                                         
  517. *       * Function Origin:                                        
  518. *       *                                                         
  519. *       * From Platform:       Windows                            
  520. *       * From Screen:         PROJMAN,     Record Number:    8   
  521. *       * Variable:            m.lhsource                         
  522. *       * Called By:           VALID Clause                       
  523. *       * Snippet Number:      2                                  
  524. *       *                                                         
  525. *       *********************************************************
  526. *
  527. FUNCTION _qdp1c12lm     &&  m.lhsource VALID
  528. #REGION 1
  529. if not empty(m.lcSAlias) && Close Current Source
  530.    select (m.lcSAlias)
  531.    m.lcSAlias=''
  532.    USE
  533. endif
  534. m.lhSproj = GETFILE('PJX','Choose Source Project','Select')
  535. IF EMPTY(m.lhSproj)
  536.     m.lhSproj=SPACE(50)
  537.     _CUROBJ=OBJNUM(m.lhsproj)
  538.     SHOW GET m.lhsproj
  539.     RETURN
  540. ENDIF
  541. IF NOT makearr()
  542.     WAIT WINDOW 'Nothing to select in this file'
  543.   m.lcSAlias=''
  544.   RETURN
  545. ENDIF
  546.     m.lhftype=1
  547.     =makelist()
  548.     SHOW GET m.lhftype ENABLE
  549. IF NOT EMPTY(m.lhDProj)
  550.         _CUROBJ=OBJNUM(m.lhftype)
  551. ELSE
  552.     SHOW GET m.lhDProj ENABLE
  553.     SHOW GET m.lhDestin ENABLE
  554.     _CUROBJ=OBJNUM(m.lhDProj)
  555. ENDIF
  556. show get m.lhSproj
  557.  
  558.  
  559. *       *********************************************************
  560. *       *                                                         
  561. *       * _QDP1C13CX           m.lhSProj VALID                    
  562. *       *                                                         
  563. *       * Function Origin:                                        
  564. *       *                                                         
  565. *       * From Platform:       Windows                            
  566. *       * From Screen:         PROJMAN,     Record Number:    9   
  567. *       * Variable:            m.lhSProj                          
  568. *       * Called By:           VALID Clause                       
  569. *       * Snippet Number:      3                                  
  570. *       *                                                         
  571. *       *********************************************************
  572. *
  573. FUNCTION _qdp1c13cx     &&  m.lhSProj VALID
  574. #REGION 1
  575. if not empty(m.lcSAlias) && Close Current Source
  576.    select (m.lcSAlias)
  577.    store '' to m.lcSAlias
  578.    USE
  579. endif
  580. IF EMPTY(m.lhSproj)
  581. _curobj=objnum(m.lhSource)
  582.    store '' to m.lcSAlias
  583.         RETURN
  584. ENDIF
  585. IF NOT makearr()
  586.     WAIT WINDOW 'Nothing to select in this file'
  587.    store '' to m.lcSAlias
  588.   RETURN
  589. ENDIF
  590.       m.lhftype=1
  591.     =makelist()
  592.     SHOW GET m.lhftype ENABLE
  593.  
  594. IF NOT EMPTY(m.lhDProj)
  595.     _CUROBJ=OBJNUM(m.lhftype)
  596.  
  597. ELSE
  598.     SHOW GET m.lhDProj ENABLE
  599.     SHOW GET m.lhDestin ENABLE
  600.     _CUROBJ=OBJNUM(m.lhDProj)
  601. ENDIF
  602. show get m.lhSproj
  603.  
  604.  
  605.  
  606. *       *********************************************************
  607. *       *                                                         
  608. *       * _QDP1C144E           m.lhdestin WHEN                    
  609. *       *                                                         
  610. *       * Function Origin:                                        
  611. *       *                                                         
  612. *       * From Platform:       Windows                            
  613. *       * From Screen:         PROJMAN,     Record Number:   10   
  614. *       * Variable:            m.lhdestin                         
  615. *       * Called By:           WHEN Clause                        
  616. *       * Snippet Number:      4                                  
  617. *       *                                                         
  618. *       *********************************************************
  619. *
  620. FUNCTION _qdp1c144e     &&  m.lhdestin WHEN
  621. #REGION 1
  622. m.oldDest=m.lhDProj
  623.  
  624. *       *********************************************************
  625. *       *                                                         
  626. *       * _QDP1C14A0           m.lhdestin VALID                   
  627. *       *                                                         
  628. *       * Function Origin:                                        
  629. *       *                                                         
  630. *       * From Platform:       Windows                            
  631. *       * From Screen:         PROJMAN,     Record Number:   10   
  632. *       * Variable:            m.lhdestin                         
  633. *       * Called By:           VALID Clause                       
  634. *       * Snippet Number:      5                                  
  635. *       *                                                         
  636. *       *********************************************************
  637. *
  638. FUNCTION _qdp1c14a0     &&  m.lhdestin VALID
  639. #REGION 1
  640. if not empty(laseleList) and not empty(m.oldDest) and not choice('Selected Items not yet moved. Continue')
  641.   store m.oldDest to m.lhdproj
  642.   show get m.lhdproj
  643.   return
  644. endif
  645.    m.lhdproj=''
  646. m.lhdproj = GETFILE('PJX','Choose Destination Project','Select',1)
  647. if 'Untitled'$m.lhdproj
  648.    m.lhdproj=''
  649. endif
  650.    IF EMPTY(m.lhdproj)
  651.     m.lhdproj=PUTFILE('Name for New Project','*.PJX','PJX')
  652.     IF EMPTY(m.lhdproj)
  653.         WAIT WINDOW 'Need to have a project name to continue'
  654.     ELSE && create project
  655.         SELE * FROM (m.lhsproj) ;
  656.             WHERE TYPE='H' ;
  657.             INTO TABLE (m.lhdproj)
  658.         REPLACE name WITH m.lhdproj,setid WITH 0
  659.         m.lcDAlias=ALIAS()
  660.         ENDIF
  661. ELSE
  662.   private llErFn,lcONER
  663.    llErFn=.f.
  664.    lcONER=on('ERROR')
  665.    on error store .t. to llErFn
  666.    sele 0
  667.    use (m.lhdproj) AGAIN SHARE
  668.    m.lcDAlias=ALIAS()
  669.    on error &lcONER
  670.    if llERFn
  671.      wait window 'Not a valid project'
  672.      m.lcDAlias=''
  673.      m.lhdproj=''
  674.      else
  675.    sele * from (m.lhdproj) into cursor HoldProj
  676.     endif
  677.  ENDIF
  678.  
  679. IF EMPTY(m.lhdproj)
  680.     m.lhdproj=SPACE(50)
  681.  show get m.lhdproj
  682.  return
  683.  ENDIF
  684.  show get m.lhdproj
  685. SHOW GET m.lhftype ENABLE
  686. _CUROBJ=OBJNUM(m.lhftype)
  687.  
  688.  
  689. *       *********************************************************
  690. *       *                                                         
  691. *       * _QDP1C15DY           m.lhDProj WHEN                     
  692. *       *                                                         
  693. *       * Function Origin:                                        
  694. *       *                                                         
  695. *       * From Platform:       Windows                            
  696. *       * From Screen:         PROJMAN,     Record Number:   11   
  697. *       * Variable:            m.lhDProj                          
  698. *       * Called By:           WHEN Clause                        
  699. *       * Snippet Number:      6                                  
  700. *       *                                                         
  701. *       *********************************************************
  702. *
  703. FUNCTION _qdp1c15dy     &&  m.lhDProj WHEN
  704. #REGION 1
  705. m.olddest=m.lhDProj
  706.  
  707. *       *********************************************************
  708. *       *                                                         
  709. *       * _QDP1C15LI           m.lhDProj VALID                    
  710. *       *                                                         
  711. *       * Function Origin:                                        
  712. *       *                                                         
  713. *       * From Platform:       Windows                            
  714. *       * From Screen:         PROJMAN,     Record Number:   11   
  715. *       * Variable:            m.lhDProj                          
  716. *       * Called By:           VALID Clause                       
  717. *       * Snippet Number:      7                                  
  718. *       *                                                         
  719. *       *********************************************************
  720. *
  721. FUNCTION _qdp1c15li     &&  m.lhDProj VALID
  722. #REGION 1
  723. if not empty(laseleList) and not empty(m.oldDest) and not choice('Selected Items not yet moved. Continue')
  724.   store m.oldDest to m.lhdproj
  725.   show get m.lholdproj
  726.   return
  727. endif
  728.  
  729.  
  730. IF EMPTY(m.lhdproj)
  731.     RETURN
  732. ENDIF
  733. PRIVATE lconer
  734. STORE ON('ERROR') TO lconer
  735. STORE .F. TO llfner
  736. ON ERROR STORE .T. TO llfner
  737. lnCurWa=SELECT(0)
  738. SELECT 0
  739. USE (m.lhDProj) AGAIN SHARE
  740. m.lcDAlias=ALIAS()
  741. USE
  742. SELECT (lnCurWa)
  743. ON ERROR &lconer
  744. IF llfner  && error found
  745.     WAIT WINDOW m.lhdproj+' is not a valid project'
  746.     m.lcDAlias=''
  747.     RETURN
  748. ELSE
  749.     SELE * FROM (m.lhdproj) INTO CURSOR holdproj
  750. ENDIF
  751. IF EMPTY(m.lhdproj)
  752.     m.lhdproj=SPACE(50)
  753.     RETURN
  754. ENDIF
  755. SHOW GET m.lhftype ENABLE
  756. _CUROBJ=OBJNUM(m.lhftype)
  757. SELE * FROM (m.lhdproj) INTO CURSOR HoldProj
  758.  
  759.  
  760. *       *********************************************************
  761. *       *                                                         
  762. *       * _QDP1C16I4           m.lhftype WHEN                     
  763. *       *                                                         
  764. *       * Function Origin:                                        
  765. *       *                                                         
  766. *       * From Platform:       Windows                            
  767. *       * From Screen:         PROJMAN,     Record Number:   12   
  768. *       * Variable:            m.lhftype                          
  769. *       * Called By:           WHEN Clause                        
  770. *       * Snippet Number:      8                                  
  771. *       *                                                         
  772. *       *********************************************************
  773. *
  774. FUNCTION _qdp1c16i4     &&  m.lhftype WHEN
  775. #REGION 1
  776. m.lholdtype=m.lhftype
  777.  
  778.  
  779. *       *********************************************************
  780. *       *                                                         
  781. *       * _QDP1C16O6           m.lhftype VALID                    
  782. *       *                                                         
  783. *       * Function Origin:                                        
  784. *       *                                                         
  785. *       * From Platform:       Windows                            
  786. *       * From Screen:         PROJMAN,     Record Number:   12   
  787. *       * Variable:            m.lhftype                          
  788. *       * Called By:           VALID Clause                       
  789. *       * Snippet Number:      9                                  
  790. *       *                                                         
  791. *       *********************************************************
  792. *
  793. FUNCTION _qdp1c16o6     &&  m.lhftype VALID
  794. #REGION 1
  795. IF m.lnSeleCnt > 0 AND NOT choice('Items already selected will be discarded')
  796.     m.lhftype=m.lholdtype
  797.     SHOW GETS
  798.     RETURN
  799. ENDIF
  800. =makelist()
  801.  
  802.  
  803. *       *********************************************************
  804. *       *                                                         
  805. *       * _QDP1C1716           m.lnFull VALID                     
  806. *       *                                                         
  807. *       * Function Origin:                                        
  808. *       *                                                         
  809. *       * From Platform:       Windows                            
  810. *       * From Screen:         PROJMAN,     Record Number:   13   
  811. *       * Variable:            m.lnFull                           
  812. *       * Called By:           VALID Clause                       
  813. *       * Snippet Number:      10                                 
  814. *       *                                                         
  815. *       *********************************************************
  816. *
  817. FUNCTION _qdp1c1716     &&  m.lnFull VALID
  818. #REGION 1
  819. lnLastKey = LASTKEY()
  820. =ValMover()
  821. IF lnLastKey = 13
  822.   _CUROBJ = OBJNUM(m.lnFull)
  823. ENDIF
  824.  
  825. *       *********************************************************
  826. *       *                                                         
  827. *       * _QDP1C17CF           m.lhMove VALID                     
  828. *       *                                                         
  829. *       * Function Origin:                                        
  830. *       *                                                         
  831. *       * From Platform:       Windows                            
  832. *       * From Screen:         PROJMAN,     Record Number:   14   
  833. *       * Variable:            m.lhMove                           
  834. *       * Called By:           VALID Clause                       
  835. *       * Snippet Number:      11                                 
  836. *       *                                                         
  837. *       *********************************************************
  838. *
  839. FUNCTION _qdp1c17cf     &&  m.lhMove VALID
  840. #REGION 1
  841. IF m.lhMove = 1
  842.   DO ValMover
  843. ELSE                                    && For each row
  844.   FOR i = 1 TO sizearry(@laFullList)
  845.     IF LEFT(laFullList[i,1],1) # "\"    && If not dimmed
  846.       IF m.lnSeleCnt+1 > ALEN(laSeleList,1)
  847.         DIMENSION laSeleList[m.lnSeleCnt+1,ALEN(laFullList,2)]
  848.       ENDIF
  849.       FOR j = 1 TO ALEN(laFullList,2)   && Fill all columns
  850.         laSeleList[m.lnSeleCnt+1,j] = laFullList[i,j]
  851.       ENDFOR
  852.       laFullList[i,1] = "\"+laFullList[i,1]
  853.       m.lnSeleCnt = m.lnSeleCnt + 1
  854.       m.lnFullCnt = m.lnFullCnt - 1
  855.       m.lnSelect = m.lnSeleCnt
  856.       IF NOT llNoSort
  857.         =ASORT(laSeleList,1,lnSeleCnt)
  858.       ENDIF
  859.     ENDIF
  860.   ENDFOR
  861.   SHOW GET m.lnSelect
  862.   SHOW GET m.lnFull
  863.   SHOW GET m.lhMove DISABLE
  864.   SHOW GET m.lhRemove ENABLE
  865.   SHOW GET m.lhCopy ENABLE
  866. ENDIF
  867.  
  868.  
  869. *       *********************************************************
  870. *       *                                                         
  871. *       * _QDP1C1844           m.lhRemove VALID                   
  872. *       *                                                         
  873. *       * Function Origin:                                        
  874. *       *                                                         
  875. *       * From Platform:       Windows                            
  876. *       * From Screen:         PROJMAN,     Record Number:   15   
  877. *       * Variable:            m.lhRemove                         
  878. *       * Called By:           VALID Clause                       
  879. *       * Snippet Number:      12                                 
  880. *       *                                                         
  881. *       *********************************************************
  882. *
  883. FUNCTION _qdp1c1844     &&  m.lhRemove VALID
  884. #REGION 1
  885. IF m.lhRemove = 1
  886.   DO ValRemove
  887. ELSE
  888.   DO ValRemAll
  889.  ENDIF
  890.  
  891. *       *********************************************************
  892. *       *                                                         
  893. *       * _QDP1C18I8           m.lnSelect VALID                   
  894. *       *                                                         
  895. *       * Function Origin:                                        
  896. *       *                                                         
  897. *       * From Platform:       Windows                            
  898. *       * From Screen:         PROJMAN,     Record Number:   16   
  899. *       * Variable:            m.lnSelect                         
  900. *       * Called By:           VALID Clause                       
  901. *       * Snippet Number:      13                                 
  902. *       *                                                         
  903. *       *********************************************************
  904. *
  905. FUNCTION _qdp1c18i8     &&  m.lnSelect VALID
  906. #REGION 1
  907. lnLastKey = LASTKEY()
  908. =ValRemove()
  909. IF lnLastKey = 13
  910.   _CUROBJ = OBJNUM(m.lnSelect)
  911. ENDIF
  912.  
  913. *       *********************************************************
  914. *       *                                                         
  915. *       * _QDP1C18TG           m.lhcopy VALID                     
  916. *       *                                                         
  917. *       * Function Origin:                                        
  918. *       *                                                         
  919. *       * From Platform:       Windows                            
  920. *       * From Screen:         PROJMAN,     Record Number:   17   
  921. *       * Variable:            m.lhcopy                           
  922. *       * Called By:           VALID Clause                       
  923. *       * Snippet Number:      14                                 
  924. *       *                                                         
  925. *       *********************************************************
  926. *
  927. FUNCTION _qdp1c18tg     &&  m.lhcopy VALID
  928. #REGION 1
  929. PRIVATE lnItems, lnI
  930. lnitems=sizearry(@laSeleList)
  931. IF lnitems <1
  932.     WAIT WINDOW 'Nothing to do'
  933.     RETURN
  934. ENDIF
  935. IF EMPTY(m.lcDAlias)
  936.     WAIT WINDOW 'Choose Destination Project Please'
  937.     _CUROBJ=OBJNUM(m.lhDProj)
  938.     RETURN
  939. ENDIF
  940. WAIT WINDOW 'Copying Files...' NOWAIT
  941. FOR lnI=1 TO lnItems
  942.     lnRecNo=laSeleList[lnI,3]
  943.     SELECT (m.lcSAlias)
  944.     GO lnRecNo
  945.     DO CASE
  946.         PRIVATE lnINo,laSSetIN,lnI2
  947.     CASE laSeleList[lnI,2]='S'  && screen sets
  948.         lnIDNo=setID
  949.         RELEASE laSSetIN
  950.         SELE * FROM (m.lhSProj) ;
  951.             INTO ARRAY laSSetIN ;
  952.             WHERE setid=lnIDNo AND UPPER(TYPE)='S'
  953.         RELEASE lnIDNo
  954.         ***Find Maximum SETID
  955.         SELE MAX(setid) FROM (m.lhDProj) ;
  956.             WHERE TYPE#'H' ;
  957.             INTO ARRAY lnIDNo
  958.         IF TYPE('lnIDNo')='N'
  959.             lnIDNo=lnIDNo + 1
  960.         ELSE
  961.             lnIDNo=1
  962.         ENDIF
  963.         SELECT (m.lcDAlias)
  964.         LOCATE FOR TYPE='H'
  965.         IF NOT FOUND()
  966.             WAIT WINDOW 'INVALID PROJECT FILE'
  967.             CLEAR ALL
  968.             CANCEL
  969.         ENDIF
  970.         REPLACE setid WITH lnIDNo
  971.         lnIScr=ALEN(laSSetIn,1)
  972.         FOR lnI2=1 TO lnIScr
  973.             laSSetIn[lnI2,6]=lnIDNo
  974.         ENDFOR
  975.         INSERT INTO (m.lhDProj) FROM ARRAY laSSetIn
  976.  
  977.     OTHERWISE
  978.         SCATTER MEMVAR MEMO
  979.         INSERT INTO (m.lhDProj) FROM MEMVAR
  980.     ENDCASE
  981. ENDFOR
  982. WAIT WINDOW 'Copy Completed' NOWAIT
  983. IF choice('Clear Selected Files List?')
  984.     do VALREMALL
  985. ENDIF
  986.  
  987.  
  988.  
  989. *       *********************************************************
  990. *       *                                                         
  991. *       * _QDP1C1A5B           m.lhviewde VALID                   
  992. *       *                                                         
  993. *       * Function Origin:                                        
  994. *       *                                                         
  995. *       * From Platform:       Windows                            
  996. *       * From Screen:         PROJMAN,     Record Number:   18   
  997. *       * Variable:            m.lhviewde                         
  998. *       * Called By:           VALID Clause                       
  999. *       * Snippet Number:      15                                 
  1000. *       *                                                         
  1001. *       *********************************************************
  1002. *
  1003. FUNCTION _qdp1c1a5b     &&  m.lhviewde VALID
  1004. #REGION 1
  1005. sele (m.lcDAlias)
  1006.   brow normal last nomodify nodelete noappend
  1007.  
  1008.  
  1009. *       *********************************************************
  1010. *       *                                                         
  1011. *       * _QDP1C1AEY           m.lhchngnm VALID                   
  1012. *       *                                                         
  1013. *       * Function Origin:                                        
  1014. *       *                                                         
  1015. *       * From Platform:       Windows                            
  1016. *       * From Screen:         PROJMAN,     Record Number:   19   
  1017. *       * Variable:            m.lhchngnm                         
  1018. *       * Called By:           VALID Clause                       
  1019. *       * Snippet Number:      16                                 
  1020. *       *                                                         
  1021. *       *********************************************************
  1022. *
  1023. FUNCTION _qdp1c1aey     &&  m.lhchngnm VALID
  1024. #REGION 1
  1025. SELECT (m.lcDAlias)
  1026. SET FILTER TO TYPE='S'
  1027. LOCATE
  1028. IF NOT FOUND()
  1029.     WAIT WINDOW 'No Screen Sets in Project'
  1030.     SET FILT TO
  1031.     RETURN
  1032. ENDIF
  1033. DEFINE POPUP mypop from wrow()/2,wcol()-30 PROMPT FIELD strippat(name)
  1034. on selection popup mypop do quititout
  1035. ACTI POPUP mypop
  1036. RELEASE POPUP mypop
  1037.     set filt to
  1038. IF NOT EOF() and lastkey()#27
  1039.     m.name=Name
  1040.     replace name with namechn(m.name)
  1041. ENDIF
  1042.  
  1043.  
  1044.  
  1045.  
  1046.  
  1047. *       *********************************************************
  1048. *       *                                                         
  1049. *       * _QDP1C1B0O           Read Level Activate                
  1050. *       *                                                         
  1051. *       * Function Origin:                                        
  1052. *       *                                                         
  1053. *       *                                                         
  1054. *       * From Platform:       Windows                            
  1055. *       * From Screen:         PROJMAN                            
  1056. *       * Called By:           READ Statement                     
  1057. *       * Snippet Number:      17                                 
  1058. *       *                                                         
  1059. *       *********************************************************
  1060. *
  1061. FUNCTION _qdp1c1b0o     && Read Level Activate
  1062. *
  1063. * Activate Code from screen: PROJMAN
  1064. *
  1065. #REGION 1
  1066. *IF EMPTY(laFullList)
  1067. *    SHOW GETS ONLY DISABLE
  1068. *    SHOW GET lhOK,2 ENABLE
  1069. *ENDIF
  1070.  
  1071. IF EMPTY(laSeleList)
  1072.     SHOW GET m.lhRemove DISABLE
  1073. ENDIF