Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

90 lines
2.8 KiB

  1. //////////////////////////////////////////////////////////////////////////////
  2. //
  3. // Copyright (c) 2000-2001 Microsoft Corporation
  4. //
  5. // Module Name:
  6. // DetailsDlg.h
  7. //
  8. // Maintained By:
  9. // David Potter (DavidP) 27-MAR-2001
  10. //
  11. //////////////////////////////////////////////////////////////////////////////
  12. #pragma once
  13. //////////////////////////////////////////////////////////////////////////////
  14. //++
  15. //
  16. // class CDetailsDlg
  17. //
  18. // Description:
  19. // Class to handle the Details dialog which is displayed to show
  20. // details for an item in a tree control on the Analysis or Commit
  21. // pages.
  22. //
  23. //--
  24. //////////////////////////////////////////////////////////////////////////////
  25. class CDetailsDlg
  26. {
  27. friend class CAnalayzePage;
  28. friend class CCommitPage;
  29. friend class CTaskTreeView;
  30. private: // data
  31. HWND m_hwnd; // Our HWND
  32. HICON m_hiconWarn; // Warning icon
  33. HICON m_hiconError; // Error icon
  34. CTaskTreeView * m_pttv; // Tree view to traverse
  35. HTREEITEM m_htiSelected; // Selected item when dialog was created.
  36. CHARRANGE m_chrgEnLinkClick; // Character range for EN_LINK messages.
  37. unsigned int m_fControlDown : 1; // TRUE if a control key is down.
  38. unsigned int m_fAltDown : 1; // TRUE if an alt key is down.
  39. private: // methods
  40. CDetailsDlg(
  41. CTaskTreeView * pttvIn
  42. , HTREEITEM htiSelectedIn
  43. );
  44. ~CDetailsDlg( void );
  45. static INT_PTR CALLBACK
  46. S_DlgProc( HWND hwndDlg, UINT nMsg, WPARAM wParam, LPARAM lParam );
  47. LRESULT OnInitDialog( void );
  48. void OnDestroy( void );
  49. void OnSysColorChange( void );
  50. LRESULT OnKeyDown( LPARAM lParamIn );
  51. LRESULT OnKeyUp( LPARAM lParamIn );
  52. LRESULT OnCommand( UINT idNotificationIn, UINT idControlIn, HWND hwndSenderIn );
  53. LRESULT OnCommandBnClickedPrev( void );
  54. LRESULT OnCommandBnClickedNext( void );
  55. LRESULT OnCommandBnClickedCopy( void );
  56. LRESULT OnNotify( WPARAM idCtrlIn, LPNMHDR pnmhdrIn );
  57. LRESULT OnNotifyEnLink( WPARAM idCtrlIn, LPNMHDR pnmhdrIn );
  58. void HandleLinkClick( ENLINK * penlIn, WPARAM idCtrlIn );
  59. void UpdateButtons( void );
  60. HRESULT HrDisplayItem( HTREEITEM htiIn );
  61. HRESULT
  62. HrAppendControlStringToClipboardString(
  63. BSTR * pbstrClipboard
  64. , UINT idsLabelIn
  65. , UINT idcDataIn
  66. , bool fNewlineBeforeTextIn
  67. );
  68. public: // methods
  69. static HRESULT
  70. S_HrDisplayModalDialog(
  71. HWND hwndParentIn
  72. , CTaskTreeView * pttvIn
  73. , HTREEITEM htiSelectedIn
  74. );
  75. }; //*** class CDetailsDlg