X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/700ec4546cfa7a89b3bca0a4eb5b6ee9d43ac17a..b5b62eea2d61deb499f24ed75ff1513975319bce:/src/common/imagpnm.cpp diff --git a/src/common/imagpnm.cpp b/src/common/imagpnm.cpp index ec9edd90b1..a11007de33 100644 --- a/src/common/imagpnm.cpp +++ b/src/common/imagpnm.cpp @@ -7,10 +7,9 @@ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -/* - We don't put pragma implement in this file because it is already present in - src/common/image.cpp -*/ +#ifdef __GNUG__ +#pragma implementation "imagpnm.h" +#endif // For compilers that support precompilation, includes "wx.h". #include "wx/wxprec.h" @@ -23,19 +22,18 @@ # include "wx/setup.h" #endif -#if wxUSE_PNM +#if wxUSE_IMAGE && wxUSE_PNM -#include "wx/image.h" +#include "wx/imagpnm.h" #include "wx/log.h" +#include "wx/intl.h" #include "wx/txtstrm.h" //----------------------------------------------------------------------------- // wxBMPHandler //----------------------------------------------------------------------------- -#if !USE_SHARED_LIBRARIES IMPLEMENT_DYNAMIC_CLASS(wxPNMHandler,wxImageHandler) -#endif #if wxUSE_STREAMS @@ -50,7 +48,7 @@ void Skip_Comment(wxInputStream &stream) } } -bool wxPNMHandler::LoadFile( wxImage *image, wxInputStream& stream, bool WXUNUSED(verbose), int WXUNUSED(index) ) +bool wxPNMHandler::LoadFile( wxImage *image, wxInputStream& stream, bool verbose, int WXUNUSED(index) ) { wxUint32 width, height; wxUint16 maxval; @@ -69,18 +67,19 @@ bool wxPNMHandler::LoadFile( wxImage *image, wxInputStream& stream, bool WXUNUSE if (buf_stream.GetC()==wxT('P')) c=buf_stream.GetC(); switch (c) - { - case wxT('2'): - wxLogError(wxT("Loading Grey Ascii PNM image is not yet implemented.")); - return FALSE; - case wxT('5'): - wxLogError(wxT("Loading Grey Raw PNM image is not yet implemented.")); - return FALSE; - case wxT('3'): case wxT('6'): break; - default : - wxLogError(wxT("Loading PNM image : file not recognized.")); - return FALSE; - } + { + case wxT('2'): + if (verbose) wxLogError(_("Loading Grey Ascii PNM image is not yet implemented.")); + return FALSE; + case wxT('5'): + if (verbose) wxLogError(_("Loading Grey Raw PNM image is not yet implemented.")); + return FALSE; + case wxT('3'): + case wxT('6'): break; + default: + if (verbose) wxLogError(_("PNM: File format is not recognized.")); + return FALSE; + } text_stream.ReadLine(); // for the \n Skip_Comment(buf_stream); @@ -93,7 +92,8 @@ bool wxPNMHandler::LoadFile( wxImage *image, wxInputStream& stream, bool WXUNUSE unsigned char *ptr = image->GetData(); if (!ptr) { - wxLogError( wxT("Cannot allocate RAM for RGB data in PNM file.") ); + if (verbose) + wxLogError( _("PNM: Couldn't allocate memory.") ); return FALSE; } @@ -109,7 +109,7 @@ bool wxPNMHandler::LoadFile( wxImage *image, wxInputStream& stream, bool WXUNUSE if (buf_stream.LastError()!=wxSTREAM_NOERROR) { - wxLogError(wxT("Loading PNM image : file seems truncated.")); + if (verbose) wxLogError(_("PNM: File seems truncated.")); return FALSE; } } @@ -137,8 +137,6 @@ bool wxPNMHandler::SaveFile( wxImage *image, wxOutputStream& stream, bool WXUNUS bool wxPNMHandler::DoCanRead( wxInputStream& stream ) { - off_t pos = stream.TellI(); - Skip_Comment(stream); if ( stream.GetC() == 'P' ) @@ -147,12 +145,10 @@ bool wxPNMHandler::DoCanRead( wxInputStream& stream ) { case '3': case '6': - stream.SeekI(pos); return TRUE; } } - stream.SeekI(pos); return FALSE; }