// Copyright: (c) 2000 Vaclav Slavik
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
-
-#ifdef __GNUG__
+
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
#pragma implementation "xh_bttn.h"
#endif
#pragma hdrstop
#endif
+#if wxUSE_XRC
+
#include "wx/xrc/xh_bttn.h"
#include "wx/button.h"
+IMPLEMENT_DYNAMIC_CLASS(wxButtonXmlHandler, wxXmlResourceHandler)
-wxButtonXmlHandler::wxButtonXmlHandler()
-: wxXmlResourceHandler()
+wxButtonXmlHandler::wxButtonXmlHandler()
+: wxXmlResourceHandler()
{
- ADD_STYLE(wxBU_LEFT);
- ADD_STYLE(wxBU_RIGHT);
- ADD_STYLE(wxBU_TOP);
- ADD_STYLE(wxBU_BOTTOM);
+ XRC_ADD_STYLE(wxBU_LEFT);
+ XRC_ADD_STYLE(wxBU_RIGHT);
+ XRC_ADD_STYLE(wxBU_TOP);
+ XRC_ADD_STYLE(wxBU_BOTTOM);
+ XRC_ADD_STYLE(wxBU_EXACTFIT);
AddWindowStyles();
}
-
wxObject *wxButtonXmlHandler::DoCreateResource()
-{
- wxButton *button = wxStaticCast(m_instance, wxButton);
-
- if (!button)
- button = new wxButton;
+{
+ XRC_MAKE_INSTANCE(button, wxButton)
button->Create(m_parentAsWindow,
GetID(),
wxDefaultValidator,
GetName());
- if (GetBool(wxT("default"), 0) == 1) button->SetDefault();
+ if (GetBool(wxT("default"), 0))
+ button->SetDefault();
SetupWindow(button);
-
+
return button;
}
-
-
bool wxButtonXmlHandler::CanHandle(wxXmlNode *node)
{
return IsOfClass(node, wxT("wxButton"));
}
-
+#endif // wxUSE_XRC