--- oup/current/Tools/Preview.pas 2007/02/21 03:12:33 109 +++ oup/current/Tools/Preview.pas 2007/05/24 17:48:18 192 @@ -29,7 +29,7 @@ type procedure SetBitmapCount(Count: Integer); procedure LoadImage(fileid, index: Integer); private - bitmaps: array of TBitmap; + bitmaps: array of TOniImage; actualimg: Byte; _fileid: Integer; public @@ -40,6 +40,7 @@ var implementation {$R *.dfm} +uses Imaging, ImagingComponents, ImagingTypes; procedure TForm_Preview.FormCreate(Sender: TObject); @@ -82,27 +83,14 @@ end; procedure TForm_Preview.LoadImage(fileid, index: Integer); -var - memstream: TMemoryStream; - OniImage: TOniImage; begin - OniImage := TOniImage.Create; - OniImage.Load(ConnectionID, fileid); - memstream := TMemoryStream.Create; - OniImage.GetAsBMP(TStream(memstream)); - OniImage.Free; - bitmaps[index].LoadFromStream(memstream); - memstream.Free; + bitmaps[index].Load(ConnectionID, fileid); end; procedure TForm_Preview.DrawImage(index: Integer); begin - BitBlt(img.Canvas.Handle, 0, 0, img.Width, img.Height, - bitmaps[index].Canvas.Handle, 0, 0, WHITENESS); - BitBlt(img.Canvas.Handle, 0, 0, bitmaps[index].Width, bitmaps[index].Height, - bitmaps[index].Canvas.Handle, 0, 0, SRCCOPY); - img.Invalidate; + bitmaps[index].DrawOnCanvas(img.Canvas, 0); end; @@ -121,7 +109,7 @@ begin i := Length(bitmaps); SetLength(bitmaps, Count); for i := i to High(bitmaps) do - bitmaps[i] := TBitmap.Create; + bitmaps[i] := TOniImage.Create; end; end; @@ -137,8 +125,8 @@ end; procedure TForm_Preview.PreviewTXAN; var loop_speed: Word; - linkcount: LongWord; - link: LongWord; + linkcount: Integer; + link: Integer; i: Byte; begin ConManager.Connection[ConnectionID].LoadDatFilePart(_fileid, $14, SizeOf(loop_speed), @loop_speed);