]> git.saurik.com Git - wxWidgets.git/blame_incremental - src/xrc/xh_tree.cpp
fixed previous revision: call wxControl's, not wxButton's DoGetBestSize
[wxWidgets.git] / src / xrc / xh_tree.cpp
... / ...
CommitLineData
1/////////////////////////////////////////////////////////////////////////////
2// Name: xh_tree.cpp
3// Purpose: XRC resource for wxTreeCtrl
4// Author: Brian Gavin
5// Created: 2000/09/09
6// RCS-ID: $Id$
7// Copyright: (c) 2000 Brian Gavin
8// Licence: wxWindows licence
9/////////////////////////////////////////////////////////////////////////////
10
11#ifdef __GNUG__
12#pragma implementation "xh_tree.h"
13#endif
14
15// For compilers that support precompilation, includes "wx.h".
16#include "wx/wxprec.h"
17
18#ifdef __BORLANDC__
19 #pragma hdrstop
20#endif
21
22#if wxUSE_XRC && wxUSE_TREECTRL
23
24#include "wx/xrc/xh_tree.h"
25#include "wx/treectrl.h"
26
27IMPLEMENT_DYNAMIC_CLASS(wxTreeCtrlXmlHandler, wxXmlResourceHandler)
28
29wxTreeCtrlXmlHandler::wxTreeCtrlXmlHandler()
30: wxXmlResourceHandler()
31{
32 XRC_ADD_STYLE(wxTR_EDIT_LABELS);
33 XRC_ADD_STYLE(wxTR_NO_BUTTONS);
34 XRC_ADD_STYLE(wxTR_HAS_BUTTONS);
35 XRC_ADD_STYLE(wxTR_TWIST_BUTTONS);
36 XRC_ADD_STYLE(wxTR_NO_LINES);
37 XRC_ADD_STYLE(wxTR_FULL_ROW_HIGHLIGHT);
38 XRC_ADD_STYLE(wxTR_LINES_AT_ROOT);
39 XRC_ADD_STYLE(wxTR_HIDE_ROOT);
40 XRC_ADD_STYLE(wxTR_ROW_LINES);
41 XRC_ADD_STYLE(wxTR_HAS_VARIABLE_ROW_HEIGHT);
42 XRC_ADD_STYLE(wxTR_SINGLE);
43 XRC_ADD_STYLE(wxTR_MULTIPLE);
44 XRC_ADD_STYLE(wxTR_EXTENDED);
45 XRC_ADD_STYLE(wxTR_DEFAULT_STYLE);
46 AddWindowStyles();
47}
48
49wxObject *wxTreeCtrlXmlHandler::DoCreateResource()
50{
51 XRC_MAKE_INSTANCE(tree, wxTreeCtrl)
52
53 tree->Create(m_parentAsWindow,
54 GetID(),
55 GetPosition(), GetSize(),
56 GetStyle(_T("style"), wxTR_DEFAULT_STYLE),
57 wxDefaultValidator,
58 GetName());
59
60 SetupWindow(tree);
61
62 return tree;
63}
64
65bool wxTreeCtrlXmlHandler::CanHandle(wxXmlNode *node)
66{
67 return IsOfClass(node, wxT("wxTreeCtrl"));
68}
69
70#endif // wxUSE_XRC && wxUSE_TREECTRL