#ifndef __FILESYS_H__
#define __FILESYS_H__
-#ifdef __GNUG__
-#pragma interface
+#if defined(__GNUG__) && !defined(__APPLE__)
+#pragma interface "filesys.h"
#endif
#include "wx/setup.h"
#include "wx/stream.h"
#include "wx/url.h"
#include "wx/datetime.h"
+#include "wx/filename.h"
class wxFSFile;
class wxFileSystemHandler;
class WXDLLEXPORT wxFSFile : public wxObject
{
public:
- wxFSFile(wxInputStream *stream, const wxString& loc,
+ wxFSFile(wxInputStream *stream, const wxString& loc,
const wxString& mimetype, const wxString& anchor,
wxDateTime modif)
{
wxString m_MimeType;
wxString m_Anchor;
wxDateTime m_Modif;
+
+ DECLARE_ABSTRACT_CLASS(wxFSFile)
+ DECLARE_NO_COPY_CLASS(wxFSFile)
};
// remove all items from the m_Handlers list
static void CleanUpHandlers();
+ // Returns the native path for a file URL
+ static wxFileName URLToFileName(const wxString& url);
+
+ // Returns the file URL for a native path
+ static wxString FileNameToURL(const wxFileName& filename);
+
+
protected:
wxString m_Path;
// the path (location) we are currently in
// handler that succeed in FindFirst query
DECLARE_DYNAMIC_CLASS(wxFileSystem)
+ DECLARE_NO_COPY_CLASS(wxFileSystem)
};
virtual wxFSFile* OpenFile(wxFileSystem& fs, const wxString& location);
virtual wxString FindFirst(const wxString& spec, int flags = 0);
virtual wxString FindNext();
-
+
// wxLocalFSHandler will prefix all filenames with 'root' before accessing
// files on disk. This effectively makes 'root' the top-level directory
- // and prevents access to files outside this directory.
+ // and prevents access to files outside this directory.
// (This is similar to Unix command 'chroot'.)
static void Chroot(const wxString& root) { ms_root = root; }
-
+
protected:
static wxString ms_root;
};