wxWidgets/samples/treectrl/treetest.h
1998-10-26 17:11:33 +00:00

91 lines
2.2 KiB
C++

/////////////////////////////////////////////////////////////////////////////
// Name: treetest.h
// Purpose: wxTreeCtrl sample
// Author: Julian Smart
// Modified by:
// Created: 04/01/98
// RCS-ID: $Id$
// Copyright: (c) Julian Smart and Markus Holzem
// Licence: wxWindows license
/////////////////////////////////////////////////////////////////////////////
// Define a new application type
class MyApp: public wxApp
{ public:
bool OnInit(void);
wxImageList *m_imageListNormal;
};
class MyTreeCtrl: public wxTreeCtrl
{
public:
MyTreeCtrl(wxWindow *parent, const wxWindowID id, const wxPoint& pos,
const wxSize& size, long style);
~MyTreeCtrl();
void AddItemsRecursively(const wxTreeItemId& idParent,
size_t numChildren,
size_t depth);
void AddTestItemsToTree(size_t numChildren,
size_t depth);
void OnBeginDrag(wxTreeEvent& event);
void OnBeginRDrag(wxTreeEvent& event);
void OnBeginLabelEdit(wxTreeEvent& event);
void OnEndLabelEdit(wxTreeEvent& event);
void OnDeleteItem(wxTreeEvent& event);
void OnGetInfo(wxTreeEvent& event);
void OnSetInfo(wxTreeEvent& event);
void OnItemExpanded(wxTreeEvent& event);
void OnItemExpanding(wxTreeEvent& event);
void OnItemCollapsed(wxTreeEvent& event);
void OnItemCollapsing(wxTreeEvent& event);
void OnSelChanged(wxTreeEvent& event);
void OnSelChanging(wxTreeEvent& event);
void OnKeyDown(wxTreeEvent& event);
DECLARE_EVENT_TABLE()
};
// Define a new frame type
class MyFrame: public wxFrame
{ public:
MyTreeCtrl *m_treeCtrl;
wxTextCtrl *m_logWindow;
MyFrame(const wxString& title, int x, int y, int w, int h);
~MyFrame(void);
public:
void OnQuit(wxCommandEvent& event);
void OnAbout(wxCommandEvent& event);
bool OnClose(void) { return TRUE; }
DECLARE_EVENT_TABLE()
};
class MyTreeItemData : public wxTreeItemData
{
public:
MyTreeItemData(const wxString& desc) : m_desc(desc) { }
void ShowInfo(wxTreeCtrl *tree);
private:
wxString m_desc;
};
// ID for the menu quit command
#define TREE_QUIT 1
#define TREE_ABOUT 102
#define TREE_CTRL 1000
enum
{
TreeCtrlIcon_File,
TreeCtrlIcon_Folder
};