Classes derived from wx.FileSystemHandler are used to access virtual file systems.
Its public interface consists of two methods: wx.FileSystemHandler.CanOpen
and wx.FileSystemHandler.OpenFile
.
It provides additional protected methods to simplify the process of opening the file: GetProtocol
, GetLeftLocation
, GetRightLocation
, GetAnchor
, GetMimeTypeFromExt
.
Please have a look at overview (see wx.FileSystem) if you don’t know how locations are constructed.
Also consult the list of available handlers.
Note that the handlers are shared by all instances of wx.FileSystem.
wx.ArchiveFSHandler, wx.FilterFSHandler, wx.InternetFSHandler, wx.MemoryFSHandler
Constructor. |
|
Returns |
|
Works like |
|
Returns next filename that matches parameters passed to |
|
Returns the anchor if present in the location. |
|
Returns the left location string extracted from location. |
|
Returns the MIME type based on extension of location. |
|
Returns the protocol string extracted from location. |
|
Returns the right location string extracted from location. |
|
Opens the file and returns wx.FSFile pointer or |
wx.
FileSystemHandler
(Object)¶Possible constructors:
FileSystemHandler()
Classes derived from FileSystemHandler are used to access virtual file systems.
__init__
(self)¶Constructor.
CanOpen
(self, location)¶Returns True
if the handler is able to open this file.
This function doesn’t check whether the file exists or not, it only checks if it knows the protocol. Example:
def CanOpen(self, location):
return self.GetProtocol(location) == "http"
Must be overridden in derived handlers.
location (string) –
bool
FindFirst
(self, wildcard, flags=0)¶Works like FindFirstFile
.
Returns the name of the first filename (within filesystem’s current path) that matches wildcard. flags may be one of FILE
(only files), DIR
(only directories) or 0 (both).
This method is only called if CanOpen
returns True
.
wildcard (string) –
flags (int) –
string
FindNext
(self)¶Returns next filename that matches parameters passed to wx.FileSystem.FindFirst
.
This method is only called if CanOpen
returns True
and FindFirst
returned a non-empty string.
string
GetAnchor
(location)¶Returns the anchor if present in the location.
See wx.FSFile.GetAnchor
for details.
Example:
if self.GetAnchor("index.htm#chapter2") == "chapter2":
DoSomething()
location (string) –
string
Note
the anchor is NOT part of the left location.
GetLeftLocation
(location)¶Returns the left location string extracted from location.
Example:
if self.GetLeftLocation("file:myzipfile.zip#zip:index.htm") == "file:myzipfile.zip":
DoSomething()
location (string) –
string
GetMimeTypeFromExt
(location)¶Returns the MIME type based on extension of location.
(While wx.FSFile.GetMimeType
returns real MIME type - either extension-based or queried from HTTP
.)
Example:
if GetMimeTypeFromExt("index.htm") == "text/html":
wx.MessageBox("Is HTML!")
location (string) –
string
GetProtocol
(location)¶Returns the protocol string extracted from location.
Example:
if self.GetProtocol("file:myzipfile.zip#zip:index.htm") == "zip":
UnzipFile(filename)
location (string) –
string
GetRightLocation
(location)¶Returns the right location string extracted from location.
Example:
if self.GetRightLocation("file:myzipfile.zip#zip:index.htm") == "index.htm":
ReadHTML(filename)
location (string) –
string
OpenFile
(self, fs, location)¶Opens the file and returns wx.FSFile pointer or None
if failed.
Must be overridden in derived handlers.
fs (wx.FileSystem) – Parent FS
(the FS
from that OpenFile was called). See the ZIP
handler for details of how to use it.
location (string) – The absolute location of file.