]>
git.saurik.com Git - wxWidgets.git/blob - interface/fs_mem.h
1 /////////////////////////////////////////////////////////////////////////////
3 // Purpose: interface of wxMemoryFSHandler
4 // Author: wxWidgets team
6 // Licence: wxWindows license
7 /////////////////////////////////////////////////////////////////////////////
10 @class wxMemoryFSHandler
13 This wxFileSystem handler can store arbitrary
14 data in memory stream and make them accessible via URL. It is particularly
15 suitable for storing bitmaps from resources or included XPM files so that
16 they can be used with wxHTML.
18 Filenames are prefixed with "memory:", e.g. "memory:myfile.html".
27 void MyFrame::OnAbout(wxCommandEvent&)
30 wxFileSystem::AddHandler(new wxMemoryFSHandler);
31 wxMemoryFSHandler::AddFile("logo.pcx", wxBITMAP(logo), wxBITMAP_TYPE_PCX);
32 wxMemoryFSHandler::AddFile("about.htm",
34 "img src=\"memory:logo.pcx\"/body/html");
36 wxDialog dlg(this, -1, wxString(_("About")));
39 topsizer = new wxBoxSizer(wxVERTICAL);
40 html = new wxHtmlWindow(, -1, wxDefaultPosition,
41 wxSize(380, 160), wxHW_SCROLLBAR_NEVER);
43 html-LoadPage("memory:about.htm");
44 html-SetSize(html-GetInternalRepresentation()-GetWidth(),
45 html-GetInternalRepresentation()-GetHeight());
46 topsizer-Add(html, 1, wxALL, 10);
47 topsizer-Add(new wxStaticLine(, -1), 0, wxEXPAND | wxLEFT | wxRIGHT, 10);
48 topsizer-Add(new wxButton(, wxID_OK, "Ok"),
49 0, wxALL | wxALIGN_RIGHT, 15);
50 dlg.SetAutoLayout(@true);
51 dlg.SetSizer(topsizer);
56 wxMemoryFSHandler::RemoveFile("logo.pcx");
57 wxMemoryFSHandler::RemoveFile("about.htm");
64 @see wxMemoryFSHandler::AddFileWithMimeType
66 class wxMemoryFSHandler
: public wxFileSystemHandler
76 Add file to list of files stored in memory. Stored
77 data (bitmap, text or raw data)
78 will be copied into private memory stream and available under
79 name "memory:" + @e filename.
80 The @a type argument is one of @c wxBITMAP_TYPE_XXX constants.
81 Note that you must use a @a type value (aka image format)
82 that wxWidgets can save (e.g. JPG, PNG, see wxImage
85 @see AddFileWithMimeType()
87 static void AddFile(const wxString
& filename
, wxImage
& image
,
89 static void AddFile(const wxString
& filename
,
90 const wxBitmap
& bitmap
,
96 Like AddFile(), but lets you explicitly
97 specify added file's MIME type. This version should be used whenever you know
98 the MIME type, because it makes accessing the files faster.
104 static void AddFileWithMimeType(const wxString
& filename
,
105 const wxString
& textdata
,
106 const wxString
& mimetype
);
107 static void AddFileWithMimeType(const wxString
& filename
,
108 const void* binarydata
,
110 const wxString
& mimetype
);
114 Remove file from memory FS and free occupied memory.
116 static void RemoveFile(const wxString
& filename
);