X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/870cf35c4596571462c5e2d1395428b135196b98..491acfc75e9bf12806e177b655f3fb7df53e7602:/include/wx/gifdecod.h diff --git a/include/wx/gifdecod.h b/include/wx/gifdecod.h index 0a1961d2f0..1520823157 100644 --- a/include/wx/gifdecod.h +++ b/include/wx/gifdecod.h @@ -18,6 +18,7 @@ #include "wx/stream.h" #include "wx/image.h" #include "wx/animdecod.h" +#include "wx/dynarray.h" // internal utility used to store a frame in 8bit-per-pixel format class GIFImage; @@ -45,7 +46,7 @@ enum wxGIFErrorCode // wxGIFDecoder class // -------------------------------------------------------------------------- -class WXDLLEXPORT wxGIFDecoder : public wxAnimationDecoder +class WXDLLIMPEXP_CORE wxGIFDecoder : public wxAnimationDecoder { public: // constructor, destructor, etc. @@ -75,7 +76,6 @@ public: void Destroy(); // implementation of wxAnimationDecoder's pure virtuals - virtual bool CanRead( wxInputStream& stream ) const; virtual bool Load( wxInputStream& stream ) { return LoadGIF(stream) == wxGIF_OK; } @@ -87,6 +87,15 @@ public: { return wxANIMATION_TYPE_GIF; } private: + // wxAnimationDecoder pure virtual + virtual bool DoCanRead( wxInputStream& stream ) const; + // modifies current stream position (see wxAnimationDecoder::CanRead) + + int getcode(wxInputStream& stream, int bits, int abfin); + wxGIFErrorCode dgif(wxInputStream& stream, + GIFImage *img, int interl, int bits); + + // array of all frames wxArrayPtrVoid m_frames; @@ -97,13 +106,9 @@ private: unsigned char m_buffer[256]; // buffer for reading unsigned char *m_bufp; // pointer to next byte in buffer - int getcode(wxInputStream& stream, int bits, int abfin); - wxGIFErrorCode dgif(wxInputStream& stream, - GIFImage *img, int interl, int bits); - - DECLARE_NO_COPY_CLASS(wxGIFDecoder) + wxDECLARE_NO_COPY_CLASS(wxGIFDecoder); }; -#endif // wxUSE_STREAM && wxUSE_GIF +#endif // wxUSE_STREAMS && wxUSE_GIF #endif // _WX_GIFDECOD_H_