MultiSelTree.h 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. #if !defined(AFX_MULTISELTREE_H__AA2F1FF5_1F08_4835_8C57_6A0110160B9F__INCLUDED_)
  2. #define AFX_MULTISELTREE_H__AA2F1FF5_1F08_4835_8C57_6A0110160B9F__INCLUDED_
  3. #if _MSC_VER > 1000
  4. #pragma once
  5. #endif // _MSC_VER > 1000
  6. // MultiSelTree.h : header file
  7. //
  8. /////////////////////////////////////////////////////////////////////////////
  9. // CMultiSelTree window
  10. class EXPORT_CLASS CMultiSelTree : public CTreeCtrl
  11. {
  12. // Construction
  13. public:
  14. CMultiSelTree();
  15. CMapPtrToPtr* GetSelectedItems();
  16. DWORD GetItemData (HTREEITEM hItem) const;
  17. BOOL SetItemData (HTREEITEM hItem, DWORD dwData);
  18. HTREEITEM InsertItem( LPTVINSERTSTRUCT lpInsertStruct );
  19. HTREEITEM InsertItem(UINT nMask, LPCTSTR lpszItem, int nImage, int nSelectedImage, UINT nState, UINT nStateMask, LPARAM lParam, HTREEITEM hParent, HTREEITEM hInsertAfter );
  20. HTREEITEM InsertItem( LPCTSTR lpszItem, HTREEITEM hParent = TVI_ROOT, HTREEITEM hInsertAfter = TVI_LAST );
  21. HTREEITEM InsertItem( LPCTSTR lpszItem, int nImage, int nSelectedImage, HTREEITEM hParent = TVI_ROOT, HTREEITEM hInsertAfter = TVI_LAST);
  22. BOOL DeleteItem (HTREEITEM hItem);
  23. BOOL DeleteAllItems ();
  24. // Attributes
  25. public:
  26. // Operations
  27. public:
  28. // Overrides
  29. // ClassWizard generated virtual function overrides
  30. //{{AFX_VIRTUAL(CMultiSelTree)
  31. //}}AFX_VIRTUAL
  32. // Implementation
  33. public:
  34. virtual ~CMultiSelTree();
  35. // Generated message map functions
  36. protected:
  37. void SelectItem(UINT nFlags, HTREEITEM hItem);
  38. CMapPtrToPtr m_listSels;
  39. HTREEITEM m_hItemFirstSel;
  40. HTREEITEM m_hItemLastSel;
  41. BOOL m_bOnMouseSel;
  42. //{{AFX_MSG(CMultiSelTree)
  43. afx_msg void OnCustomDraw(NMHDR* pNMHDR, LRESULT* pResult);
  44. afx_msg void OnSelchanged(NMHDR* pNMHDR, LRESULT* pResult);
  45. afx_msg void OnDestroy();
  46. afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
  47. afx_msg void OnRButtonDown(UINT nFlags, CPoint point);
  48. //}}AFX_MSG
  49. DECLARE_MESSAGE_MAP()
  50. };
  51. /////////////////////////////////////////////////////////////////////////////
  52. //{{AFX_INSERT_LOCATION}}
  53. // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
  54. #endif // !defined(AFX_MULTISELTREE_H__AA2F1FF5_1F08_4835_8C57_6A0110160B9F__INCLUDED_)