]> git.saurik.com Git - wxWidgets.git/blobdiff - src/xrc/xh_stbmp.cpp
check the validity of wxString pointer itself too
[wxWidgets.git] / src / xrc / xh_stbmp.cpp
index 034fe3dd68f8f40e9e3eb8bb80a8c22f10b640fe..8bd4bb2094581f93676ab65dfdc8082608307618 100644 (file)
@@ -7,8 +7,8 @@
 // Copyright:   (c) 2000 Vaclav Slavik
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
-#ifdef __GNUG__
+
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
 #pragma implementation "xh_stbmp.h"
 #endif
 
     #pragma hdrstop
 #endif
 
+#if wxUSE_XRC
+
 #include "wx/xrc/xh_stbmp.h"
 #include "wx/statbmp.h"
 
-wxStaticBitmapXmlHandler::wxStaticBitmapXmlHandler() 
-: wxXmlResourceHandler() 
+IMPLEMENT_DYNAMIC_CLASS(wxStaticBitmapXmlHandler, wxXmlResourceHandler)
+
+wxStaticBitmapXmlHandler::wxStaticBitmapXmlHandler()
+: wxXmlResourceHandler()
 {
     AddWindowStyles();
 }
 
 wxObject *wxStaticBitmapXmlHandler::DoCreateResource()
-{ 
-    wxStaticBitmap *bmp = new wxStaticBitmap(m_parentAsWindow,
-                                    GetID(),
-                                    GetBitmap(wxT("bitmap"), GetSize()),
-                                    GetPosition(), GetSize(),
-                                    GetStyle(),
-                                    GetName()
-                                    );
+{
+    XRC_MAKE_INSTANCE(bmp, wxStaticBitmap)
+
+    bmp->Create(m_parentAsWindow,
+                GetID(),
+                GetBitmap(wxT("bitmap"), wxART_OTHER, GetSize()),
+                GetPosition(), GetSize(),
+                GetStyle(),
+                GetName());
+
     SetupWindow(bmp);
-    
+
     return bmp;
 }
 
-
-
 bool wxStaticBitmapXmlHandler::CanHandle(wxXmlNode *node)
 {
     return IsOfClass(node, wxT("wxStaticBitmap"));
 }
 
-
+#endif // wxUSE_XRC