X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/2ddb4d13585d5235556119fb1937273da9e433a3..cac1cfce376de6ed10098eb85b5a6fb355c8c47e:/src/xrc/xh_treebk.cpp diff --git a/src/xrc/xh_treebk.cpp b/src/xrc/xh_treebk.cpp index a79a01b9a3..cd199b7bb6 100644 --- a/src/xrc/xh_treebk.cpp +++ b/src/xrc/xh_treebk.cpp @@ -19,14 +19,19 @@ #include "wx/xrc/xh_treebk.h" +#ifndef WX_PRECOMP + #include "wx/log.h" +#endif + #include "wx/treebook.h" #include "wx/imaglist.h" -#include "wx/log.h" IMPLEMENT_DYNAMIC_CLASS(wxTreebookXmlHandler, wxXmlResourceHandler) wxTreebookXmlHandler::wxTreebookXmlHandler() -: wxXmlResourceHandler(), m_isInside(false), m_tbk(NULL), m_treeContext() + : wxXmlResourceHandler(), + m_tbk(NULL), + m_isInside(false) { XRC_ADD_STYLE(wxBK_DEFAULT); XRC_ADD_STYLE(wxBK_TOP); @@ -90,12 +95,14 @@ wxObject *wxTreebookXmlHandler::DoCreateResource() wnd = wxDynamicCast(item, wxWindow); if (wnd == NULL && item != NULL) - wxLogError(wxT("Error in resource: control within treebook's tag is not a window.")); + { + ReportError(n, "treebookpage child must be a window"); + } } size_t depth = GetLong( wxT("depth") ); - if( depth <= m_treeContext.Count() ) + if( depth <= m_treeContext.GetCount() ) { // first prepare the icon int imgIndex = wxNOT_FOUND; @@ -112,8 +119,8 @@ wxObject *wxTreebookXmlHandler::DoCreateResource() } // then add the page to the corresponding parent - if( depth < m_treeContext.Count() ) - m_treeContext.RemoveAt(depth, m_treeContext.Count() - depth ); + if( depth < m_treeContext.GetCount() ) + m_treeContext.RemoveAt(depth, m_treeContext.GetCount() - depth ); if( depth == 0) { m_tbk->AddPage(wnd, @@ -121,7 +128,7 @@ wxObject *wxTreebookXmlHandler::DoCreateResource() } else { - m_tbk->AddSubPage(m_treeContext.Item(depth - 1), wnd, + m_tbk->InsertSubPage(m_treeContext.Item(depth - 1), wnd, GetText(wxT("label")), GetBool(wxT("selected")), imgIndex); } @@ -129,7 +136,10 @@ wxObject *wxTreebookXmlHandler::DoCreateResource() } else - wxLogError(wxT("Error in resource. wxTreebookPage has an invalid depth.")); + { + ReportParamError("depth", "invalid depth"); + } + return wnd; }