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.

51 lines
1.5 KiB

  1. // MenuExt.h: Definition of the CMenuExt class
  2. //
  3. //////////////////////////////////////////////////////////////////////
  4. #if !defined(AFX_MENUEXT_H__CB3F876D_9584_49A1_9914_3B7667C45C62__INCLUDED_)
  5. #define AFX_MENUEXT_H__CB3F876D_9584_49A1_9914_3B7667C45C62__INCLUDED_
  6. #if _MSC_VER > 1000
  7. #pragma once
  8. #endif // _MSC_VER > 1000
  9. #include <mmc.h>
  10. #include "resource.h" // main symbols
  11. /////////////////////////////////////////////////////////////////////////////
  12. // CMenuExt
  13. class ATL_NO_VTABLE CMenuExt :
  14. public CComObjectRootEx<CComSingleThreadModel>,
  15. public CComCoClass<CMenuExt, &CLSID_MenuExt>,
  16. public IMenuExt,
  17. public IExtendContextMenu
  18. {
  19. public:
  20. CMenuExt()
  21. {
  22. }
  23. DECLARE_REGISTRY_RESOURCEID(IDR_MENUEXT)
  24. DECLARE_NOT_AGGREGATABLE(CMenuExt)
  25. DECLARE_PROTECT_FINAL_CONSTRUCT()
  26. BEGIN_COM_MAP(CMenuExt)
  27. COM_INTERFACE_ENTRY(IExtendContextMenu)
  28. END_COM_MAP()
  29. public:
  30. ///////////////////////////////
  31. // Interface IExtendContextMenu
  32. ///////////////////////////////
  33. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE AddMenuItems(
  34. /* [in] */ LPDATAOBJECT piDataObject,
  35. /* [in] */ LPCONTEXTMENUCALLBACK piCallback,
  36. /* [out][in] */ long __RPC_FAR *pInsertionAllowed);
  37. virtual /* [helpstring] */ HRESULT STDMETHODCALLTYPE Command(
  38. /* [in] */ long lCommandID,
  39. /* [in] */ LPDATAOBJECT piDataObject);
  40. };
  41. #endif // !defined(AFX_MENUEXT_H__CB3F876D_9584_49A1_9914_3B7667C45C62__INCLUDED_)