From 3aad6ce7bf0569ced31451b26a9111ba96b2d368 Mon Sep 17 00:00:00 2001 From: wp_xxyyzz Date: Wed, 20 Nov 2019 18:51:01 +0000 Subject: [PATCH] jvcllaz: Add method AddImageFromFile to TJvImageViewer for loading individual pictures. git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@7191 8e941d3f-bd1b-0410-a28a-d453659cc2b4 --- .../run/JvCustomControls/jvimagesviewer.pas | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/components/jvcllaz/run/JvCustomControls/jvimagesviewer.pas b/components/jvcllaz/run/JvCustomControls/jvimagesviewer.pas index d69bd1d43..63d551c00 100644 --- a/components/jvcllaz/run/JvCustomControls/jvimagesviewer.pas +++ b/components/jvcllaz/run/JvCustomControls/jvimagesviewer.pas @@ -133,6 +133,7 @@ type AItemRect, TextRect: TRect); override; public constructor Create(AOwner: TComponent); override; + function AddImageFromFile(const AFileName: String): Integer; virtual; function LoadImages: Boolean;virtual; procedure CustomSort(Compare: TListSortCompare); override; @@ -364,6 +365,7 @@ begin FreeAndNil(FPicture); end; + //=== { TJvImagesViewer } ==================================================== constructor TJvImagesViewer.Create(AOwner: TComponent); @@ -374,6 +376,21 @@ begin Color := clWindow; end; +function TJvImagesViewer.AddImageFromFile(const AFileName: String): Integer; +var + item: TJvViewerItem; + c: TJvViewerItemClass; +begin + c := GetItemClass; + if (c <> TJvPictureItem) then + raise Exception.Create('TJvImagesViewer can only handle TJvPictureItem objects'); + + item := c.Create(self); + TJvPictureItem(item).FileName := AFileName; + Result := Add(item); + Invalidate; +end; + function TJvImagesViewer.ScaleRect(ARect, RefRect: TRect): TRect; var w, h, cw, ch: Integer;