X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/870cf35c4596571462c5e2d1395428b135196b98..ab67e8874db324fab5223cc8d5dff8a8de3e2b77:/include/wx/anidecod.h?ds=sidebyside diff --git a/include/wx/anidecod.h b/include/wx/anidecod.h index bc048d3c85..15b3adfe11 100644 --- a/include/wx/anidecod.h +++ b/include/wx/anidecod.h @@ -12,14 +12,15 @@ #include "wx/defs.h" -#if wxUSE_STREAMS && wxUSE_ICO_CUR +#if wxUSE_STREAMS && (wxUSE_ICO_CUR || wxUSE_GIF) #include "wx/stream.h" #include "wx/image.h" #include "wx/animdecod.h" +#include "wx/dynarray.h" -class /*WXDLLEXPORT*/ wxANIFrameInfo; +class /*WXDLLIMPEXP_CORE*/ wxANIFrameInfo; // private implementation detail WX_DECLARE_EXPORTED_OBJARRAY(wxANIFrameInfo, wxANIFrameInfoArray); WX_DECLARE_EXPORTED_OBJARRAY(wxImage, wxImageArray); @@ -28,7 +29,7 @@ WX_DECLARE_EXPORTED_OBJARRAY(wxImage, wxImageArray); // wxANIDecoder class // -------------------------------------------------------------------------- -class WXDLLEXPORT wxANIDecoder : public wxAnimationDecoder +class WXDLLIMPEXP_CORE wxANIDecoder : public wxAnimationDecoder { public: // constructor, destructor, etc. @@ -43,7 +44,7 @@ public: virtual wxColour GetTransparentColour(unsigned int frame) const; // implementation of wxAnimationDecoder's pure virtuals - virtual bool CanRead( wxInputStream& stream ) const; + virtual bool Load( wxInputStream& stream ); bool ConvertToImage(unsigned int frame, wxImage *image) const; @@ -54,6 +55,10 @@ public: { return wxANIMATION_TYPE_ANI; } private: + // wxAnimationDecoder pure virtual: + virtual bool DoCanRead( wxInputStream& stream ) const; + // modifies current stream position (see wxAnimationDecoder::CanRead) + // frames stored as wxImage(s): ANI files are meant to be used mostly for animated // cursors and thus they do not use any optimization to encode differences between // two frames: they are just a list of images to display sequentially. @@ -67,10 +72,10 @@ private: static wxCURHandler sm_handler; - DECLARE_NO_COPY_CLASS(wxANIDecoder) + wxDECLARE_NO_COPY_CLASS(wxANIDecoder); }; -#endif // wxUSE_STREAM && wxUSE_ICO_CUR +#endif // wxUSE_STREAMS && (wxUSE_ICO_CUR || wxUSE_GIF) #endif // _WX_ANIDECOD_H