]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/filesys.h
Use /bin/echo for creation of Mac OS X PkgInfo files.
[wxWidgets.git] / interface / wx / filesys.h
index 561f457966a463ed7cd22bdbcfe27b608664c70d..17157177da50c5497c9c60a4a680a5865044490b 100644 (file)
@@ -3,7 +3,7 @@
 // Purpose:     interface of wxFileSystem, wxFileSystemHandler, wxFSFile
 // Author:      wxWidgets team
 // RCS-ID:      $Id$
 // Purpose:     interface of wxFileSystem, wxFileSystemHandler, wxFSFile
 // Author:      wxWidgets team
 // RCS-ID:      $Id$
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 
 /////////////////////////////////////////////////////////////////////////////
 
 
@@ -61,6 +61,11 @@ public:
     */
     static void AddHandler(wxFileSystemHandler* handler);
 
     */
     static void AddHandler(wxFileSystemHandler* handler);
 
+    /**
+       Remove a filesystem handler from the list of handlers.
+    */
+    static wxFileSystemHandler* RemoveHandler(wxFileSystemHandler *handler);
+    
     /**
         Sets the current location. @a location parameter passed to OpenFile() is
         relative to this path.
     /**
         Sets the current location. @a location parameter passed to OpenFile() is
         relative to this path.
@@ -160,6 +165,11 @@ public:
         Passing @e "wxFS_READ | wxFS_SEEKABLE" for @a flags will back
         a stream that is not natively seekable with memory or a file
         and return a stream that is always seekable.
         Passing @e "wxFS_READ | wxFS_SEEKABLE" for @a flags will back
         a stream that is not natively seekable with memory or a file
         and return a stream that is always seekable.
+
+        @note
+        The @a location argument is, despite this method's name @em not
+        a filename. It is a "location", aka wxFileSystem URL (see
+        @ref overview_fs).
     */
     wxFSFile* OpenFile(const wxString& location,
                        int flags = wxFS_READ);
     */
     wxFSFile* OpenFile(const wxString& location,
                        int flags = wxFS_READ);
@@ -238,7 +248,7 @@ public:
 
     /**
         Detaches the stream from the wxFSFile object. That is, the
 
     /**
         Detaches the stream from the wxFSFile object. That is, the
-        stream obtained with GetStream() will continue its existance
+        stream obtained with GetStream() will continue its existence
         after the wxFSFile object is deleted.
 
         You will have to delete the stream yourself.
         after the wxFSFile object is deleted.
 
         You will have to delete the stream yourself.
@@ -331,7 +341,7 @@ public:
 
     @beginWxPerlOnly
     In wxPerl, you need to derive your file system handler class
 
     @beginWxPerlOnly
     In wxPerl, you need to derive your file system handler class
-    from Wx::PlFileSystemHandler.
+    from @c Wx::PlFileSystemHandler.
     @endWxPerlOnly
 
     @library{wxbase}
     @endWxPerlOnly
 
     @library{wxbase}
@@ -383,6 +393,32 @@ public:
     */
     virtual wxString FindNext();
 
     */
     virtual wxString FindNext();
 
+    /**
+        Returns the MIME type based on @b extension of @a location.
+        (While wxFSFile::GetMimeType() returns real MIME type - either
+         extension-based or queried from HTTP.)
+
+        Example:
+        @code
+        GetMimeTypeFromExt("index.htm") == "text/html"
+        @endcode
+    */
+    static wxString GetMimeTypeFromExt(const wxString& location);
+
+    /**
+        Opens the file and returns wxFSFile pointer or @NULL if failed.
+        Must be overridden in derived handlers.
+
+        @param fs
+            Parent FS (the FS from that OpenFile was called).
+            See the ZIP handler for details of how to use it.
+        @param location
+            The absolute location of file.
+    */
+    virtual wxFSFile* OpenFile(wxFileSystem& fs, const wxString& location) = 0;
+
+protected:
+
     /**
         Returns the anchor if present in the location.
         See wxFSFile::GetAnchor for details.
     /**
         Returns the anchor if present in the location.
         See wxFSFile::GetAnchor for details.
@@ -406,18 +442,6 @@ public:
     */
     static wxString GetLeftLocation(const wxString& location);
 
     */
     static wxString GetLeftLocation(const wxString& location);
 
-    /**
-        Returns the MIME type based on @b extension of @a location.
-        (While wxFSFile::GetMimeType() returns real MIME type - either
-         extension-based or queried from HTTP.)
-
-        Example:
-        @code
-        GetMimeTypeFromExt("index.htm") == "text/html"
-        @endcode
-    */
-    static wxString GetMimeTypeFromExt(const wxString& location);
-
     /**
         Returns the protocol string extracted from @a location.
 
     /**
         Returns the protocol string extracted from @a location.
 
@@ -437,17 +461,5 @@ public:
         @endcode
     */
     static wxString GetRightLocation(const wxString& location);
         @endcode
     */
     static wxString GetRightLocation(const wxString& location);
-
-    /**
-        Opens the file and returns wxFSFile pointer or @NULL if failed.
-        Must be overridden in derived handlers.
-
-        @param fs
-            Parent FS (the FS from that OpenFile was called).
-            See the ZIP handler for details of how to use it.
-        @param location
-            The absolute location of file.
-    */
-    virtual wxFSFile* OpenFile(wxFileSystem& fs, const wxString& location) = 0;
 };
 
 };