]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/imaggif.h
Make SaveFile and LoadFile virtual so they can be overridden
[wxWidgets.git] / include / wx / imaggif.h
index 653f2bca50c167df5c922f655dcb8195c67250f5..493dbb09e6b01d3c3a073012ac4fc630d17fd597 100644 (file)
@@ -1,45 +1,48 @@
 /////////////////////////////////////////////////////////////////////////////
 // Name:        imaggif.h
 /////////////////////////////////////////////////////////////////////////////
 // Name:        imaggif.h
-// Purpose:     wxImage handler for GIFs (read-only)
-// Author:      Vaclav Slavik (of this header only)
+// Purpose:     wxImage GIF handler
+// Author:      Vaclav Slavik & Guillermo Rodriguez Garcia
+// RCS-ID:      $Id$
+// Copyright:   (c) Guillermo Rodriguez Garcia
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef _WX_IMAGGIF_H_
 #define _WX_IMAGGIF_H_
 
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef _WX_IMAGGIF_H_
 #define _WX_IMAGGIF_H_
 
-#ifdef __GNUG__
-#pragma interface "imaggif.h"
-#endif
+#include "wx/image.h"
 
 
-#include <wx/setup.h>
-#include <wx/object.h>
-#include <wx/string.h>
-#include <wx/gdicmn.h>
-#include <wx/stream.h>
-#include <wx/image.h>
 
 //-----------------------------------------------------------------------------
 // wxGIFHandler
 //-----------------------------------------------------------------------------
 
 
 //-----------------------------------------------------------------------------
 // wxGIFHandler
 //-----------------------------------------------------------------------------
 
+#if wxUSE_GIF
+
 class WXDLLEXPORT wxGIFHandler : public wxImageHandler
 {
 class WXDLLEXPORT wxGIFHandler : public wxImageHandler
 {
-  DECLARE_DYNAMIC_CLASS(wxGIFHandler)
-
 public:
 public:
+    inline wxGIFHandler()
+    {
+        m_name = wxT("GIF file");
+        m_extension = wxT("gif");
+        m_type = wxBITMAP_TYPE_GIF;
+        m_mime = wxT("image/gif");
+    }
+
+#if wxUSE_STREAMS
+    virtual bool LoadFile( wxImage *image, wxInputStream& stream, bool verbose=true, int index=-1 );
+    virtual bool SaveFile( wxImage *image, wxOutputStream& stream, bool verbose=true );
+protected:
+    virtual bool DoCanRead( wxInputStream& stream );
+#endif
 
 
-  inline wxGIFHandler()
-  {
-      m_name = "GIF file";
-      m_extension = "gif";
-      m_type = wxBITMAP_TYPE_GIF;
-  };
-
-  virtual bool LoadFile( wxImage *image, wxInputStream& stream );
-  virtual bool SaveFile( wxImage *image, wxOutputStream& stream );
+private:
+    DECLARE_DYNAMIC_CLASS(wxGIFHandler)
 };
 };
+#endif
+
 
 #endif
 
 #endif
-    // _WX_IMAGGIF_H_
+  // _WX_IMAGGIF_H_