Source code of Windows XP (NT5)
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.

140 lines
2.5 KiB

  1. //Copyright (c) 1998 - 1999 Microsoft Corporation
  2. #ifndef __COMP_H_
  3. #define __COMP_H_
  4. #include <mmc.h>
  5. /*
  6. #define IDM_ENABLE_CONNECTION 102
  7. #define IDM_RENAME_CONNECTION 103
  8. #define IDM_SETTINGS_PROPERTIES 104
  9. #define IDM_SETTINGS_DELTEMPDIRSONEXIT 105
  10. #define IDM_SETTINGS_USETMPDIR 106
  11. */
  12. class CComp:
  13. public IComponent,
  14. public IExtendContextMenu,
  15. public IExtendPropertySheet
  16. // public IExtendControlbar,
  17. {
  18. public:
  19. CComp( CCompdata *);
  20. ~CComp();
  21. //
  22. // IUnknown
  23. //
  24. STDMETHOD( QueryInterface )( REFIID , PVOID * );
  25. STDMETHOD_( ULONG , AddRef )( );
  26. STDMETHOD_( ULONG , Release )( );
  27. //
  28. // IComponent interface members
  29. //
  30. STDMETHOD( Initialize )( LPCONSOLE );
  31. STDMETHOD( Notify )( LPDATAOBJECT , MMC_NOTIFY_TYPE , LPARAM , LPARAM );
  32. STDMETHOD( Destroy )( MMC_COOKIE );
  33. STDMETHOD( GetResultViewType )( MMC_COOKIE , LPOLESTR* , PLONG );
  34. STDMETHOD( QueryDataObject )( MMC_COOKIE , DATA_OBJECT_TYPES , LPDATAOBJECT* );
  35. STDMETHOD( GetDisplayInfo )( LPRESULTDATAITEM );
  36. STDMETHOD( CompareObjects )( LPDATAOBJECT , LPDATAOBJECT );
  37. HRESULT OnShow( LPDATAOBJECT , BOOL );
  38. HRESULT InsertItemsinResultPane( );
  39. HRESULT AddSettingsinResultPane( );
  40. HRESULT OnSelect( LPDATAOBJECT , BOOL , BOOL );
  41. //
  42. // IExtendContextMenu
  43. STDMETHOD( AddMenuItems )( LPDATAOBJECT , LPCONTEXTMENUCALLBACK , PLONG );
  44. STDMETHOD( Command )( LONG , LPDATAOBJECT );
  45. STDMETHOD( CreatePropertyPages )( LPPROPERTYSHEETCALLBACK , LONG_PTR , LPDATAOBJECT );
  46. STDMETHOD( QueryPagesFor )( LPDATAOBJECT );
  47. BOOL OnRefresh( LPDATAOBJECT );
  48. BOOL OnDelete( LPDATAOBJECT );
  49. BOOL OnViewChange( );
  50. BOOL OnAddImages( );
  51. BOOL OnHelp( LPDATAOBJECT );
  52. BOOL OnDblClk( LPDATAOBJECT );
  53. // HRESULT SetColumnWidth( int );
  54. HRESULT SetColumnsForSettingsPane( );
  55. private:
  56. ULONG m_cRef;
  57. LPCONSOLE m_pConsole;
  58. CCompdata* m_pCompdata;
  59. LPRESULTDATA m_pResultData;
  60. LPHEADERCTRL m_pHeaderCtrl;
  61. LPCONSOLEVERB m_pConsoleVerb;
  62. LPIMAGELIST m_pImageResult;
  63. LPDISPLAYHELP m_pDisplayHelp;
  64. INT m_nSettingCol;
  65. INT m_nAttribCol;
  66. // TCHAR m_strDispName[80];
  67. // IConsoleVerb* m_ipConsoleVerb;
  68. // LPTOOLBAR m_ipToolbar1;
  69. // LPCONTROLBAR m_ipControlbar;
  70. // HBITMAP m_hbmp16x16;
  71. // HBITMAP m_hbmp32x32;
  72. // HBITMAP m_hbmpToolbar1;
  73. // LONG m_nFileCount;
  74. };
  75. #endif // __COMP_H_