X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/09dc1241b72e4c03d2ebd757bb063296aef7a18e..f485492a1eef7a413945b331bc9bdb26cceaf0cd:/contrib/src/xml/xh_notbk.cpp diff --git a/contrib/src/xml/xh_notbk.cpp b/contrib/src/xml/xh_notbk.cpp index 3c7bed28f8..fa8bec1b82 100644 --- a/contrib/src/xml/xh_notbk.cpp +++ b/contrib/src/xml/xh_notbk.cpp @@ -41,30 +41,30 @@ wxNotebookXmlHandler::wxNotebookXmlHandler() wxObject *wxNotebookXmlHandler::DoCreateResource() { - if (m_Node->GetName() == _T("notebookpage")) + if (m_Class == _T("notebookpage")) { - wxXmlNode *n = GetParamNode(_T("window"))->GetChildren(); - while (n) + wxXmlNode *n = GetParamNode(_T("object")); + + if (n) + { + bool old_ins = m_IsInside; + m_IsInside = FALSE; + m_IsInside = old_ins; + wxObject *item = CreateResFromNode(n, m_Notebook, NULL); + wxWindow *wnd = wxDynamicCast(item, wxWindow); + + if (wnd) + m_Notebook->AddPage(wnd, GetText(_T("label")), + GetBool(_T("selected"), 0)); + else + wxLogError(_T("Error in resource.")); + return wnd; + } + else { - if (n->GetType() == wxXML_ELEMENT_NODE) - { - bool old_ins = m_IsInside; - m_IsInside = FALSE; - m_IsInside = old_ins; - wxObject *item = CreateResFromNode(n, m_Notebook, NULL); - wxWindow *wnd = wxDynamicCast(item, wxWindow); - - if (wnd) - m_Notebook->AddPage(wnd, GetText(_T("label")), - GetBool(_T("selected"), 0)); - else - wxLogError(_T("Error in resource.")); - return wnd; - } - n = n->GetNext(); + wxLogError(_T("Error in resource: no control within notebook's tag.")); + return NULL; } - wxLogError(_T("Error in resource: no control within notebook's tag.")); - return NULL; } else { @@ -93,8 +93,8 @@ wxObject *wxNotebookXmlHandler::DoCreateResource() bool wxNotebookXmlHandler::CanHandle(wxXmlNode *node) { - return ((!m_IsInside && node->GetName() == _T("notebook")) || - (m_IsInside && node->GetName() == _T("notebookpage"))); + return ((!m_IsInside && IsOfClass(node, _T("wxNotebook"))) || + (m_IsInside && IsOfClass(node, _T("notebookpage")))); } #endif