1 /////////////////////////////////////////////////////////////////////////////
2 // Name: src/xrc/xh_listc.cpp
3 // Purpose: XRC resource for wxListCtrl
4 // Author: Brian Gavin
5 // Created: 2000/09/09
6 // RCS-ID: $Id: xh_listc.cpp 39583 2006-06-06 07:23:19Z ABX $
7 // Copyright: (c) 2000 Brian Gavin
8 // Licence: wxWindows licence
9 /////////////////////////////////////////////////////////////////////////////
10
11 // For compilers that support precompilation, includes "wx.h".
12 #include "wx/wxprec.h"
13
14 #ifdef __BORLANDC__
15 #pragma hdrstop
16 #endif
17
18 #if wxUSE_XRC && wxUSE_LISTCTRL
19
20 #include "wx/xrc/xh_listc.h"
21
22 #ifndef WX_PRECOMP
23 #include "wx/textctrl.h"
24 #endif
25
26 #include "wx/listctrl.h"
27
28
IMPLEMENT_DYNAMIC_CLASS(wxListCtrlXmlHandler,wxXmlResourceHandler)29 IMPLEMENT_DYNAMIC_CLASS(wxListCtrlXmlHandler, wxXmlResourceHandler)
30
31 wxListCtrlXmlHandler::wxListCtrlXmlHandler()
32 : wxXmlResourceHandler()
33 {
34 XRC_ADD_STYLE(wxLC_LIST);
35 XRC_ADD_STYLE(wxLC_REPORT);
36 XRC_ADD_STYLE(wxLC_ICON);
37 XRC_ADD_STYLE(wxLC_SMALL_ICON);
38 XRC_ADD_STYLE(wxLC_ALIGN_TOP);
39 XRC_ADD_STYLE(wxLC_ALIGN_LEFT);
40 XRC_ADD_STYLE(wxLC_AUTOARRANGE);
41 XRC_ADD_STYLE(wxLC_USER_TEXT);
42 XRC_ADD_STYLE(wxLC_EDIT_LABELS);
43 XRC_ADD_STYLE(wxLC_NO_HEADER);
44 XRC_ADD_STYLE(wxLC_SINGLE_SEL);
45 XRC_ADD_STYLE(wxLC_SORT_ASCENDING);
46 XRC_ADD_STYLE(wxLC_SORT_DESCENDING);
47 XRC_ADD_STYLE(wxLC_VIRTUAL);
48 XRC_ADD_STYLE(wxLC_HRULES);
49 XRC_ADD_STYLE(wxLC_VRULES);
50 XRC_ADD_STYLE(wxLC_NO_SORT_HEADER);
51 AddWindowStyles();
52 }
53
DoCreateResource()54 wxObject *wxListCtrlXmlHandler::DoCreateResource()
55 {
56 XRC_MAKE_INSTANCE(list, wxListCtrl)
57
58 list->Create(m_parentAsWindow,
59 GetID(),
60 GetPosition(), GetSize(),
61 GetStyle(),
62 wxDefaultValidator,
63 GetName());
64
65 // FIXME: add columns definition
66
67 SetupWindow(list);
68
69 return list;
70 }
71
CanHandle(wxXmlNode * node)72 bool wxListCtrlXmlHandler::CanHandle(wxXmlNode *node)
73 {
74 return IsOfClass(node, wxT("wxListCtrl"));
75 }
76
77 #endif // wxUSE_XRC && wxUSE_LISTCTRL
78