#include "wx/log.h"
#include "wx/statbox.h"
#include "wx/notebook.h"
+#include "wx/panel.h"
#include "wx/tokenzr.h"
+IMPLEMENT_DYNAMIC_CLASS(wxSizerXmlHandler, wxXmlResourceHandler)
+
bool wxSizerXmlHandler::IsSizerNode(wxXmlNode *node)
{
return (IsOfClass(node, wxT("wxBoxSizer"))) ||
wxXmlNode *parentNode = m_node->GetParent();
wxCHECK_MSG(m_parentSizer != NULL ||
- ((IsOfClass(parentNode, wxT("wxPanel")) ||
- IsOfClass(parentNode, wxT("wxFrame")) ||
- IsOfClass(parentNode, wxT("wxDialog"))) &&
- parentNode->GetType() == wxXML_ELEMENT_NODE), NULL,
+ (parentNode->GetType() == wxXML_ELEMENT_NODE &&
+ (m_parentAsWindow->IsKindOf(CLASSINFO(wxPanel)) ||
+ m_parentAsWindow->IsKindOf(CLASSINFO(wxFrame)) ||
+ m_parentAsWindow->IsKindOf(CLASSINFO(wxDialog)))
+ ), NULL,
wxT("Incorrect use of sizer: parent is not 'wxDialog', 'wxFrame' or 'wxPanel'."));
if (m_class == wxT("wxBoxSizer"))
else if (m_class == wxT("wxStaticBoxSizer"))
{
sizer = new wxStaticBoxSizer(
- new wxStaticBox(m_parentAsWindow, -1, GetText(wxT("label"))),
+ new wxStaticBox(m_parentAsWindow,
+ GetID(),
+ GetText(wxT("label")),
+ wxDefaultPosition, wxDefaultSize,
+ 0/*style*/,
+ GetName()),
GetStyle(wxT("orient"), wxHORIZONTAL));
}