]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/filesys.h
Add test for absence of events from wxSpinCtrlDouble ctor.
[wxWidgets.git] / interface / wx / filesys.h
index bc311541f5a6439550fe5e9d820737ff081efa0b..0f1b5b630dcd93cb111f7fcde785b6c806bbc509 100644 (file)
@@ -2,8 +2,7 @@
 // Name:        filesys.h
 // Purpose:     interface of wxFileSystem, wxFileSystemHandler, wxFSFile
 // Author:      wxWidgets team
 // Name:        filesys.h
 // Purpose:     interface of wxFileSystem, wxFileSystemHandler, wxFSFile
 // Author:      wxWidgets team
-// RCS-ID:      $Id$
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 
 /////////////////////////////////////////////////////////////////////////////
 
 
@@ -61,6 +60,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 +164,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 +247,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.
@@ -453,3 +462,41 @@ protected:
     static wxString GetRightLocation(const wxString& location);
 };
 
     static wxString GetRightLocation(const wxString& location);
 };
 
+
+/**
+    Input stream for virtual file stream files.
+
+    The stream reads data from wxFSFile obtained from wxFileSystem. It is
+    especially useful to allow using virtual files with other wxWidgets
+    functions and classes working with streams, e.g. for loading images or
+    animations from virtual files and not only physical ones.
+
+    @library{wxbase}
+    @category{streams}
+
+    @see wxWrapperInputStream, wxFSFile
+
+    @since 2.9.4
+*/
+class wxFSInputStream : public wxWrapperInputStream
+{
+public:
+    /**
+        Create a stream associated with the data of the given virtual file
+        system file.
+
+        @param filename
+            The name of the input file passed to wxFileSystem::OpenFile().
+        @param flags
+            Combination of flags from wxFileSystemOpenFlags. ::wxFS_READ is
+            implied, i.e. it is always added to the flags value.
+
+        Use wxStreamBase::IsOk() to verify if the constructor succeeded.
+    */
+    wxFileInputStream(const wxString& filename, int flags = 0);
+
+    /**
+        Returns @true if the stream is initialized and ready.
+    */
+    bool IsOk() const;
+};