www.pudn.com > ÍøÂç¶Ë¿Ú¼àÊÓ.rar > BCGPContextMenuManager.h
//*******************************************************************************
// COPYRIGHT NOTES
// ---------------
// This is a part of the BCGControlBar Library
// Copyright (C) 1998-2000 BCGSoft Ltd.
// All rights reserved.
//
// This source code can be used, distributed or modified
// only under terms and conditions
// of the accompanying license agreement.
//*******************************************************************************
// BCGContextMenuManager.h: interface for the CBCGPContextMenuManager class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_BCGPCONTEXTMENUMANAGER_H__64F13A54_E5A9_11D1_A08F_00A0C9B05590__INCLUDED_)
#define AFX_BCGPCONTEXTMENUMANAGER_H__64F13A54_E5A9_11D1_A08F_00A0C9B05590__INCLUDED_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
#ifndef __AFXTEMPL_H__
#include "afxtempl.h"
#endif
#include "BCGCBPro.h"
class CBCGPPopupMenu;
class BCGCBPRODLLEXPORT CBCGPContextMenuManager : public CObject
{
friend class CBCGPPopupMenuBar;
public:
CBCGPContextMenuManager();
virtual ~CBCGPContextMenuManager();
// Opreations:
public:
BOOL AddMenu (UINT uiMenuNameResId, UINT uiMenuResId);
BOOL AddMenu (LPCTSTR lpszName, UINT uiMenuResId);
BOOL ShowPopupMenu (UINT uiMenuResId, int x, int y, CWnd* pWndOwner,
BOOL bOwnMessage = FALSE, BOOL bRightAlign = FALSE);
CBCGPPopupMenu* ShowPopupMenu (HMENU hmenuPopup,
int x, int y,
CWnd* pWndOwner, BOOL bOwnMessage = FALSE,
BOOL bAutoDestroy = TRUE, BOOL bRightAlign = FALSE);
UINT TrackPopupMenu (HMENU hmenuPopup, int x, int y, CWnd* pWndOwner, BOOL bRightAlign = FALSE);
BOOL LoadState (LPCTSTR lpszProfileName = NULL);
BOOL SaveState (LPCTSTR lpszProfileName = NULL);
// Customization operations:
void GetMenuNames (CStringList& listOfNames) const;
HMENU GetMenuByName (LPCTSTR lpszName, UINT* puiOrigResID = NULL) const;
HMENU GetMenuById (UINT nMenuResId) const;
BOOL ResetState ();
// Attributes:
protected:
CMap m_Menus;
CMap m_MenuNames;
UINT m_nLastCommandID;
BOOL m_bTrackMode;
};
extern CBCGPContextMenuManager* g_pContextMenuManager;
#endif // !defined(AFX_BCGPCONTEXTMENUMANAGER_H__64F13A54_E5A9_11D1_A08F_00A0C9B05590__INCLUDED_)