home *** CD-ROM | disk | FTP | other *** search
- // Gets05.prg
- //
- // Illustrating searching GetList and invoking methods from
- // valid clauses
-
- MEMVAR GetList
-
- #translate GET_NUMBER(<c>) ;
- => ;
- Ascan(GetList, {|o| Upper(Trim(o:name)) == UPPER(<c>) })
-
-
- FUNCTION Gets05
-
- LOCAL nCopies := 0
- LOCAL cFileName := "Temp.doc "
- LOCAL lAll := .T.
- LOCAL lRange := .F.
- LOCAL nFromPage := 0, ;
- nToPage := 0
-
- Set(_SET_CONFIRM, .T.)
- CLEAR SCREEN
- @ 8, 8 TO 21, 48
- @ 10, 10 SAY " Print" GET cFileName
- @ 11, 10 SAY "Copies" GET nCopies PICTURE "999"
- @ 14, 10 TO 19, 46
- @ 14, 12 SAY "Pages"
- @ 16, 12 SAY " All" GET lAll PICTURE "Y" ;
- VALID {|o| SetRange(o, GetList) }
- @ 17, 12 SAY "Range" GET lRange PICTURE "Y" ;
- VALID {|o| SetAll(o, GetList) }
- @ 17, 25 SAY "From" GET nFromPage PICTURE "999" ;
- WHEN lRange COLOR "W/N,W/N"
- @ 17, 35 SAY "To" GET nToPage PICTURE "999" ;
- WHEN lRange COLOR "W/N,W/N"
- READ
-
- RETURN NIL
-
-
- FUNCTION SetRange(o, GetList)
-
- LOCAL oGetAll, nGet
-
- IF o:varGet()
- nGet := GET_NUMBER("LRANGE")
- GetList[nGet]:varPut(.F.)
- ENDIF
- DispRange(GetList)
-
- RETURN .T.
-
-
- FUNCTION SetAll(o, GetList)
-
- LOCAL nGet, oGetAll
-
- IF o:varGet()
- nGet := GET_NUMBER("LALL")
- oGetAll := GetList[nGet]
- oGetAll:varPut(.F.)
- oGetAll:display()
- ENDIF
- DispRange(GetList)
-
- RETURN .T.
-
-
- FUNCTION DispRange(GetList)
-
- LOCAL nGet, oGetRange, oGetFromPage, oGetToPage
-
- nGet := GET_NUMBER("LRANGE")
- oGetRange := GetList[nGet]
-
- nGet := GET_NUMBER("NFROMPAGE")
- oGetFromPage := GetList[nGet]
-
- nGet := GET_NUMBER("NTOPAGE")
- oGetToPage := GetList[nGet]
-
- IF oGetRange:varGet()
- oGetFromPage:colorSpec := "N/W,N/W"
- oGetToPage:colorSpec := "N/W,N/W"
- ELSE
- oGetFromPage:colorSpec := "W/N,W/N"
- oGetFromPage:varPut(0)
-
- oGetToPage:colorSpec := "W/N,W/N"
- oGetToPage:varPut(0)
- ENDIF
-
- oGetFromPage:display()
- oGetToPage:display()
- oGetRange:display()
-
- RETURN NIL