Сергей Смирнов » 26.08.2007 18:13:09
Marc Weustink постарался:
--------------------------------------------------------------------------------
finally r11861, after some weeks of merging.... (i'm not sur if I do it
again this way)
Big outline of what is changed:
* Implemented basic alpha support
* Implemented LCL side of imagelist
* restructured rawimage to more OO
What does this mean for you ?
Alpha support:
- You now can load images with an alpha channel.
- The alpha channel can now also be part of the mask generation while
loading. TBitmap needs to be adjusted for that
- You can draw alpha images whithout loosing the alpha channel. Contrary
to windows, the (Stretch)(Mask)Blt function is alpha aware.
Imagelists:
Images in an imagelist are internally stored as one 32bit BGRA raw
image. This format is not compatible with older versions of lazarus.
This means that imagelists saved with r11861 can't be read with older
versions. Older versions of the imagelist can still be read.
TODO: the widgetset implementation, so that a "real" imagelisthandle can
be used. (important for win32)
If you want Old imagelist behaviour, eneble the IMGLIST_OLDSTYLE and
IMGLIST_KEEP_EXTRA defines in front of the TCustomImageList declaration
RawImage:
I transfered it form a reccord to an object and made all available proc
for it member functions. This way there is still no overhead (you can
use it like a record) but the IDE will show the available methods.
Also here, if you want the old behaviour, define OldRawImageProcs
Marc