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.

68 lines
1.8 KiB

  1. /**********************************************************************/
  2. /** Microsoft Windows/NT **/
  3. /** Copyright(c) Microsoft Corporation, 1997 - 1998 **/
  4. /**********************************************************************/
  5. /*
  6. about.h
  7. prototypes for the IAbout interface for MMC
  8. FILE HISTORY:
  9. */
  10. #ifndef _ABOUT_H
  11. #define _ABOUT_H
  12. class CAbout :
  13. public ISnapinAbout,
  14. public CComObjectRoot
  15. {
  16. public:
  17. CAbout();
  18. ~CAbout();
  19. public:
  20. //DECLARE_REGISTRY(CSnapin, _T("Snapin.About.1"), _T("Snapin.About"), IDS_SNAPIN_DESC, THREADFLAGS_BOTH)
  21. BEGIN_COM_MAP(CAbout)
  22. COM_INTERFACE_ENTRY(ISnapinAbout)
  23. END_COM_MAP()
  24. public:
  25. STDMETHOD(GetSnapinDescription)(LPOLESTR* lpDescription);
  26. STDMETHOD(GetProvider)(LPOLESTR* lpName);
  27. STDMETHOD(GetSnapinVersion)(LPOLESTR* lpVersion);
  28. STDMETHOD(GetSnapinImage)(HICON* hAppIcon);
  29. STDMETHOD(GetStaticFolderImage)(HBITMAP* hSmallImage,
  30. HBITMAP* hSmallImageOpen,
  31. HBITMAP* hLargeImage,
  32. COLORREF* cLargeMask);
  33. // Must override
  34. protected:
  35. virtual UINT GetAboutDescriptionId() = 0;
  36. virtual UINT GetAboutProviderId() = 0;
  37. virtual UINT GetAboutVersionId() = 0;
  38. virtual UINT GetAboutIconId() = 0;
  39. // helpers for the GetStaticFolderImage
  40. virtual UINT GetSmallRootId() = 0;
  41. virtual UINT GetSmallOpenRootId() = 0;
  42. virtual UINT GetLargeRootId() = 0;
  43. virtual COLORREF GetLargeColorMask() = 0;
  44. private:
  45. HBITMAP m_hSmallImage;
  46. HBITMAP m_hSmallImageOpen;
  47. HBITMAP m_hLargeImage;
  48. HICON m_hAppIcon;
  49. // Internal functions
  50. private:
  51. HRESULT AboutHelper(UINT nID, LPOLESTR* lpPtr);
  52. };
  53. #endif