X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b4a980f4f57a4e7eea00c55cbb3d139f97d90c20..0306e73e630bce45a3f56a0616559250fcb8c05e:/src/xrc/xh_treebk.cpp?ds=sidebyside diff --git a/src/xrc/xh_treebk.cpp b/src/xrc/xh_treebk.cpp index d3d427dfba..efc5c36f99 100644 --- a/src/xrc/xh_treebk.cpp +++ b/src/xrc/xh_treebk.cpp @@ -61,6 +61,10 @@ wxObject *wxTreebookXmlHandler::DoCreateResource() GetStyle(wxT("style")), GetName()); + wxImageList *imagelist = GetImageList(); + if ( imagelist ) + tbk->AssignImageList(imagelist); + wxTreebook * old_par = m_tbk; m_tbk = tbk; @@ -95,7 +99,9 @@ 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") ); @@ -115,6 +121,18 @@ wxObject *wxTreebookXmlHandler::DoCreateResource() } imgIndex = imgList->Add(bmp); } + else if ( HasParam(wxT("image")) ) + { + if ( m_tbk->GetImageList() ) + { + imgIndex = GetLong(wxT("image")); + } + else // image without image list? + { + ReportError(n, "image can only be used in conjunction " + "with imagelist"); + } + } // then add the page to the corresponding parent if( depth < m_treeContext.GetCount() ) @@ -134,7 +152,10 @@ wxObject *wxTreebookXmlHandler::DoCreateResource() } else - wxLogError(wxT("Error in resource. wxTreebookPage has an invalid depth.")); + { + ReportParamError("depth", "invalid depth"); + } + return wnd; }