X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e6c13db6ec2e73fea944771e0f318e9baa337f29..73bab6b44da953b35b902c9f3199582e4e76d89b:/include/wx/rawbmp.h diff --git a/include/wx/rawbmp.h b/include/wx/rawbmp.h index 2d43d81e29..568fd7c667 100644 --- a/include/wx/rawbmp.h +++ b/include/wx/rawbmp.h @@ -100,9 +100,11 @@ - index of the alpha component or -1 if none - type which can contain the full pixel value (all channels) */ -template + class Pixel = wxUint32> + struct WXDLLEXPORT wxPixelFormat { // iterator over pixels is usually of type "ChannelType *" @@ -320,7 +322,7 @@ struct WXDLLEXPORT wxPixelDataOut { m_pRGB += PixelFormat::SizePixel; if ( m_pAlpha ) - m_pAlpha += PixelFormat::SizePixel; + ++m_pAlpha; return *this; } @@ -621,27 +623,34 @@ struct WXDLLEXPORT wxPixelDataOut }; }; +#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 wxPixelData : public wxPixelDataOut::template wxPixelDataIn { public: - wxPixelData(Image& image) - : wxPixelDataOut::template wxPixelDataIn(image) - { - } + typedef + typename wxPixelDataOut::template wxPixelDataIn + Base; - wxPixelData(Image& i, const wxPoint& pt, const wxSize& sz) - : wxPixelDataOut::template wxPixelDataIn(i, pt, sz) - { - } + wxPixelData(Image& image) : Base(image) { } - wxPixelData(Image& i, const wxRect& rect) - : wxPixelDataOut::template wxPixelDataIn(i, rect) - { - } + wxPixelData(Image& i, const wxRect& rect) : Base(i, rect) { } + + wxPixelData(Image& i, const wxPoint& pt, const wxSize& sz) + : Base(i, pt, sz) + { + } }; + // some "predefined" pixel data classes typedef wxPixelData wxImagePixelData; typedef wxPixelData wxNativePixelData; @@ -670,6 +679,7 @@ struct WXDLLEXPORT wxPixelIterator : wxPixelData::Iterator #ifdef __VISUALC__ #pragma warning(default: 4355) + #pragma warning(default: 4097) #endif #endif // _WX_RAWBMP_H_BASE_