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.
|
|
//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\ //
// chanmenu.h
//
// Conext menu interface for items.
//
// History:
//
// 3/26/97 edwardp Created.
//
////////////////////////////////////////////////////////////////////////////////
//
// Check for previous includes of this file.
//
#ifndef _CHANMENU_H_
#define _CHANMENU_H_
//
// Class definition for the item context menu class.
//
class CChannelMenu : public IContextMenu, public IShellExtInit { //
// Methods
//
public:
// Constructor
CChannelMenu(void);
// IUnknown
STDMETHODIMP QueryInterface(REFIID, void **); STDMETHODIMP_(ULONG) AddRef(void); STDMETHODIMP_(ULONG) Release(void);
// IContextMenu methods.
STDMETHODIMP QueryContextMenu(HMENU hmenu, UINT indexMenu, UINT idCmdFirst, UINT idCmdLast, UINT uFlags);
STDMETHODIMP InvokeCommand(LPCMINVOKECOMMANDINFO lpici);
STDMETHODIMP GetCommandString(UINT_PTR idCommand, UINT uFLags, UINT *pwReserved, LPSTR pszName, UINT cchMax);
// ISHelExtInit
STDMETHODIMP Initialize(LPCITEMIDLIST pidl, LPDATAOBJECT pdobj, HKEY hkey);
private:
// Destructor.
~CChannelMenu(void);
// Helper functions.
void RemoveMenuItems(HMENU hmenu); void Refresh(HWND hwnd); void ViewSource(HWND hwnd); HRESULT Subscribe(HWND hwnd);
//
// Member variables.
//
private:
ULONG m_cRef; ISubscriptionMgr* m_pSubscriptionMgr; BSTR m_bstrURL; BSTR m_bstrName; TCHAR m_szPath[MAX_PATH]; TASK_TRIGGER m_tt; SUBSCRIPTIONINFO m_si; };
#endif // _CHANMENU_H_
|