rwu< ( @wwxwppppxpppppppwxwwwpwwwwwwwwxwwwwwwwwxwwwwwwwwwwwxppppwwwwpp ?BMv(xBMv(x         BMfv( p ̌̌BM>(~~?BMv(HGDtDxDDHHHHHHHpxHHHHBMv(x`hh`ffo`ffBMfv(pwwpwpwppwpwpwwwwpwwwwpwwwwwwwwwwwwwwwpwwwwwwwwwwwwBMfv(ODDODDDDODDDDDDODDDDDODDDODOBMfv(  ODDODDDDODDDDDDODDDDDODDDODOBMfv(  DDDDDDDDDDDDDDDDDDDDDBMfv(DDDDDDDDDDDDDDDDDDDDDBMfv(wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwpwwwpwwwpwwwpwwwpwwwpwwwpwwwpwwwpwwwpwww|wwwwwww|wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwBMv(BMv(DDDDHOHOHOHOHOHODHOOHDDDBMv(x  BMv( 0 0 0 0 0 0 0  0BMfv(4:X .b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b.b ( @wwwwpwwpwpwpwppwwwwwwwpwwwpwwwwwwwwwwwwpwwwwwwwwwwwp ( @ppp?p>>>? ( @wwqqqwqwwppwwxp? ( @333333333303333333333333333333333330+0333333 3??0 mPLATFORMCUNIQUEIDC TIMESTAMPN CLASSMCLASSLOCM!BASECLASSM%OBJNAMEM)PARENTM-PROPERTIESM1PROTECTEDM5METHODSM9OBJCODEM=OLEMAOLE2MERESERVED1MIRESERVED2MMRESERVED3MQRESERVED4MURESERVED5MYRESERVED6M]RESERVED7MaRESERVED8MeUSERMi COMMENT Class  WINDOWS _0Q50VMR1Y 754694178N/_@q8E* COMMENT RESERVED  WINDOWS _0Q50YYP36 754712820=!=+g WINDOWS _0Q50YYP3G 754712820x  WINDOWS _0Q50YYP3I 754615240 % WINDOWS _0Q50YYP3M 754712661~ WINDOWS _0Q50YYP3P 754712820 WINDOWS _0Q50YYP3R 754615240  WINDOWS _0Q50YYP3V 754615240  d WINDOWS _0Q50YYP3Z 754615240O : '  C   WINDOWS _0Q50YYP4U 754615240lWI;yU COMMENT RESERVED vM=VERSION = 3.00 activedocsPixelsClass1 activedoc activedocs mmx%U(<<,{8UPGT'TCPhotosActiveDocs.vcx C9UCHYPERLINKTARGETOPHOTOSSHOWContainerRelease,RunX1QQQQQA2qaqqQ1o  )mFHeight = 37 Width = 37 Caption = "ActiveDocs" Name = "activedocs" !Arial, 0, 9, 5, 15, 12, 32, 3, 0 photosPixelsClass9formphotos rr%) U H %Cx s,(( t,C <, CR,: Top of file#)  CUWBELLTHISFORMREFRESHMREFRESHCONTROLSClick,1bAQA1)rPROCEDURE Click SKIP - 1 IF BOF() DEFINE WINDOW wBell FROM 0,0 TO 5,40 ACTIVATE WINDOW wBell NOSHOW ?? CHR(7) RELEASE WINDOW wBell ThisForm.Refresh() WAIT WINDOW NOWAIT ; "Top of file" ENDIF GOTO TOP WITH ThisForm .mRefreshControls() ENDWITH ENDPROC Top = 0 Left = 374 Height = 21 Width = 21 Picture = ..\..\library\bmp\top.bmp Caption = "" StatusBarText = "Go to top picture" TabIndex = 6 ToolTipText = "Top" Name = "cmdTop" photoscmdTop commandbutton commandbutton uu%,U H %C#6 s,(( t,C <, CR,:Bottom of file  CUWBELLTHISFORMREFRESHMREFRESHCONTROLSClick,1QAA1)u$PROCEDURE Click SKIP - 1 IF BOF() GOTO BOTTOM DEFINE WINDOW wBell FROM 0,0 TO 5,40 ACTIVATE WINDOW wBell NOSHOW ?? CHR(7) RELEASE WINDOW wBell ThisForm.Refresh() WAIT WINDOW NOWAIT ; "Bottom of file" ENDIF WITH ThisForm .mRefreshControls() ENDWITH ENDPROC Top = 0 Left = 395 Height = 21 Width = 21 Picture = ..\..\library\bmp\previous.bmp Caption = "" StatusBarText = "Go to previous picture" TabIndex = 6 ToolTipText = "Previous" Name = "cmdPrevious" photos cmdPrevious commandbutton commandbutton llqk%#UH %C+w#) s,(( t,C <, CR,: Top of file  CUWBELLTHISFORMREFRESHMREFRESHCONTROLSClick,1AQbAA1)lPROCEDURE Click SKIP IF EOF() GOTO TOP DEFINE WINDOW wBell FROM 0,0 TO 5,40 ACTIVATE WINDOW wBell NOSHOW ?? CHR(7) RELEASE WINDOW wBell ThisForm.Refresh() WAIT WINDOW NOWAIT ; "Top of file" ENDIF WITH ThisForm .mRefreshControls() ENDWITH ENDPROC Top = 0 Left = 416 Height = 21 Width = 21 Picture = ..\..\library\bmp\next.bmp Caption = "" StatusBarText = "Go to next picture" TabIndex = 6 ToolTipText = "Next" Name = "cmdNext" photoscmdNext commandbutton commandbutton llqk%#UH %C+r s,(( t,C <, CR,: End of file#6  CUWBELLTHISFORMREFRESHMREFRESHCONTROLSClick,1AbAQA1)lPROCEDURE Click SKIP IF EOF() DEFINE WINDOW wBell FROM 0,0 TO 5,40 ACTIVATE WINDOW wBell NOSHOW ?? CHR(7) RELEASE WINDOW wBell ThisForm.Refresh() WAIT WINDOW NOWAIT ; "End of file" ENDIF GOTO BOTTOM WITH ThisForm .mRefreshControls() ENDWITH ENDPROC Top = 0 Left = 437 Height = 21 Width = 21 Picture = ..\..\library\bmp\bottom.bmp Caption = "" StatusBarText = "Go to bottom picture" TabIndex = 6 ToolTipText = "Bottom" Name = "cmdBottom" photos cmdBottom commandbutton commandbuttonBackStyle = 0 Caption = ("Record " + ALLTRIM(STR(RECNO())) + " of " + ALLTRIM(STR(RECCOUNT()))) Height = 17 Left = 0 Top = 0 Width = 200 Name = "lblRecordNumber" photoslblRecordNumberlabellabel }%=!U C5 T-%CPICSZECCC>\f TC+m Ta % CUTHISFORM MSELECTFILELLNEWDIRECTORY RCFILENAME RCPICSDIRMCREATEPICSTABLEClick,1r1AA1()3PROCEDURE Click ThisForm.mSelectFile() PRIVATE llNewDirectory llNewDirectory = .F. IF USED("PICS") SEEK UPPER(SUBS(ThisForm.rcFileName, LEN(ThisForm.rcPicsDir) + 1)) llNewDirectory = EOF() ELSE llNewDirectory = .T. ENDIF IF llNewDirectory ThisForm.mCreatePicsTable() ENDIF ENDPROC Top = 0 Left = 458 Height = 21 Width = 21 Picture = ..\..\library\bmp\save2.bmp Caption = "" StatusBarText = "Select picture from list" TabIndex = 6 ToolTipText = "Select" Name = "cmdSelect" photos cmdSelect commandbutton commandbutton 4S%zU T CU GCBACKBMPTHISFORM RCFILENAMERELEASEClick,11D)OPROCEDURE Click gcBackBmp = ThisForm.rcFileName ThisForm.Release() ENDPROC Top = 0 Left = 479 Height = 21 Width = 21 Picture = ..\..\library\bmp\close.bmp Caption = "" StatusBarText = "Close form" ToolTipText = "Close" Name = "cmdClose" photoscmdClose commandbutton commandbuttonPStretch = 1 Height = 440 Left = 0 Top = 0 Width = 500 Name = "imgPicture" photos imgPictureimageimageurcfilename rcpicsdir rcextension rlshowmessage *mselectfile *mrefreshcontrols *mgetdir *mcreatepicstable  activedocPROCEDURE ContainerRelease CLEAR EVENTS CLEAR ALL CLOSE ALL RELEASE ALL RELEASE WINDOWS ON SHUTDOWN QUIT ENDPROC PROCEDURE Run LPARAMETERS cHyperLinkTarget SET RESOURCE OFF LOCAL oPhotos oPhotos = NewObject("Photos", "ActiveDocs.vcx") oPhotos.SHOW() READ EVENTS ENDPROC A ((@r% o ] U4TCJPG|BMPSelect picture file:%C C0 TR,:File not found C%CPICSFECCC>\f CUTHISFORM RCFILENAMERELEASEPICS RCPICSDIRMREFRESHCONTROLS %CPICSC+ BTC`C`TCTC.T Record CCCOZ of CCCNZT C T C T C+ T C+ UTHISFORM RCFILENAME RCPICSDIRPICSFILENAME IMGPICTUREPICTUREINITCAPTIONLBLRECORDNUMBERCMDTOPENABLED CMDPREVIOUSCMDNEXT CMDBOTTOM5TC\%NTC=TC:%TC= BU LNSLASHPOS LNNAMELEN LNCOLONPOSTHISFORM RCFILENAME RCPICSDIR %C!B R,:Creating directory...QG.'h1CQPics.DBFCd& (CQPics.NDXG. 5 TCC.\TCC*.%C  < 7TC (iT CrPics< <, ECCC>\f.T Record CCCOZ of CCCNZ C <R UTHISFORM RCFILENAMEFILENAMELAPICS RCEXTENSION RCPICSDIRMGETDIR LNNUMTOPRT LNNUMPRTEDLCPCT WPROCSTATLBLRECORDNUMBERCAPTIONMREFRESHCONTROLS%CCQPics.DBF06 CQPics.DBF%CCQPics.NDX0k CQPics.NDX{8U TTT~TiTTT?T *T U THISFORM IMGPICTUREHEIGHTWIDTHCMDTOPLEFT CMDPREVIOUSCMDNEXT CMDBOTTOM CMDSELECTCMDCLOSEA . Ta%CPICSKFECCC>\fR,:Loading photos...QG.'h1CQPics.DBFCd& (CQPics.NDXG. 5 TjpgTPhotos/TC*.%ClaPicsbU%C  < 7 TC  (T C rPics<  <, ECCC>\f.T Record CCCOZ of CCCNZ C T-<R UTHISFORM LOCKSCREENPICS RCFILENAME RCPICSDIRFILENAMELAPICS RCEXTENSION LNNUMTOPRT LNNUMPRTEDLCPCT WPROCSTATLBLRECORDNUMBERCAPTIONMREFRESHCONTROLS%C-Click the Diskette button to load photos fromC ,a directory on your computer's local drives.www.WebWomper.comxT-UTHISFORM RLSHOWMESSAGE mselectfile,mrefreshcontrolsImgetdirmcreatepicstableDestroy]ResizeInit Activate 1BA1qA2AQ!A2aaAA2AAAaraAqqBAAqQ2QaAaAQA2!!aaaaaaA22qAAaraQAqqAAAAqQ2cA1 !(@x .H R VSo b^ _n~^)(iPROCEDURE mselectfile ThisForm.rcFileName = LOCFILE("", "JPG|BMP", ; "Select picture file:") IF EMPTY(ThisForm.rcFileName) OR NOT FILE(ThisForm.rcFileName) ThisForm.rcFileName = "" WAIT WINDOW NOWAIT ; "File not found" ThisForm.Release() ENDIF IF USED("PICS") SELECT Pics SEEK UPPER(SUBS(ThisForm.rcFileName, LEN(ThisForm.rcPicsDir) + 1)) ENDIF ThisForm.mRefreshControls() ENDPROC PROCEDURE mrefreshcontrols WITH ThisForm IF ALIAS() = "PICS" AND NOT EOF() .rcFileName = TRIM(.rcPicsDir) + TRIM(Pics.FileName) ENDIF CLEAR RESOURCES .imgPicture.Picture = .rcFileName .imgPicture.Init() .Caption = PROPER(.rcFileName) .lblRecordNumber.Caption = "Record " + ; ALLTRIM(STR(RECNO())) + " of " + ALLTRIM(STR(RECCOUNT())) .cmdTop.Enabled = NOT BOF() .cmdPrevious.Enabled = NOT BOF() .cmdNext.Enabled = NOT EOF() .cmdBottom.Enabled = NOT EOF() ENDWITH ENDPROC PROCEDURE mgetdir PRIVATE lnSlashPos, lnNameLen, lnColonPos lnSlashPos = RAT("\", ThisForm.rcFileName) IF lnSlashPos # 0 ThisForm.rcPicsDir = LEFT(ThisForm.rcFileName, lnSlashPos) ELSE lnColonPos = RAT(":", ThisForm.rcFileName) IF lnColonPos # 0 ThisForm.rcPicsDir = LEFT(ThisForm.rcFileName, lnColonPos) ENDIF ENDIF RETURN ThisForm.rcPicsDir ENDPROC PROCEDURE mcreatepicstable WITH ThisForm IF EMPTY(.rcFileName) RETURN ENDIF WAIT WINDOW NOWAIT ; "Creating directory..." USE SET SAFETY OFF CREATE TABLE (HOME()+ "Pics.DBF") ; (FileName C(100)) INDEX ; ON FileName ; TO (HOME() + "Pics.NDX") SET SAFETY ON PRIVATE laPics, m.FileName .rcExtension = SUBS(.rcFileName, AT(".", .rcFileName) + 1) .rcPicsDir = .mGetDir() ADIR(laPics, (.rcPicsDir + "*." + .rcExtension)) IF NOT EMPTY(laPics) RELEASE lnNumToPrt, lnNumPrted PUBLIC lnNumToPrt, lnNumPrted lnNumToPrt = ALEN(laPics) / 5 FOR lnNumPrted = 1 TO lnNumToPrt m.FileName = laPics[lnNumPrted, 1] INSERT INTO Pics FROM MEMVAR * lcPct = Thermom("Creating Directory", lnNumToPrt, lnNumPrted) ENDFOR RELEASE lnNumToPrt, lnNumPrted, lcPct RELEASE WINDOW wProcStat ENDIF SEEK UPPER(SUBS(.rcFileName, LEN(.rcPicsDir) + 1)) .lblRecordNumber.Caption = "Record " + ; ALLTRIM(STR(RECNO())) + " of " + ALLTRIM(STR(RECCOUNT())) .mRefreshControls() ENDWITH RELEASE laPics WAIT CLEAR ENDPROC PROCEDURE Destroy CLOSE ALL DATABASES IF FILE(HOME() + "Pics.DBF") ERASE (HOME() + "Pics.DBF") ENDIF IF FILE(HOME() + "Pics.NDX") ERASE (HOME() + "Pics.NDX") ENDIF CLEAR EVENTS ON SHUTDOWN QUIT ENDPROC PROCEDURE Resize WITH ThisForm .imgPicture.Height = .Height .imgPicture.Width = .Width .cmdTop.Left = .Width - 126 .cmdPrevious.Left = .Width - 105 .cmdNext.Left = .Width - 84 .cmdBottom.Left = .Width - 63 .cmdSelect.Left = .Width - 42 .cmdClose.Left = .Width - 21 ENDWITH ENDPROC PROCEDURE Init WITH ThisForm .LockScreen = .T. * .mSelectFile() IF USED("PICS") SELECT Pics SEEK UPPER(SUBS(.rcFileName, LEN(.rcPicsDir) + 1)) ENDIF * .mCreatePicsTable() WAIT WINDOW NOWAIT ; "Loading photos..." USE SET SAFETY OFF CREATE TABLE (HOME() + "Pics.DBF") ; (FileName C(100)) INDEX ; ON FileName ; TO (HOME() + "Pics.NDX") SET SAFETY ON PRIVATE laPics, m.FileName .rcExtension = "jpg" .rcPicsDir = "Photos/" .rcPicsDir = "" ADIR(laPics, (.rcPicsDir + "*." + .rcExtension)) IF TYPE("laPics") # "U" IF NOT EMPTY(laPics) RELEASE lnNumToPrt, lnNumPrted PUBLIC lnNumToPrt, lnNumPrted lnNumToPrt = ALEN(laPics) / 5 FOR lnNumPrted = 1 TO lnNumToPrt m.FileName = laPics[lnNumPrted, 1] INSERT INTO Pics FROM MEMVAR ENDFOR RELEASE lnNumToPrt, lnNumPrted, lcPct RELEASE WINDOW wProcStat ENDIF SEEK UPPER(SUBS(.rcFileName, LEN(.rcPicsDir) + 1)) .lblRecordNumber.Caption = "Record " + ; ALLTRIM(STR(RECNO())) + " of " + ALLTRIM(STR(RECCOUNT())) ENDIF .mRefreshControls() .LockScreen = .F. ENDWITH RELEASE laPics WAIT CLEAR ENDPROC PROCEDURE Activate IF ThisForm.rlShowMessage MESSAGEBOX("Click the Diskette button to load photos from" + ; CHR(13) + "a directory on your computer's local drives.", ; 0, "www.WebWomper.com") ThisForm.rlShowMessage = .F. ENDIF ENDPROC Top = 0 Left = 0 Height = 440 Width = 500 DoCreate = .T. ShowTips = .T. Caption = "Picture Display" rcfilename = rcpicsdir = rcextension = rlshowmessage = .T. Name = "photos" form%,F3      T-)Tc:\actdoc\vcx\activedocs.vcxT activedocsT Ct H T C   T C    M$T C    *T C     0T C      6T C       e<T C        BT C         HT C           vNT C            TT C             JZT C             `T C           %C O %C OTCCm] 'BCC m.lResultbU -6UP1P2P3P4P5P6P7P8P9P10P11P12NPARAMS OACTIVEDOC CCLASSLIB CMAINCLASSLRESULTSHOWDOCRUN%v7mE)dF s,(( t,C <,BUWBELL A2..\..\library\ico\camera1.ico..\..\library\bmp\save2.bmpsearch.bmpedit.bmpedit.msksortasc.bmpfilter.bmpprint.bmpbottom.bmpnext.bmpprevious.bmptop.bmpclose.bmpadd.bmpcopy.bmpdelete.bmphelp.bmpfoxbckgr.bmpindex.icofindfast.icoclipbrd2.icoprintery.ico..\vcx\activedocs.vcxactivedocs.vctc:\docume~1\dough\locals~1\temp\9xuk00sd.fxp..\library\vfp\prg\ringbell.prgc:\windows\temp\ringbell.fxp)''2<iGiPYeA pA z  ss??55++!!$$''f1f1Yo'Yo>u6W>uu