X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f135ff73b4b0b7c76a1fa3396f768c44f8dc204f..1cff61deed401f43f03aafb14531771c89b1df93:/samples/treectrl/treetest.h diff --git a/samples/treectrl/treetest.h b/samples/treectrl/treetest.h index a72ee5fa51..440b43197d 100644 --- a/samples/treectrl/treetest.h +++ b/samples/treectrl/treetest.h @@ -6,82 +6,112 @@ // Created: 04/01/98 // RCS-ID: $Id$ // Copyright: (c) Julian Smart and Markus Holzem -// Licence: wxWindows license +// Licence: wxWindows license ///////////////////////////////////////////////////////////////////////////// // Define a new application type -class MyApp: public wxApp -{ public: - bool OnInit(void); +class MyApp : public wxApp +{ +public: + bool OnInit(); +}; + +class MyTreeItemData : public wxTreeItemData +{ +public: + MyTreeItemData(const wxString& desc) : m_desc(desc) { } + + void ShowInfo(wxTreeCtrl *tree); - wxImageList *m_imageListNormal; +private: + wxString m_desc; }; -class MyTreeCtrl: public wxTreeCtrl +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() + enum + { + TreeCtrlIcon_File, + TreeCtrlIcon_Folder + }; + + MyTreeCtrl(wxWindow *parent, const wxWindowID id, + const wxPoint& pos, const wxSize& size, + long style); + virtual ~MyTreeCtrl(); + + 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); + + void GetItemsRecursively(const wxTreeItemId& idParent, long cookie); + + void AddTestItemsToTree(size_t numChildren, + size_t depth); + +private: + void AddItemsRecursively(const wxTreeItemId& idParent, + size_t nChildren, + size_t depth, + size_t folder); + + wxImageList *m_imageListNormal; + + 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) { } + // ctor and dtor + MyFrame(const wxString& title, int x, int y, int w, int h); + virtual ~MyFrame(); + + // menu callbacks + void OnQuit(wxCommandEvent& event); + void OnAbout(wxCommandEvent& event); + void OnDump(wxCommandEvent& event); + void OnDelete(wxCommandEvent& event); + void OnDeleteAll(wxCommandEvent& event); + void OnRecreate(wxCommandEvent& event); - void ShowInfo(wxTreeCtrl *tree); + void OnSetBold(wxCommandEvent& event) { DoSetBold(TRUE); } + void OnClearBold(wxCommandEvent& event) { DoSetBold(FALSE); } private: - wxString m_desc; -}; + MyTreeCtrl *m_treeCtrl; + + void DoSetBold(bool bold = TRUE); -// ID for the menu quit command -#define TREE_QUIT 1 -#define TREE_ABOUT 102 + DECLARE_EVENT_TABLE() +}; -#define TREE_CTRL 1000 +// menu and control ids +enum +{ + TreeTest_Quit, + TreeTest_About, + TreeTest_Dump, + TreeTest_Bold, + TreeTest_UnBold, + TreeTest_Delete, + TreeTest_DeleteAll, + TreeTest_Recreate, + TreeTest_Ctrl = 100 +}; enum {