DeleteClipData.h 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. #pragma once
  2. #include "DialogResizer.h"
  3. #include "ShowTaskBarIcon.h"
  4. #include "afxwin.h"
  5. #include "ATLComTime.h"
  6. #include <vector>
  7. #include "afxcmn.h"
  8. // CDeleteClipData dialog
  9. class CDeleteData
  10. {
  11. public:
  12. CDeleteData() :
  13. m_lID(-1),
  14. m_dataSize(0)
  15. {
  16. }
  17. long m_lID;
  18. long m_DatalID;
  19. CString m_Desc;
  20. CTime m_createdDateTime;
  21. CTime m_lastUsedDateTime;
  22. CString m_clipboardFormat;
  23. DWORD m_dataSize;
  24. CString m_quickPasteText;
  25. };
  26. class CDeleteClipData : public CDialog
  27. {
  28. DECLARE_DYNAMIC(CDeleteClipData)
  29. public:
  30. CDeleteClipData(CWnd* pParent = NULL); // standard constructor
  31. virtual ~CDeleteClipData();
  32. void SetNotifyWnd(HWND hWnd);
  33. // Dialog Data
  34. enum { IDD = IDD_DELETE_CLIP_DATA };
  35. protected:
  36. virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
  37. DECLARE_MESSAGE_MAP()
  38. CDialogResizer m_Resize;
  39. CListCtrl m_List;
  40. HWND m_hWndParent;
  41. CShowTaskBarIcon m_showTaskbar;
  42. std::vector<CDeleteData> m_data;
  43. std::vector<CDeleteData> m_toDelete;
  44. std::vector<CDeleteData> m_filteredOut;
  45. bool m_applyingDelete;
  46. bool m_cancelDelete;
  47. void InitListCtrlCols();
  48. virtual BOOL OnInitDialog();
  49. void SetDbSize();
  50. afx_msg void OnClose();
  51. afx_msg void OnSize(UINT nType, int cx, int cy);
  52. afx_msg void OnNcDestroy();
  53. void LoadItems();
  54. void FilterItems();
  55. bool MatchesFilter(CDeleteData *pdata);
  56. void ApplyDelete();
  57. public:
  58. CString m_clipTitle;
  59. BOOL m_filterByClipTitle;
  60. BOOL m_filterByCreatedDate;
  61. BOOL m_filterByLastUsedDate;
  62. BOOL m_filterByClipboardFormat;
  63. CComboBox m_clipboardFomatCombo;
  64. COleDateTime m_createdDateStart;
  65. COleDateTime m_createdDateEnd;
  66. COleDateTime m_createdTimeStart;
  67. COleDateTime m_createdTimeEnd;
  68. COleDateTime m_usedTimeStart;
  69. COleDateTime m_usedTimeEnd;
  70. COleDateTime m_usedDateStart;
  71. COleDateTime m_usedDateEnd;
  72. afx_msg void OnBnClickedButtonSearch();
  73. afx_msg void OnLvnKeydownList2(NMHDR *pNMHDR, LRESULT *pResult);
  74. afx_msg void OnLvnItemchangedList2(NMHDR *pNMHDR, LRESULT *pResult);
  75. afx_msg void OnHdnGetdispinfoList2(NMHDR *pNMHDR, LRESULT *pResult);
  76. afx_msg void OnLvnGetdispinfoList2(NMHDR *pNMHDR, LRESULT *pResult);
  77. CString m_databaseSize;
  78. CString m_selectedSize;
  79. CString m_selectedCount;
  80. CString m_toDeleteSize;
  81. afx_msg void OnBnClickedCheckClipTitle();
  82. afx_msg void OnBnClickedButtonApply();
  83. afx_msg void OnBnClickedCancel();
  84. afx_msg void OnTimer(UINT_PTR nIDEvent);
  85. afx_msg void OnBnClickedCheckCreateDate();
  86. afx_msg void OnBnClickedCheckLastUseDate();
  87. afx_msg void OnBnClickedCheckDataFormat();
  88. afx_msg void OnLvnColumnclickList2(NMHDR *pNMHDR, LRESULT *pResult);
  89. virtual BOOL PreTranslateMessage(MSG* pMsg);
  90. };