| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- /////////////////////////////////////////////////////////////////////////////
- // Name: wx/xrc/xh_treebk.h
- // Purpose: XML resource handler for wxTreebook
- // Author: Evgeniy Tarassov
- // Created: 2005/09/28
- // Copyright: (c) 2005 TT-Solutions <vadim@tt-solutions.com>
- // Licence: wxWindows licence
- /////////////////////////////////////////////////////////////////////////////
- #ifndef _WX_XH_TREEBK_H_
- #define _WX_XH_TREEBK_H_
- #include "wx/xrc/xmlres.h"
- #if wxUSE_XRC && wxUSE_TREEBOOK
- class WXDLLIMPEXP_FWD_CORE wxTreebook;
- #include "wx/dynarray.h"
- WX_DEFINE_USER_EXPORTED_ARRAY_SIZE_T(size_t, wxArrayTbkPageIndexes,
- class WXDLLIMPEXP_XRC);
- // ---------------------------------------------------------------------
- // wxTreebookXmlHandler class
- // ---------------------------------------------------------------------
- // Resource xml structure have to be almost the "same" as for wxNotebook
- // except the additional (size_t)depth parameter for treebookpage nodes
- // which indicates the depth of the page in the tree.
- // There is only one logical constraint on this parameter :
- // it cannot be greater than the previous page depth plus one
- class WXDLLIMPEXP_XRC wxTreebookXmlHandler : public wxXmlResourceHandler
- {
- DECLARE_DYNAMIC_CLASS(wxTreebookXmlHandler)
- public:
- wxTreebookXmlHandler();
- virtual wxObject *DoCreateResource();
- virtual bool CanHandle(wxXmlNode *node);
- private:
- wxTreebook *m_tbk;
- wxArrayTbkPageIndexes m_treeContext;
- bool m_isInside;
- };
- // Example:
- // -------
- // Label
- // \--First
- // | \--Second
- // \--Third
- //
- //<resource>
- // ...
- // <object class="wxTreebook">
- // <object class="treebookpage">
- // <object class="wxWindow" />
- // <label>My first page</label>
- // <depth>0</depth>
- // </object>
- // <object class="treebookpage">
- // <object class="wxWindow" />
- // <label>First</label>
- // <depth>1</depth>
- // </object>
- // <object class="treebookpage">
- // <object class="wxWindow" />
- // <label>Second</label>
- // <depth>2</depth>
- // </object>
- // <object class="treebookpage">
- // <object class="wxWindow" />
- // <label>Third</label>
- // <depth>1</depth>
- // </object>
- // </object>
- // ...
- //</resource>
- #endif // wxUSE_XRC && wxUSE_TREEBOOK
- #endif // _WX_XH_TREEBK_H_
|