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.
 
 
 
 
 
 

40 lines
1.0 KiB

// CISFMenuCallback implementation
#ifndef _ISFMENU_H
#define _ISFMENU_H
#include "cowsite.h"
class CISFMenuCallback : public IShellMenuCallback,
public CObjectWithSite
{
public:
// *** IUnknown methods ***
STDMETHODIMP QueryInterface (REFIID riid, LPVOID * ppvObj);
STDMETHODIMP_(ULONG) AddRef();
STDMETHODIMP_(ULONG) Release();
// *** IShellMenuCallback methods ***
STDMETHODIMP CallbackSM(LPSMDATA smd, UINT uMsg, WPARAM wParam, LPARAM lParam);
// *** IObjectWithSite methods ***
STDMETHODIMP SetSite(IUnknown* punkSite);
CISFMenuCallback();
HRESULT Initialize(IUnknown* punk);
private:
virtual ~CISFMenuCallback();
HRESULT _GetObject(LPSMDATA psmd, REFIID riid, void** ppvObj);
HRESULT _SetObject(LPSMDATA psmd, REFIID riid, void** ppvObj);
BOOL _IsVisible(LPITEMIDLIST pidl);
HRESULT _GetSFInfo(LPSMDATA psmd, PSMINFO psminfo);
int _cRef;
IOleCommandTarget* _poct; // our isfband subject
IUnknown* _punkSite;
LPITEMIDLIST _pidl;
};
#endif // _ISFMENU_H