+wxBitmap::wxBitmap(const wxString &filename, wxBitmapType type)
+{
+ LoadFile(filename, type);
+}
+
+wxBitmap::wxBitmap(const char bits[], int width, int height, int depth)
+{
+ wxASSERT(depth == 1);
+ if (width > 0 && height > 0 && depth == 1)
+ {
+ SetPixmap(gdk_bitmap_create_from_data(wxGetRootWindow()->window, bits, width, height));
+
+ wxASSERT_MSG( M_BMPDATA->m_pixmap, wxT("couldn't create bitmap") );
+ }
+}
+
+wxBitmap::wxBitmap(const char* const* bits)
+{
+ wxCHECK2_MSG(bits != NULL, return, wxT("invalid bitmap data"));
+
+ GdkBitmap* mask = NULL;
+ SetPixmap(gdk_pixmap_create_from_xpm_d(wxGetRootWindow()->window, &mask, NULL, wx_const_cast(char**, bits)));
+
+ if (M_BMPDATA->m_pixmap != NULL && mask != NULL)
+ {
+ M_BMPDATA->m_mask = new wxMask;
+ M_BMPDATA->m_mask->m_bitmap = mask;
+ }
+}
+
+wxBitmap::~wxBitmap()