Add wxXmlResource::LoadObjectRecursively().

These methods can be used to load objects from anywhere in the XRC resource
tree and not just from the top level.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61934 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2009-09-14 23:22:00 +00:00
parent c9a199c6a6
commit af0ac990fc
7 changed files with 165 additions and 30 deletions

View File

@@ -286,6 +286,10 @@ public:
The first overload lets you load nonstandard container windows and returns
@NULL on failure. The second one lets you finish the creation of an existing
instance and returns @false on failure.
In either case, only the resources defined at the top level of XRC
files can be loaded by this function, use LoadObjectRecursively() if
you need to load an object defined deeper in the hierarchy.
*/
wxObject* LoadObject(wxWindow* parent, const wxString& name,
const wxString& classname);
@@ -294,6 +298,27 @@ public:
const wxString& classname);
//@}
//@{
/**
Load an object from anywhere in the resource tree.
These methods are similar to LoadObject() but may be used to load an
object from anywhere in the resource tree and not only the top level.
Note that you will very rarely need to do this as in normal use the
entire container window (defined at the top level) is loaded and not
its individual children but this method can be useful in some
particular situations.
@since 2.9.1
*/
wxObject* LoadObjectRecursively(wxWindow* parent,
const wxString& name,
const wxString& classname);
bool LoadObjectRecursively(wxObject* instance, wxWindow* parent,
const wxString& name,
const wxString& classname);
//@}
/**
Loads a panel. @a parent points to the parent window.
*/