MsgTreeView.h
上传用户:zslianheng
上传日期:2013-04-03
资源大小:946k
文件大小:3k
源码类别:

Linux/Unix编程

开发平台:

Visual C++

  1. /***************************************************************************
  2.  *                                                                         *
  3.  *   This program is free software; you can redistribute it and/or modify  *
  4.  *   it under the terms of the GNU General Public License as published by  *
  5.  *   the Free Software Foundation; either version 2 of the License, or     *
  6.  *   (at your option) any later version.                                   *
  7.  *                                                                         *
  8.  *   copyright            : (C) 2002 by Zhang Yong                         *
  9.  *   email                : z-yong163@163.com                              *
  10.  ***************************************************************************/
  11. #if !defined(AFX_MSGTREEVIEW_H__B0909E4B_9D75_4DB6_8017_A5A9B27CDFFC__INCLUDED_)
  12. #define AFX_MSGTREEVIEW_H__B0909E4B_9D75_4DB6_8017_A5A9B27CDFFC__INCLUDED_
  13. #if _MSC_VER > 1000
  14. #pragma once
  15. #endif // _MSC_VER > 1000
  16. // MsgTreeView.h : header file
  17. //
  18. class CMsgListView;
  19. class DBOutStream;
  20. class DBInStream;
  21. /////////////////////////////////////////////////////////////////////////////
  22. // CMsgTreeView view
  23. class CMsgTreeView : public CTreeView
  24. {
  25. protected:
  26. CMsgTreeView();           // protected constructor used by dynamic creation
  27. DECLARE_DYNCREATE(CMsgTreeView)
  28. // Attributes
  29. public:
  30. void setListView(CMsgListView *listener) {
  31. listView = listener;
  32. }
  33. DWORD getUIN();
  34. // Operations
  35. public:
  36. void save(DBOutStream &out);
  37. void load(DBInStream &in);
  38. void expand(DWORD uin);
  39. void delSelectedMsg();
  40. void exportTxt(CStdioFile &file);
  41. void exportContact(CStdioFile &file);
  42. private:
  43. void delMsg(HTREEITEM item);
  44. void exportTxt(CStdioFile &file, HTREEITEM item);
  45. void exportContact(CStdioFile &file, HTREEITEM item);
  46. void exportBak(const char *fileName, HTREEITEM item);
  47. HTREEITEM findItem(HTREEITEM item, DWORD uin);
  48. CMsgListView *listView;
  49. // Overrides
  50. // ClassWizard generated virtual function overrides
  51. //{{AFX_VIRTUAL(CMsgTreeView)
  52. protected:
  53. virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
  54. //}}AFX_VIRTUAL
  55. // Implementation
  56. protected:
  57. virtual ~CMsgTreeView();
  58. #ifdef _DEBUG
  59. virtual void AssertValid() const;
  60. virtual void Dump(CDumpContext& dc) const;
  61. #endif
  62. // Generated message map functions
  63. protected:
  64. //{{AFX_MSG(CMsgTreeView)
  65. afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
  66. afx_msg void OnRclick(NMHDR* pNMHDR, LRESULT* pResult);
  67. afx_msg void OnSelchanged(NMHDR* pNMHDR, LRESULT* pResult);
  68. afx_msg void OnUpdateEditDel(CCmdUI* pCmdUI);
  69. afx_msg void OnUpdateExportContact(CCmdUI* pCmdUI);
  70. afx_msg void OnUpdateExportBak(CCmdUI* pCmdUI);
  71. afx_msg void OnExportBak();
  72. afx_msg void OnFileImport();
  73. afx_msg void OnExportBackup();
  74. //}}AFX_MSG
  75. DECLARE_MESSAGE_MAP()
  76. };
  77. /////////////////////////////////////////////////////////////////////////////
  78. //{{AFX_INSERT_LOCATION}}
  79. // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
  80. #endif // !defined(AFX_MSGTREEVIEW_H__B0909E4B_9D75_4DB6_8017_A5A9B27CDFFC__INCLUDED_)