void CPluginsDlg::OnRClickPluginsList(NMHDR* pNMHDR, LRESULT* pResult) { DWORD dwID = GetSelectedPluginID(); KP_PLUGIN_INSTANCE *p = m_pPiMgr->GetPluginByID(dwID); UNREFERENCED_PARAMETER(pNMHDR); *pResult = 0; POINT pt; GetCursorPos(&pt); m_popmenu.LoadMenu(IDR_PLUGINS_MENU); m_popmenu.SetMenuDrawMode(BCMENU_DRAWMODE_XP); // <<<!=>>> BCMENU_DRAWMODE_ORIGINAL m_popmenu.SetSelectDisableMode(FALSE); m_popmenu.SetXPBitmap3D(TRUE); m_popmenu.SetBitmapBackground(RGB(255, 0, 255)); m_popmenu.SetIconSize(16, 16); m_popmenu.LoadToolbar(IDR_INFOICONS, IDB_INFOICONS_EX); BCMenu* psub = NewGUI_GetBCMenu(m_popmenu.GetSubMenu(0)); if(psub == NULL) { ASSERT(FALSE); psub = &m_popmenu; } // psub->ModifyODMenu(NULL, (UINT)ID_PLUGIN_ENABLE, m_pImgList, 2); // psub->ModifyODMenu(NULL, (UINT)ID_PLUGIN_DISABLE, m_pImgList, 45); psub->ModifyODMenu(NULL, (UINT)ID_PLUGIN_CONFIG, m_pImgList, 21); psub->ModifyODMenu(NULL, (UINT)ID_PLUGIN_ABOUT, m_pImgList, 22); CPwSafeDlg::_TranslateMenu(psub, FALSE, NULL); if(p != NULL) { // if(p->bEnabled == FALSE) // { // psub->EnableMenuItem(ID_PLUGIN_DISABLE, MF_BYCOMMAND | MF_GRAYED); // psub->EnableMenuItem(ID_PLUGIN_CONFIG, MF_BYCOMMAND | MF_GRAYED); // psub->EnableMenuItem(ID_PLUGIN_ABOUT, MF_BYCOMMAND | MF_GRAYED); // } // else psub->EnableMenuItem(ID_PLUGIN_ENABLE, MF_BYCOMMAND | MF_GRAYED); if(p->hinstDLL == NULL) { psub->EnableMenuItem(ID_PLUGIN_CONFIG, MF_BYCOMMAND | MF_GRAYED); psub->EnableMenuItem(ID_PLUGIN_ABOUT, MF_BYCOMMAND | MF_GRAYED); } } else { // psub->EnableMenuItem(ID_PLUGIN_ENABLE, MF_BYCOMMAND | MF_GRAYED); // psub->EnableMenuItem(ID_PLUGIN_DISABLE, MF_BYCOMMAND | MF_GRAYED); psub->EnableMenuItem(ID_PLUGIN_CONFIG, MF_BYCOMMAND | MF_GRAYED); psub->EnableMenuItem(ID_PLUGIN_ABOUT, MF_BYCOMMAND | MF_GRAYED); } psub->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, pt.x, pt.y, this); m_popmenu.DestroyMenu(); }
BOOL NewGUI_SetIcon(BCMenu& rMenu, UINT uCommand, int nResourceID) { CString strMenuItemText; if(rMenu.GetMenuText(uCommand, strMenuItemText, MF_BYCOMMAND) == FALSE) return FALSE; if(strMenuItemText.GetLength() == 0) return FALSE; if(rMenu.ModifyODMenu(NULL, uCommand, nResourceID) == FALSE) return FALSE; return TRUE; }
void CMymenuView::OnRButtonDown(UINT /*nFlags*/, CPoint point) //SK: removed warning C4100: 'nFlags' : unreferenced formal parameter { popmenu.LoadMenu(IDR_RIGHT_CLICK); popmenu.LoadToolbar(IDR_TOOLBAR); popmenu.LoadToolbar(IDR_MAINFRAME); ClientToScreen(&point); BCMenu *psub = (BCMenu *)popmenu.GetSubMenu(0); BCMenu *pSelect = (BCMenu *)psub->GetSubMenu(1); if(pSelect){ pSelect->AppendMenu(MF_STRING,ID_WINDOW_TILE_HORZ,_T("&Tile")); pSelect->ModifyODMenu(NULL,ID_WINDOW_TILE_HORZ,IDB_WINDOW_TILE); } psub->TrackPopupMenu(TPM_LEFTALIGN|TPM_RIGHTBUTTON,point.x,point.y,AfxGetMainWnd()); popmenu.DestroyMenu(); }