X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/56d2f75071fc2a29ec10abe97c5a908bb35f30f4..8173fefe0a9d61cfe5244a301044aa2269bc1c31:/contrib/src/xml/xh_panel.cpp diff --git a/contrib/src/xml/xh_panel.cpp b/contrib/src/xml/xh_panel.cpp index 5ed9c2a9f4..2c870618e5 100644 --- a/contrib/src/xml/xh_panel.cpp +++ b/contrib/src/xml/xh_panel.cpp @@ -28,16 +28,27 @@ wxPanelXmlHandler::wxPanelXmlHandler() : wxXmlResourceHandler() ADD_STYLE(wxNO_3D); ADD_STYLE(wxTAB_TRAVERSAL); ADD_STYLE(wxWS_EX_VALIDATE_RECURSIVELY); + ADD_STYLE(wxCLIP_CHILDREN); + AddWindowStyles(); } wxObject *wxPanelXmlHandler::DoCreateResource() { - wxPanel *panel = new wxPanel(m_ParentAsWindow, + wxPanel *panel = wxDynamicCast(m_instance, wxPanel); + + if (panel == NULL) + panel = new wxPanel(m_parentAsWindow, + GetID(), + GetPosition(), GetSize(), + GetStyle(wxT("style"), 0), + GetName()); + else + panel->Create(m_parentAsWindow, GetID(), GetPosition(), GetSize(), - GetStyle(_T("style"), 0), + GetStyle(wxT("style"), 0), GetName()); SetupWindow(panel); CreateChildren(panel); @@ -48,5 +59,5 @@ wxObject *wxPanelXmlHandler::DoCreateResource() bool wxPanelXmlHandler::CanHandle(wxXmlNode *node) { - return node->GetName() == _T("panel"); + return IsOfClass(node, wxT("wxPanel")); }