1 ///////////////////////////////////////////////////////////////////////////// 2 // Name: src/common/sckfile.cpp 3 // Purpose: File protocol 4 // Author: Guilhem Lavaux 5 // Modified by: 6 // Created: 20/07/97 7 // RCS-ID: $Id: sckfile.cpp 43836 2006-12-06 19:20:40Z VZ $ 8 // Copyright: (c) 1997, 1998 Guilhem Lavaux 9 // Licence: wxWindows licence 10 ///////////////////////////////////////////////////////////////////////////// 11 12 // For compilers that support precompilation, includes "wx.h". 13 #include "wx/wxprec.h" 14 15 #ifdef __BORLANDC__ 16 #pragma hdrstop 17 #endif 18 19 #if wxUSE_STREAMS && wxUSE_PROTOCOL_FILE 20 21 #ifndef WX_PRECOMP 22 #endif 23 24 #include "wx/uri.h" 25 #include "wx/wfstream.h" 26 #include "wx/protocol/file.h" 27 IMPLEMENT_DYNAMIC_CLASS(wxFileProto,wxProtocol)28IMPLEMENT_DYNAMIC_CLASS(wxFileProto, wxProtocol) 29 IMPLEMENT_PROTOCOL(wxFileProto, wxT("file"), NULL, false) 30 31 wxFileProto::wxFileProto() 32 : wxProtocol() 33 { 34 m_error = wxPROTO_NOERR; 35 } 36 ~wxFileProto()37wxFileProto::~wxFileProto() 38 { 39 } 40 GetInputStream(const wxString & path)41wxInputStream *wxFileProto::GetInputStream(const wxString& path) 42 { 43 wxFileInputStream *retval = new wxFileInputStream(wxURI::Unescape(path)); 44 if ( retval->Ok() ) 45 { 46 m_error = wxPROTO_NOERR; 47 48 return retval; 49 } 50 51 m_error = wxPROTO_NOFILE; 52 delete retval; 53 54 return NULL; 55 } 56 57 #endif // wxUSE_STREAMS && wxUSE_PROTOCOL_FILE 58