]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/rawbmp.h
compilation fix
[wxWidgets.git] / include / wx / rawbmp.h
index 43e20ab6ede42c9d5147fd996b375345a668a55a..d4e9b60d45c7a740d83910c312cfb40fc5cb2e91 100644 (file)
     }
  */
 
-#ifdef __VISUALC__
-    // VC++ gives an absolutely harmless warning for wxPixelData<wxBitmap> ctor
-    #pragma warning(disable: 4355) // 'this' used in initializer list
-#endif
-
 /*
     Note: we do not use WXDLLEXPORT with classes in this file because VC++ has
     problems with exporting inner class defined inside a specialization of a
@@ -170,7 +165,7 @@ typedef wxPixelFormat<unsigned char, 24, 0, 1, 2> wxImagePixelFormat;
     #define wxPIXEL_FORMAT_ALPHA 3
 #elif defined(__WXGTK__)
     // Under GTK+ 2.X we use GdkPixbuf, which should be RGBA
-    typedef wxPixelFormat<unsigned char, 24, 0, 1, 2> wxNativePixelFormat;
+    typedef wxPixelFormat<unsigned char, 32, 0, 1, 2> wxNativePixelFormat;
 
     #define wxPIXEL_FORMAT_ALPHA 3
 #endif
@@ -525,6 +520,12 @@ struct wxPixelDataOut<wxBitmap>
                             bmp.GetRawData(data, PixelFormat::BitsPerPixel);
             }
 
+            // default constructor
+            Iterator()
+            {
+                m_ptr = NULL;
+            }
+            
             // return true if this iterator is valid
             bool IsOk() const { return m_ptr != NULL; }
 
@@ -657,14 +658,6 @@ struct wxPixelDataOut<wxBitmap>
 };
 #endif //wxUSE_GUI
 
-#ifdef __VISUALC__
-    // typedef-name 'foo' used as synonym for class-name 'bar'
-    // (VC++ gives this warning each time wxPixelData::Base is used but it
-    //  doesn't make any sense here -- what's wrong with using typedef instead
-    //  of class, this is what it is here for!)
-    #pragma warning(disable: 4097)
-#endif // __VISUALC__
-
 template <class Image, class PixelFormat = wxPixelFormatFor<Image> >
 class wxPixelData :
     public wxPixelDataOut<Image>::template wxPixelDataIn<PixelFormat>
@@ -712,14 +705,9 @@ typedef wxPixelData<wxBitmap, wxAlphaPixelFormat> wxAlphaPixelData;
     partial template specialization then and neither VC6 nor VC7 provide it.
  */
 template < class Image, class PixelFormat = wxPixelFormatFor<Image> >
-struct wxPixelIterator : wxPixelData<Image, PixelFormat>::Iterator
+struct wxPixelIterator : public wxPixelData<Image, PixelFormat>::Iterator
 {
 };
 
-#ifdef __VISUALC__
-    #pragma warning(default: 4355)
-    #pragma warning(default: 4097)
-#endif
-
 #endif // _WX_RAWBMP_H_BASE_