#DEFINE SAFETHIS !USED("This") AND VARTYPE(This) == "O" DEFINE CLASS LogoImage AS Image Storage = "C:\MyApp\Images" ValidWidth = 205 ValidHeight = 133 Proportional = .T. UniqueFileName = .T. FUNCTION Upload SAFETHIS LOCAL OriginalImageFile LOCAL TemporaryImageFile LOCAL FinalImageFile LOCAL TemporaryImage This.Picture = "" m.OriginalImageFile = GETPICT() IF !EMPTY(m.OriginalImageFile) m.TemporaryImageFile = ADDBS(SYS(2023)) + SYS(2015) + "." + JUSTEXT(m.OriginalImageFile) COPY FILE (m.OriginalImageFile) TO (m.TemporaryImageFile) m.TemporaryImage = CREATEOBJECT("image") m.TemporaryImage.Picture = m.TemporaryImageFile DOEVENTS IF (m.TemporaryImage.Width = This.ValidWidth AND m.TemporaryImage.Height = This.ValidHeight) OR ; (This.Proportional AND ; (ROUND(m.TemporaryImage.Width / This.ValidWidth, 0) = ROUND(m.TemporaryImage.Height / This.ValidHeight, 0))) IF This.UniqueFileName m.FinalImageFile = ADDBS(This.Storage) + SYS(2015) + "." + JUSTEXT(m.OriginalImageFile) ELSE m.FinalImageFile = This.Storage ENDIF COPY FILE (m.TemporaryImageFile) TO (m.FinalImageFile) This.Picture = m.FinalImageFile ENDIF ENDIF RETURN !EMPTY(This.Picture) ENDFUNC ENDDEFINE