Dmitry Timoshkov dmitry@baikal.ru writes:
Alexandre Julliard julliard@winehq.org wrote:
My question was whether it's drawn with transparency in that case, since it's not really specified in which cases a DDB is considered to have an alpha channel.
In order to draw it with a transparency it's necessary to create a 32-bpp DIB section, copy source bitmap bits, and use GdiAlphaBlend() with a DIB section. Basically my patch does all of this.
Yes of course. My question was whether on Windows it's drawn transparent even for the DDB case. I guess the answer is yes since you have an app that does this, but a small test case wouldn't hurt.
I just added the code to my test app to draw a bitmap with BitBlt() loaded with LoadBitmap() (instead of assigning it to the Static control), and the result is drawn without transparency under Windows.
But if you assign it to the Static control it's transparent, right? And it's really a DDB, right?
Just want to make sure that we need special handling there, and that it's not the app getting a DDB when it should be getting a DIB or something like that.