+#endif // wxUSE_BASE
+
+#if wxUSE_GUI
+
+#if wxUSE_IMAGE
+/*static*/ void
+wxMemoryFSHandler::AddFile(const wxString& filename,
+ const wxImage& image,
+ long type)
+{
+ if (!CheckHash(filename)) return;
+
+ wxMemoryOutputStream mems;
+ if (image.Ok() && image.SaveFile(mems, (int)type))
+ m_Hash -> Put(filename, new MemFSHashObj(mems));
+ else
+ {
+ wxString s;
+ s.Printf(_("Failed to store image '%s' to memory VFS!"), filename.c_str());
+ wxPrintf(wxT("'%s'\n"), s.c_str());
+ wxLogError(s);
+ }
+}
+
+/*static*/ void
+wxMemoryFSHandler::AddFile(const wxString& filename,
+ const wxBitmap& bitmap,
+ long type)
+{
+#if !defined(__WXMSW__) || wxUSE_WXDIB
+ wxImage img = bitmap.ConvertToImage();
+ AddFile(filename, img, type);
+#endif
+}
+
+#endif // wxUSE_IMAGE
+
+#endif // wxUSE_GUI
+