// Copyright: (c) 2000 Bob Mitchell and Verant Interactive
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
-
-#ifdef __GNUG__
+
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
#pragma implementation "xh_chckb.h"
#endif
#pragma hdrstop
#endif
+#if wxUSE_XRC && wxUSE_CHECKBOX
+
#include "wx/xrc/xh_chckb.h"
#include "wx/checkbox.h"
-#if wxUSE_CHECKBOX
+IMPLEMENT_DYNAMIC_CLASS(wxCheckBoxXmlHandler, wxXmlResourceHandler)
-wxCheckBoxXmlHandler::wxCheckBoxXmlHandler()
-: wxXmlResourceHandler()
+wxCheckBoxXmlHandler::wxCheckBoxXmlHandler()
+: wxXmlResourceHandler()
{
+ XRC_ADD_STYLE(wxCHK_2STATE);
+ XRC_ADD_STYLE(wxCHK_3STATE);
+ XRC_ADD_STYLE(wxCHK_ALLOW_3RD_STATE_FOR_USER);
+ XRC_ADD_STYLE(wxALIGN_RIGHT);
AddWindowStyles();
}
wxObject *wxCheckBoxXmlHandler::DoCreateResource()
-{
- wxCheckBox *control = wxStaticCast(m_instance, wxCheckBox);
-
- if (!control)
- control = new wxCheckBox;
+{
+ XRC_MAKE_INSTANCE(control, wxCheckBox)
control->Create(m_parentAsWindow,
GetID(),
wxDefaultValidator,
GetName());
- control->SetValue( GetBool( wxT("checked")));
+ control->SetValue(GetBool( wxT("checked")));
SetupWindow(control);
-
+
return control;
}
-
-
bool wxCheckBoxXmlHandler::CanHandle(wxXmlNode *node)
{
return IsOfClass(node, wxT("wxCheckBox"));
}
-#endif
+#endif // wxUSE_XRC && wxUSE_CHECKBOX