Table Of Contents

Previous topic

MemoryDC

Next topic

Menu

This Page

phoenix_title MemoryFSHandler

This FileSystem handler can store arbitrary data in memory stream and make them accessible via an URL.

It is particularly suitable for storing bitmaps from resources or included XPM files so that they can be used with HTML.

Filenames are prefixed with "memory:" , e.g. "memory:myfile.html" .

Example:

def OnAbout(self, event):

    bcur = wx.BeginBusyCursor()

    wx.FileSystem.AddHandler(wx.MemoryFSHandler)
    wx.MemoryFSHandler.AddFile("logo.pcx", wx.Bitmap("logo.pcx", wx.BITMAP_TYPE_PCX))
    wx.MemoryFSHandler.AddFile("about.htm",
                               "<html><body>About: "
                               "<img src=\"memory:logo.pcx\"></body></html>")

    dlg = wx.Dialog(self, -1, _("About"))

    topsizer = wx.BoxSizer(wx.VERTICAL)

    html = wx.html.HtmlWindow(dlg, size=wx.Size(380, 160), style=wx.HW_SCROLLBAR_NEVER)
    html.SetBorders(0)
    html.LoadPage("memory:about.htm")
    html.SetSize(html.GetInternalRepresentation().GetWidth(),
                 html.GetInternalRepresentation().GetHeight())

    topsizer.Add(html, 1, wx.ALL, 10)
    topsizer.Add(wx.StaticLine(dlg, -1), 0, wx.EXPAND | wx.LEFT | wx.RIGHT, 10)
    topsizer.Add(wx.Button(dlg, wx.ID_OK, "Ok"),
                 0, wx.ALL | wx.ALIGN_RIGHT, 15)

    dlg.SetAutoLayout(True)
    dlg.SetSizer(topsizer)
    topsizer.Fit(dlg)
    dlg.Centre()
    dlg.ShowModal()

    wx.MemoryFSHandler.RemoveFile("logo.pcx")
    wx.MemoryFSHandler.RemoveFile("about.htm")

class_hierarchy Inheritance Diagram

Inheritance diagram for class MemoryFSHandler

Inheritance diagram of MemoryFSHandler


method_summary Methods Summary

__init__ Constructor.
AddFile Adds a file to the list of the files stored in memory.
AddFileWithMimeType Like AddFile , but lets you explicitly specify added file’s MIME type.
RemoveFile Removes a file from memory FS and frees the occupied memory.

api Class API



class MemoryFSHandler(FileSystemHandler)

This FileSystem handler can store arbitrary data in memory stream and make them accessible via an URL.

Possible constructors:

MemoryFSHandler()

Methods



__init__(self)

Constructor.



static AddFile(*args, **kw)

Adds a file to the list of the files stored in memory.

Stored data (bitmap, text or raw data) will be copied into private memory stream and available under name "memory:" + filename.

Note

you must use a type value (aka image format) that wxWidgets can save (e.g. JPG, PNG, see Image documentation)!


overload Overloaded Implementations:



AddFile (filename, image, type)

Parameters:



AddFile (filename, bitmap, type)

Parameters:





static AddFileWithMimeType(*args, **kw)

Like AddFile , but lets you explicitly specify added file’s MIME type.

This version should be used whenever you know the MIME type, because it makes accessing the files faster.

New in version 2.8.5.

See also

AddFile


overload Overloaded Implementations:



AddFileWithMimeType (filename, textdata, mimetype)

Parameters:
  • filename (string) –
  • textdata (string) –
  • mimetype (string) –



AddFileWithMimeType (filename, binarydata, size, mimetype)

Parameters:
  • filename (string) –
  • binarydata
  • size (int) –
  • mimetype (string) –





static RemoveFile(filename)

Removes a file from memory FS and frees the occupied memory.

Parameters:filename (string) –