[Lazarus] High-DPI TImageList
lainz
leandrodiazoe at gmail.com
Thu Feb 8 16:02:41 CET 2018
Hi, I have a component BGRAImageList that fixes basically the alpha channels
of the regular ImageList on Linux using BGRABitmap.
I did not code that component, but I'm the one that updates the package.
Sources:
https://github.com/bgrabitmap/bgracontrols/blob/master/bgraimagelist.pas
It works fine in 1.8, but in trunk there are changes like:
1.8
TCustomImageList = class(TLCLReferenceComponent)
1.9 is TCustomImageList = class(TLCLComponent), so the method
ReferenceNeeded is not available.
Questions:
- *What does ReferenceNeeded, and if it is necessary on 1.9*.
Another is this:
1.8
procedure Draw(ACanvas: TCanvas; AX, AY, AIndex: Integer; ADrawingStyle:
TDrawingStyle; AImageType: TImageType;
ADrawEffect: TGraphicsDrawEffect); overload; virtual;
1.9
procedure Draw(ACanvas: TCanvas; AX, AY, AIndex: Integer; ADrawingStyle:
TDrawingStyle; AImageType: TImageType;
ADrawEffect: TGraphicsDrawEffect); overload;
In 1.9 the virtual was removed and I can't use override anymore.
My question is *if the method still will be called instead of the LCL one in
1.9 without using override*. I know this is a basic of OOP but I need a bit
of help because I never use virtual and overload.
Another question: If I remove override to compile in 1.9, what happens in
1.8?
I never use IFDEF LCL_FULLVERSION and don't know how to use it, any chances
to have 2 different methods, one with override and other without, one for
1.8 and one for 1.9 or newer?
And the big question:
*Transparency is now or will be fixed on linux, so I don't need this
component anymore and I can archive it?*
--
Sent from: http://free-pascal-lazarus.989080.n3.nabble.com/
More information about the Lazarus
mailing list