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.

79 lines
1.5 KiB

  1. //+---------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. // Copyright (C) Microsoft Corporation, 1995 - 1995.
  5. //
  6. // File: menu.hxx
  7. //
  8. // Contents: Declaration of CSharesCMSpecial, implementing IContextMenu
  9. //
  10. // History: 20-Dec-95 BruceFo Created
  11. //
  12. //----------------------------------------------------------------------------
  13. #ifndef __MENUSP_HXX__
  14. #define __MENUSP_HXX__
  15. #ifdef WIZARDS
  16. class CSharesCMSpecial : public IContextMenu
  17. {
  18. public:
  19. CSharesCMSpecial(
  20. IN HWND hwnd
  21. );
  22. HRESULT
  23. InitInstance(
  24. IN PWSTR pszMachine,
  25. IN LPCITEMIDLIST pidl,
  26. IN IShellFolder* psf
  27. );
  28. ~CSharesCMSpecial();
  29. //
  30. // IUnknown methods
  31. //
  32. STDMETHOD(QueryInterface)(REFIID riid, LPVOID * ppvObj);
  33. STDMETHOD_(ULONG,AddRef)();
  34. STDMETHOD_(ULONG,Release)();
  35. //
  36. // IContextMenu methods
  37. //
  38. STDMETHOD(QueryContextMenu)(
  39. HMENU hmenu,
  40. UINT indexMenu,
  41. UINT idCmdFirst,
  42. UINT idCmdLast,
  43. UINT uFlags
  44. );
  45. STDMETHOD(InvokeCommand)(
  46. LPCMINVOKECOMMANDINFO lpici
  47. );
  48. STDMETHOD(GetCommandString)(
  49. UINT_PTR idCmd,
  50. UINT uType,
  51. UINT * pwReserved,
  52. LPSTR pszName,
  53. UINT cchMax
  54. );
  55. private:
  56. PWSTR m_pszMachine;
  57. LPITEMIDLIST m_pidl;
  58. IShellFolder* m_psf;
  59. HWND m_hwnd;
  60. ULONG m_ulRefs;
  61. };
  62. #endif // WIZARDS
  63. #endif // __MENUSP_HXX__