]> git.saurik.com Git - wxWidgets.git/blob - samples/treectrl/treetest.h
final (?) changes to the generic tree ctrl -- seems to work ok
[wxWidgets.git] / samples / treectrl / treetest.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: treetest.h
3 // Purpose: wxTreeCtrl sample
4 // Author: Julian Smart
5 // Modified by:
6 // Created: 04/01/98
7 // RCS-ID: $Id$
8 // Copyright: (c) Julian Smart and Markus Holzem
9 // Licence: wxWindows license
10 /////////////////////////////////////////////////////////////////////////////
11
12 // Define a new application type
13 class MyApp: public wxApp
14 { public:
15 bool OnInit(void);
16
17 wxImageList *m_imageListNormal;
18 };
19
20 class MyTreeCtrl: public wxTreeCtrl
21 {
22 public:
23 MyTreeCtrl(wxWindow *parent, const wxWindowID id, const wxPoint& pos,
24 const wxSize& size, long style);
25 ~MyTreeCtrl();
26
27 void AddItemsRecursively(const wxTreeItemId& idParent,
28 size_t numChildren,
29 size_t depth);
30 void AddTestItemsToTree(size_t numChildren,
31 size_t depth);
32
33
34 void OnBeginDrag(wxTreeEvent& event);
35 void OnBeginRDrag(wxTreeEvent& event);
36 void OnBeginLabelEdit(wxTreeEvent& event);
37 void OnEndLabelEdit(wxTreeEvent& event);
38 void OnDeleteItem(wxTreeEvent& event);
39 void OnGetInfo(wxTreeEvent& event);
40 void OnSetInfo(wxTreeEvent& event);
41 void OnItemExpanded(wxTreeEvent& event);
42 void OnItemExpanding(wxTreeEvent& event);
43 void OnItemCollapsed(wxTreeEvent& event);
44 void OnItemCollapsing(wxTreeEvent& event);
45 void OnSelChanged(wxTreeEvent& event);
46 void OnSelChanging(wxTreeEvent& event);
47 void OnKeyDown(wxTreeEvent& event);
48
49 DECLARE_EVENT_TABLE()
50 };
51
52 // Define a new frame type
53 class MyFrame: public wxFrame
54 { public:
55 MyTreeCtrl *m_treeCtrl;
56 wxTextCtrl *m_logWindow;
57
58 MyFrame(const wxString& title, int x, int y, int w, int h);
59 ~MyFrame(void);
60
61 public:
62 void OnQuit(wxCommandEvent& event);
63 void OnAbout(wxCommandEvent& event);
64 bool OnClose(void) { return TRUE; }
65
66 DECLARE_EVENT_TABLE()
67 };
68
69 class MyTreeItemData : public wxTreeItemData
70 {
71 public:
72 MyTreeItemData(const wxString& desc) : m_desc(desc) { }
73
74 void ShowInfo(wxTreeCtrl *tree);
75
76 private:
77 wxString m_desc;
78 };
79
80 // ID for the menu quit command
81 #define TREE_QUIT 1
82 #define TREE_ABOUT 102
83
84 #define TREE_CTRL 1000
85
86 enum
87 {
88 TreeCtrlIcon_File,
89 TreeCtrlIcon_Folder
90 };