From ab09e0421ea8a6ac4b0c706915e6621510702404 Mon Sep 17 00:00:00 2001 From: Dan Werthimer Date: Tue, 29 Jul 2003 23:26:30 +0000 Subject: [PATCH] show "retry now" instead of "get preferences" when backing off svn path=/trunk/boinc/; revision=1863 --- client/win/wingui_mainwindow.cpp | 45 ++++++++++++++++++++++---------- 1 file changed, 31 insertions(+), 14 deletions(-) diff --git a/client/win/wingui_mainwindow.cpp b/client/win/wingui_mainwindow.cpp index 57069ee7e4..6decb748c1 100755 --- a/client/win/wingui_mainwindow.cpp +++ b/client/win/wingui_mainwindow.cpp @@ -1210,7 +1210,7 @@ void CMainWindow::OnCommandProjectWebSite() // CMainWindow::OnCommandProjectGetPrefs // arguments: void // returns: void -// function: lets the user quit a project +// function: reset rpc time to get prefences now void CMainWindow::OnCommandProjectGetPrefs() { PROJECT *proj; @@ -1806,21 +1806,38 @@ void CMainWindow::OnRButtonDown(UINT nFlags, CPoint point) pContextMenu = m_ContextMenu.GetSubMenu(nMenuId); if(pContextMenu) { - if (nMenuId == RESULT_MENU) { - pContextMenu->EnableMenuItem(ID_WORK_SHOWGRAPHICS,MF_GRAYED); //disable - RESULT *rp = (RESULT *)pMenuCtrl->GetItemData(indexSelected); - if (rp) { - ACTIVE_TASK *atp = gstate.lookup_active_task_by_result(rp); - if (atp && atp->supports_graphics()) - pContextMenu->EnableMenuItem(ID_WORK_SHOWGRAPHICS,MF_ENABLED); // enable + switch(nMenuId) { + case PROJECT_MENU: + { + // if we are backing off, show "retry now", else "get preferences" + PROJECT *proj = (PROJECT *)pMenuCtrl->GetItemData(indexSelected); + pContextMenu->ModifyMenu(ID_PROJECT_GET_PREFS, 0, ID_PROJECT_GET_PREFS, + ((proj && proj->min_rpc_time > time(0)) ? + "&Retry now" : "Get p&references")); + break; + } + case RESULT_MENU: + { + pContextMenu->EnableMenuItem(ID_WORK_SHOWGRAPHICS,MF_GRAYED); //disable + RESULT *rp = (RESULT *)pMenuCtrl->GetItemData(indexSelected); + if (rp) { + ACTIVE_TASK *atp = gstate.lookup_active_task_by_result(rp); + if (atp && atp->supports_graphics()) + pContextMenu->EnableMenuItem(ID_WORK_SHOWGRAPHICS,MF_ENABLED); // enable + } + break; + } + case XFER_MENU: + { + // enable "retry now" only if currently waiting to retry + PERS_FILE_XFER* pfx = (PERS_FILE_XFER*)m_XferListCtrl.GetItemData(indexSelected); + pContextMenu->EnableMenuItem(ID_TRANSFERS_RETRYNOW, + pfx && (pfx->next_request_time > time(0) ? + MF_ENABLED : MF_GRAYED)); + break; } - } else if (nMenuId == XFER_MENU) { - // enable "retry now" only if currently waiting to retry - PERS_FILE_XFER* pfx = (PERS_FILE_XFER*)m_XferListCtrl.GetItemData(indexSelected); - pContextMenu->EnableMenuItem(ID_TRANSFERS_RETRYNOW, - pfx && (pfx->next_request_time > time(0) ? - MF_ENABLED : MF_GRAYED)); } + pContextMenu->TrackPopupMenu(TPM_LEFTALIGN|TPM_RIGHTBUTTON, point.x, point.y, this); m_nContextItem = indexSelected; }