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