disable workaround for lack of alpha support in native static bitmap control for WinCE, apparently it breaks the display (#10093)

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56532 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2008-10-27 18:15:19 +00:00
parent 7323ff1aee
commit 9eb2347dc3
2 changed files with 11 additions and 0 deletions

View File

@@ -70,9 +70,11 @@ protected:
void SetImage(const wxGDIImage* image); void SetImage(const wxGDIImage* image);
void SetImageNoCopy( wxGDIImage* image ); void SetImageNoCopy( wxGDIImage* image );
#ifndef __WXWINCE__
// draw the bitmap ourselves here if the OS can't do it correctly (if it // draw the bitmap ourselves here if the OS can't do it correctly (if it
// can we leave it to it) // can we leave it to it)
void DoPaintManually(wxPaintEvent& event); void DoPaintManually(wxPaintEvent& event);
#endif // !__WXWINCE__
// we can have either an icon or a bitmap // we can have either an icon or a bitmap

View File

@@ -170,6 +170,10 @@ bool wxStaticBitmap::Create(wxWindow *parent,
// GetBestSize will work properly now, so set the best size if needed // GetBestSize will work properly now, so set the best size if needed
SetInitialSize(size); SetInitialSize(size);
// painting manually is reported not to work under Windows CE (see #10093),
// so don't do it there even if this probably means that alpha is not
// supported there -- but at least bitmaps without alpha appear correctly
#ifndef __WXWINCE__
// Windows versions before XP (and even XP if the application has no // Windows versions before XP (and even XP if the application has no
// manifest and so the old comctl32.dll is used) don't draw correctly the // manifest and so the old comctl32.dll is used) don't draw correctly the
// images with alpha channel so we need to draw them ourselves and it's // images with alpha channel so we need to draw them ourselves and it's
@@ -179,6 +183,7 @@ bool wxStaticBitmap::Create(wxWindow *parent,
{ {
Connect(wxEVT_PAINT, wxPaintEventHandler(wxStaticBitmap::DoPaintManually)); Connect(wxEVT_PAINT, wxPaintEventHandler(wxStaticBitmap::DoPaintManually));
} }
#endif // !__WXWINCE__
return true; return true;
} }
@@ -252,6 +257,8 @@ wxSize wxStaticBitmap::DoGetBestSize() const
return wxSize(16, 16); return wxSize(16, 16);
} }
#ifndef __WXWINCE__
void wxStaticBitmap::DoPaintManually(wxPaintEvent& WXUNUSED(event)) void wxStaticBitmap::DoPaintManually(wxPaintEvent& WXUNUSED(event))
{ {
wxPaintDC dc(this); wxPaintDC dc(this);
@@ -274,6 +281,8 @@ void wxStaticBitmap::DoPaintManually(wxPaintEvent& WXUNUSED(event))
true /* use mask */); true /* use mask */);
} }
#endif // !__WXWINCE__
void wxStaticBitmap::SetImage( const wxGDIImage* image ) void wxStaticBitmap::SetImage( const wxGDIImage* image )
{ {
wxGDIImage* convertedImage = ConvertImage( *image ); wxGDIImage* convertedImage = ConvertImage( *image );