findtaskdlg.h
来自「管理项目进度工具的原代码」· C头文件 代码 · 共 220 行
H
220 行
#if !defined(AFX_FINDTASKDLG_H__BDCCE0F4_B91B_47AD_AE27_1DEB4BA7EA1C__INCLUDED_)
#define AFX_FINDTASKDLG_H__BDCCE0F4_B91B_47AD_AE27_1DEB4BA7EA1C__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// FindTaskDlg.h : header file
//
#include "findtextpage.h"
#include "finddatepage.h"
#include "findnumpage.h"
#include "findblankpage.h"
#include "findprioritypage.h"
#include "findriskpage.h"
#include "finditemspage.h"
#include "..\shared\PropertyPageHost.h"
#include "..\shared\dockmanager.h"
#include "..\shared\entoolbar.h"
#include "..\shared\toolbarhelper.h"
#include "..\shared\tabbedcombobox.h"
#include "..\3rdparty\lockableheaderctrl.h"
#include <afxtempl.h>
/////////////////////////////////////////////////////////////////////////////
// CFindTaskDlg dialog
const UINT WM_FTD_FIND = ::RegisterWindowMessage("WM_FTD_FIND");
const UINT WM_FTD_SELECTRESULT = ::RegisterWindowMessage("WM_FTD_SELECTRESULT");
const UINT WM_FTD_SELECTALL = ::RegisterWindowMessage("WM_FTD_SELECTALL");
const UINT WM_FTD_CLOSE = ::RegisterWindowMessage("WM_FTD_CLOSE");
struct FTDRESULT
{
DWORD dwItemData;
int nTaskList;
BOOL bDone;
};
typedef CArray<FTDRESULT, FTDRESULT&> CFTDResultsArray;
enum FIND_WHAT
{
FW_NOTHING = -1,
FW_TITLECOMMENTS,
FW_PRIORITY,
FW_PERCENTDONE,
FW_ALLOCTO,
FW_ALLOCBY,
FW_STATUS,
FW_CATEGORY,
FW_TIMEEST,
FW_TIMESPENT,
FW_STARTDATE,
FW_DUEDATE,
FW_DONEDATE,
FW_TASKID,
FW_FLAG,
FW_CREATIONDATE,
FW_CREATEDBY,
FW_LASTMOD,
FW_RISK,
FW_EXTERNALID,
FW_COST,
FW_VERSION,
};
class CFindTaskDlg : public CDialog
{
// Construction
public:
CFindTaskDlg(CWnd* pParent = NULL); // standard constructor
~CFindTaskDlg();
BOOL Initialize(CWnd* pParent, BOOL bDockable = TRUE);
BOOL Show(BOOL bShow = TRUE);
void RefreshSearch();
void SetPriorityColors(const CDWordArray& aColors);
void AddHeaderRow(LPCTSTR szText, BOOL bSpaceAbove = TRUE);
void AddResult(LPCTSTR szTask, LPCTSTR szMatch, LPCTSTR szPath, BOOL bDone, DWORD dwItemData, int nTaskList);
FIND_WHAT GetFindWhat();
BOOL GetRange(COleDateTime& dateFrom, COleDateTime& dateTo);
BOOL GetRange(int& nFrom, int& nTo);
BOOL GetRange(double& dFrom, double& dTo);
int GetItems(CStringArray& aItems);
BOOL GetMatchAllItems();
CString GetText();
BOOL GetMatchCase();
BOOL GetMatchWholeWord();
BOOL GetSearchAllTasklists();
BOOL GetIncludeDone();
BOOL GetSearchResults();
int GetResultCount() const; // all tasklists
int GetResultCount(int nTaskList) const;
POSITION GetFirstResultPos() const;
BOOL GetNextResult(POSITION& pos, FTDRESULT& res) const;
int GetAllResults(CFTDResultsArray& results) const;
void DeleteResults(int nTaskList);
BOOL GetAutoSelectSingles();
protected:
int DoModal() { return -1; } // not for public use
// Dialog Data
//{{AFX_DATA(CFindTaskDlg)
enum { IDD = IDD_FIND_DIALOG };
CTabbedComboBox m_cbFindOptions;
int m_bAllTasklists;
CString m_sResultsLabel;
BOOL m_bIncludeDone;
BOOL m_bMatchCase;
BOOL m_bMatchWholeWord;
int m_nSelFindIndex;
FIND_WHAT m_nFindOption;
BOOL m_bAutoSelectSingles;
BOOL m_bSearchResults;
//}}AFX_DATA
CListCtrl m_lcResults;
CFindTextPage m_pageTitleComments;
CFindPriorityPage m_pagePriority;
CFindRiskPage m_pageRisk;
CFindNumPage m_pagePercent;
CFindNumPage m_pageTimeEst;
CFindNumPage m_pageTimeSpent;
CFindNumPage m_pageTaskID;
CFindNumPage m_pageCost;
CFindDatePage m_pageCreationDate;
CFindDatePage m_pageStartDate;
CFindDatePage m_pageDueDate;
CFindDatePage m_pageDoneDate;
CFindDatePage m_pageLastMod;
CFindItemsPage m_pageAllocTo;
CFindTextPage m_pageAllocBy;
CFindTextPage m_pageCreatedBy;
CFindTextPage m_pageStatus;
CFindItemsPage m_pageCategory;
CFindTextPage m_pageExtID;
CFindTextPage m_pageVersion;
CFindBlankPage m_pageFlag;
CDockManager m_dockMgr;
BOOL m_bDockable;
CEnToolBar m_toolbar;
CToolbarHelper m_tbHelper;
CLockableHeaderCtrl m_hdrResults;
CMap<DWORD, DWORD, FTDRESULT, FTDRESULT&> m_mapResults;
CPropertyPageHost m_host;
CFont m_fontBold;
int m_nCurSel;
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CFindTaskDlg)
public:
virtual BOOL PreTranslateMessage(MSG* pMsg);
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
virtual void OnCancel() { ShowWindow(SW_HIDE); }
// Implementation
protected:
// Generated message map functions
//{{AFX_MSG(CFindTaskDlg)
afx_msg void OnFind();
afx_msg void OnClose();
virtual BOOL OnInitDialog();
afx_msg void OnSize(UINT nType, int cx, int cy);
afx_msg void OnDestroy();
afx_msg void OnSelchangeFindoption();
afx_msg void OnGetMinMaxInfo(MINMAXINFO FAR* lpMMI);
afx_msg void OnSelectall();
afx_msg void OnDockright();
afx_msg void OnUpdateDockright(CCmdUI* pCmdUI);
afx_msg void OnDockleft();
afx_msg void OnUpdateDockleft(CCmdUI* pCmdUI);
afx_msg void OnUndock();
afx_msg void OnUpdateUndock(CCmdUI* pCmdUI);
afx_msg void OnDockbelow();
afx_msg void OnUpdateDockbelow(CCmdUI* pCmdUI);
afx_msg void OnSearchresults();
afx_msg BOOL OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message);
afx_msg void OnItemchangingResults(NMHDR* pNMHDR, LRESULT* pResult);
//}}AFX_MSG
afx_msg void OnCustomDraw(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnItemActivated(NMHDR* pNMHDR, LRESULT* pResult);
DECLARE_MESSAGE_MAP()
void SaveSettings();
void ResizeDlg(int cx = 0, int cy = 0);
void InitFieldColumn();
void LoadSettings();
CSize GetMinDockedSize(DM_POS nPos);
int GetNextResult(int nItem, BOOL bDown);
void SelectItem(int nItem);
int GetSelectedItem();
// void InvalidateVisibleHeaderRows();
};
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_FINDTASKDLG_H__BDCCE0F4_B91B_47AD_AE27_1DEB4BA7EA1C__INCLUDED_)
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?