wxWidgets/include/wx/msw
Vadim Zeitlin bec9bf3e20 Finally really correct background erasing for wxMSW wxToolBar.
Do use TBSTYLE_FLAT and TBSTYLE_TRANSPARENT (the former actually implies the
latter) for MSW toolbar as it is the only way to avoid the flicker of toolbar
buttons. These styles were disabled before because of lack of understanding
about how they worked: with them, the toolbar supposes that its parent takes
care of erasing its background but wx didn't do this (in fact wxFrame did
accidentally erase toolbar background because of the use of Win32 client
rectangle, including tool/status bars, instead of wx client rectangle,
excluding them, in wxWindowMSW::DoEraseBackground(), but it didn't do it
correctly).

Now we allow hooking WM_ERASEBKGND events processing in a parent window by a
child one and use this to handle toolbar background erasing in toolbar itself.
We still prevent the native toolbar from drawing dummy separators and always
erase the area occupied by them ourselves and thus avoid the flicker entirely.

The only remaining flicker in the toolbar sample is that of embedded
wxStaticText control. It does appear with correctly transparent background and
bitmaps with alpha channel also (still) are drawn correctly in wxStaticBitmaps
embedded in the toolbar.

Finally, we still use solid background brush for toolbar but we can easily use
a themed background if really desired, there is just a single function to
change to do it (MSWGetToolbarBgBrush()).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62971 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-12-22 15:37:43 +00:00
..
ole
private
wince
accel.h
amd64.manifest
app.h
apptbase.h
apptrait.h
bitmap.h
blank.cur
bmpbuttn.h
bmpcbox.h
brush.h
bullseye.cur
button.h
calctrl.h
caret.h
cdrom.ico
checkbox.h
checklst.h
child.ico
chkconf.h
choice.h
clipbrd.h
colordlg.h
colour.h
colours.bmp
combo.h
combobox.h
computer.ico
control.h
crashrpt.h
cross.cur
csquery.bmp
ctrlsub.h
cursor.h
datectrl.h
dc.h
dcclient.h
dcmemory.h
dcprint.h
dcscreen.h
dde.h
debughlp.h
dialog.h
dib.h
dirdlg.h
dragimag.h
drive.ico
enhmeta.h
evtloop.h
fdrepdlg.h
file1.ico
filedlg.h
floppy.ico
folder1.ico
folder2.ico
font.h
fontdlg.h
frame.h
fswatcher.h
gauge.h
gccpriv.h
gdiimage.h
genrcdefs.h
glcanvas.h
hand.cur
headerctrl.h
helpbest.h
helpchm.h
helpwin.h
htmlhelp.h
ia64.manifest
icon.h
imaglist.h
iniconf.h
joystick.h
libraries.h
listbox.h
listctrl.h
magnif1.cur
mdi.h
mdi.ico
menu.h
menuitem.h
metafile.h
microwin.h
mimetype.h
minifram.h
missing.h
msgdlg.h
mslu.h
msvcrt.h
notebook.h
notifmsg.h
palette.h
pbrush.cur
pen.h
pencil.cur
pntleft.cur
pntright.cur
popupwin.h
printdlg.h
printwin.h
private.h
question.ico
radiobox.h
radiobut.h
rcdefs.h
regconf.h
region.h
registry.h
removble.ico
rightarr.cur
roller.cur
scrolbar.h
seh.h
setup0.h
setup_inc.h
slider.h
sound.h
spinbutt.h
spinctrl.h
stackwalk.h
statbmp.h
statbox.h
statline.h
stattext.h
statusbar.h
std.ico
stdpaths.h
subwin.h
taskbar.h
textctrl.h
textentry.h
tglbtn.h
tls.h
toolbar.h Finally really correct background erasing for wxMSW wxToolBar. 2009-12-22 15:37:43 +00:00
tooltip.h
toplevel.h
treectrl.h
uxtheme.h
uxthemep.h
window.h Finally really correct background erasing for wxMSW wxToolBar. 2009-12-22 15:37:43 +00:00
winundef.h
wrapcctl.h
wrapcdlg.h
wrapgdip.h
wrapshl.h
wrapwin.h
wx.manifest
wx.rc