/////////////////////////////////////////////////////////////////////////////
-// Name: imagtiff.h
+// Name: wx/imagtiff.h
// Purpose: wxImage TIFF handler
// Author: Robert Roebling
-// RCS-ID: $Id$
// Copyright: (c) Robert Roebling
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#ifndef _WX_IMAGTIFF_H_
#define _WX_IMAGTIFF_H_
-#ifdef __GNUG__
-#pragma interface "imagtiff.h"
-#endif
-
-#include "wx/image.h"
-
+#include "wx/defs.h"
//-----------------------------------------------------------------------------
// wxTIFFHandler
//-----------------------------------------------------------------------------
#if wxUSE_LIBTIFF
-class WXDLLEXPORT wxTIFFHandler: public wxImageHandler
-{
- DECLARE_DYNAMIC_CLASS(wxTIFFHandler)
+#include "wx/image.h"
+#include "wx/versioninfo.h"
+
+// defines for wxImage::SetOption
+#define wxIMAGE_OPTION_TIFF_BITSPERSAMPLE wxString(wxT("BitsPerSample"))
+#define wxIMAGE_OPTION_TIFF_SAMPLESPERPIXEL wxString(wxT("SamplesPerPixel"))
+#define wxIMAGE_OPTION_TIFF_COMPRESSION wxString(wxT("Compression"))
+#define wxIMAGE_OPTION_TIFF_PHOTOMETRIC wxString(wxT("Photometric"))
+#define wxIMAGE_OPTION_TIFF_IMAGEDESCRIPTOR wxString(wxT("ImageDescriptor"))
+
+// for backwards compatibility
+#define wxIMAGE_OPTION_BITSPERSAMPLE wxIMAGE_OPTION_TIFF_BITSPERSAMPLE
+#define wxIMAGE_OPTION_SAMPLESPERPIXEL wxIMAGE_OPTION_TIFF_SAMPLESPERPIXEL
+#define wxIMAGE_OPTION_COMPRESSION wxIMAGE_OPTION_TIFF_COMPRESSION
+#define wxIMAGE_OPTION_IMAGEDESCRIPTOR wxIMAGE_OPTION_TIFF_IMAGEDESCRIPTOR
+
+class WXDLLIMPEXP_CORE wxTIFFHandler: public wxImageHandler
+{
public:
+ wxTIFFHandler();
- inline wxTIFFHandler()
- {
- m_name = "TIFF file";
- m_extension = "tif";
- m_type = wxBITMAP_TYPE_TIF;
- m_mime = "image/tiff";
- };
+ static wxVersionInfo GetLibraryVersionInfo();
#if wxUSE_STREAMS
- virtual bool LoadFile( wxImage *image, wxInputStream& stream, bool verbose=TRUE, int index=0 );
- virtual bool SaveFile( wxImage *image, wxOutputStream& stream, bool verbose=TRUE );
- virtual bool DoCanRead( wxInputStream& stream );
- virtual int GetImageCount( wxInputStream& stream );
+ 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 int DoGetImageCount( wxInputStream& stream );
+ virtual bool DoCanRead( wxInputStream& stream );
#endif
+
+private:
+ DECLARE_DYNAMIC_CLASS(wxTIFFHandler)
};
-#endif
+#endif // wxUSE_LIBTIFF
-#endif
- // _WX_IMAGTIFF_H_
+#endif // _WX_IMAGTIFF_H_