78 lines
1.5 KiB
C++
78 lines
1.5 KiB
C++
|
//+---------------------------------------------------------------------------
|
||
|
//
|
||
|
// Microsoft Windows
|
||
|
// Copyright (C) Microsoft Corporation, 1995 - 1995.
|
||
|
//
|
||
|
// File: menu.hxx
|
||
|
//
|
||
|
// Contents: Declaration of CSharesCM, implementing IContextMenu
|
||
|
//
|
||
|
// History: 20-Dec-95 BruceFo Created
|
||
|
//
|
||
|
//----------------------------------------------------------------------------
|
||
|
|
||
|
#ifndef __MENU_HXX__
|
||
|
#define __MENU_HXX__
|
||
|
|
||
|
class CSharesCM : public IContextMenu
|
||
|
{
|
||
|
public:
|
||
|
|
||
|
CSharesCM(
|
||
|
IN HWND hwnd
|
||
|
);
|
||
|
|
||
|
HRESULT
|
||
|
InitInstance(
|
||
|
IN PWSTR pszMachine,
|
||
|
IN UINT cidl,
|
||
|
IN LPCITEMIDLIST* apidl,
|
||
|
IN IShellFolder* psf
|
||
|
);
|
||
|
|
||
|
~CSharesCM();
|
||
|
|
||
|
//
|
||
|
// IUnknown methods
|
||
|
//
|
||
|
|
||
|
STDMETHOD(QueryInterface)(REFIID riid, LPVOID * ppvObj);
|
||
|
STDMETHOD_(ULONG,AddRef)();
|
||
|
STDMETHOD_(ULONG,Release)();
|
||
|
|
||
|
//
|
||
|
// IContextMenu methods
|
||
|
//
|
||
|
|
||
|
STDMETHOD(QueryContextMenu)(
|
||
|
HMENU hmenu,
|
||
|
UINT indexMenu,
|
||
|
UINT idCmdFirst,
|
||
|
UINT idCmdLast,
|
||
|
UINT uFlags
|
||
|
);
|
||
|
|
||
|
STDMETHOD(InvokeCommand)(
|
||
|
LPCMINVOKECOMMANDINFO lpici
|
||
|
);
|
||
|
|
||
|
STDMETHOD(GetCommandString)(
|
||
|
UINT_PTR idCmd,
|
||
|
UINT uType,
|
||
|
UINT * pwReserved,
|
||
|
LPSTR pszName,
|
||
|
UINT cchMax
|
||
|
);
|
||
|
|
||
|
private:
|
||
|
|
||
|
PWSTR m_pszMachine;
|
||
|
UINT m_cidl;
|
||
|
LPITEMIDLIST* m_apidl;
|
||
|
HWND m_hwnd;
|
||
|
IShellFolder* m_psf;
|
||
|
ULONG m_ulRefs;
|
||
|
};
|
||
|
|
||
|
#endif // __MENU_HXX__
|