]> git.saurik.com Git - wxWidgets.git/commitdiff
implement wxHAVE_RAW_BITMAP
authorChris Elliott <biol75@york.ac.uk>
Fri, 2 May 2003 12:58:00 +0000 (12:58 +0000)
committerChris Elliott <biol75@york.ac.uk>
Fri, 2 May 2003 12:58:00 +0000 (12:58 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@20436 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

include/wx/platform.h
samples/image/image.cpp
src/msw/bitmap.cpp
src/msw/dc.cpp

index 5ad287d09c94673f150da3e818c8e071dadd7d90..dfcbfb232954988a18f14f60712c9e2c83e1e753 100644 (file)
     #endif
 #endif
 
+#if defined (__WXMSW__)
+    #if !defined(__DIGITALMARS__) && !defined(__WATCOMC__)
+        #define wxHAVE_RAW_BITMAP
+    #endif
+#endif
 
 #endif /* _WX_PLATFORM_H_ */
 
index 6306f97c77b4f806356a8cda4381c069d5a7d604..8661adaaed8fa7f69759664a9f1222cf1c555922 100644 (file)
 #if !defined(__WINDOWS__) || wxUSE_XPM_IN_MSW
     #include "smile.xpm"
 #endif
+#include "wx/rawbmp.h"
 
-#if defined(__WXMSW__)
-    #define wxHAVE_RAW_BITMAP
-#endif
 
 // derived classes
 
@@ -833,6 +831,7 @@ MyFrame::MyFrame()
 
   wxMenu *menuImage = new wxMenu;
   menuImage->Append( ID_NEW, _T("&Show any image...\tCtrl-O"));
+
 #ifdef wxHAVE_RAW_BITMAP
   menuImage->Append( ID_SHOWRAW, _T("Test &raw bitmap...\tCtrl-R"));
 #endif
index 7df1437372bf93a48d23aacbaef9f0ee800abf61..039c3b8e9350af3aa7ce467ff3b5ef96953729c4 100644 (file)
@@ -50,7 +50,9 @@
 #include "wx/image.h"
 #include "wx/xpmdecod.h"
 
+#ifdef wxHAVE_RAW_BITMAP
 #include "wx/rawbmp.h"
+#endif
 
 // missing from mingw32 header
 #ifndef CLR_INVALID
@@ -1187,6 +1189,7 @@ void wxBitmap::SetQuality(int WXUNUSED(quality))
 // raw bitmap access support
 // ----------------------------------------------------------------------------
 
+#ifdef wxHAVE_RAW_BITMAP
 void *wxBitmap::GetRawData(wxPixelDataBase& data, int bpp)
 {
     if ( !Ok() )
@@ -1317,6 +1320,7 @@ void wxBitmap::UngetRawData(wxPixelDataBase& dataBase)
         }
     }
 }
+#endif // #ifdef wxHAVE_RAW_BITMAP
 
 // ----------------------------------------------------------------------------
 // wxMask
index e1b6743cd47b843f08a580d490a8f4102da0fc4e..eac0d93d08b1c03e5060cf80f17cb195696b4652 100644 (file)
 #include "wx/dcprint.h"
 #include "wx/module.h"
 #include "wx/dynload.h"
+
+#ifdef wxHAVE_RAW_BITMAP
 #include "wx/rawbmp.h"
+#endif
 
 #include <string.h>
 #include <math.h>
@@ -114,9 +117,12 @@ static const int MM_METRIC = 10;
 // convert degrees to radians
 static inline double DegToRad(double deg) { return (deg * M_PI) / 180.0; }
 
+
+#ifdef wxHAVE_RAW_BITMAP
 // our (limited) AlphaBlend() replacement
 static void
 wxAlphaBlend(wxDC& dc, int x, int y, int w, int h, const wxBitmap& bmp);
+#endif
 
 // ----------------------------------------------------------------------------
 // private classes
@@ -656,7 +662,7 @@ void wxDC::DoDrawCheckMark(wxCoord x1, wxCoord y1,
     wxCoord x2 = x1 + width,
             y2 = y1 + height;
 
-#if defined(__WIN32__) && !defined(__SC__) && !defined(__WXMICROWIN__)
+#if defined(__WIN32__) && !defined(__SYMANTEC__) && !defined(__WXMICROWIN__)
     RECT rect;
     rect.left   = x1;
     rect.top    = y1;
@@ -1007,7 +1013,11 @@ void wxDC::DoDrawBitmap( const wxBitmap &bmp, wxCoord x, wxCoord y, bool useMask
         }
         else // use our own (probably much slower) implementation
         {
+#ifdef wxHAVE_RAW_BITMAP
             wxAlphaBlend(*this, x, y, width, height, bmp);
+#else
+            wxLogLastError(_T("AlphaBlend not available with this compiler setup"));
+#endif //#ifdef wxHAVE_RAW_BITMAP
         }
 
         return;
@@ -2299,6 +2309,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxDCModule, wxModule)
 // wxAlphaBlend: our fallback if ::AlphaBlend() is unavailable
 // ----------------------------------------------------------------------------
 
+#ifdef wxHAVE_RAW_BITMAP
 static void
 wxAlphaBlend(wxDC& dc, int xDst, int yDst, int w, int h, const wxBitmap& bmpSrc)
 {
@@ -2354,3 +2365,4 @@ wxAlphaBlend(wxDC& dc, int xDst, int yDst, int w, int h, const wxBitmap& bmpSrc)
     }
 }
 
+#endif // #ifdef wxHAVE_RAW_BITMAP