bool CEvaluation::runEvaluation() { CWizard97Sheet dlgSheet(_T("WebMind-1"), NULL, 0, NULL, NULL, NULL); dlgSheet.bCompare = bCompare; dlgSheet.m_pageRecomm.bCompare = bCompare; dlgSheet.m_pageRecomm.pRepository = pRepository; dlgSheet.m_pageRecomm.bCompare = bCompare; dlgSheet.m_pageRecomm.genURLs.Append(genURLs); dlgSheet.m_pageRecomm.genTitles.Append(genTitles); dlgSheet.m_pageEval.pRepository = pRepository; dlgSheet.m_pageEval.bCompare = bCompare; dlgSheet.m_pageEval.genQuery.Append(genQuery); dlgSheet.m_pageEval.genURLs.Append(genURLs); dlgSheet.m_pageEval.genTitles.Append(genTitles); int nResponse = dlgSheet.DoModal(); if (nResponse == IDCANCEL) { return false; } // then we retrieve all the values that set by the user CPageCache *pCache; CString strBuffer; int nGenPages; nGenPages = genURLs.GetSize() - (bCompare?1:0); // we then add all the pages (ID/URL) into an array for(int i = 0; i < nGenPages; i++) { // go through each browser, check whether its CPageCache has been // initialized pCache = dlgSheet.m_pageRecomm.m_pageBrowsers[i].pCache; if(pCache == NULL) genPages.Add(genURLs[i]); else { strBuffer.Format("%ld", pCache->getPageno()); genPages.Add(strBuffer); } } m_chosenPage = 0; // m_chosenPage = dlgSheet.m_pageEval.m_recomm; m_chosenQueryWords.RemoveAll(); m_chosenQueryWords.Append(dlgSheet.m_pageEval.chosenQueryWords); m_preference = dlgSheet.m_pageEval.m_preference; m_evaluation = dlgSheet.m_pageEval.m_eval; m_action = dlgSheet.m_pageEval.m_action; return true; }
void CPageController::OnDblclkListController(NMHDR* pNMHDR, LRESULT* pResult) { // TODO: Add your control notification handler code here LONG nIndex = this->m_listController.GetNextItem(-1, LVNI_SELECTED); if (nIndex == -1) return; CRunTime::CITEMController* pController = (CRunTime::CITEMController*) this->m_listController.GetItemData(nIndex); CSetSheet dlgSheet(_T("")); dlgSheet.m_psh.dwFlags &= ~PSH_HASHELP; dlgSheet.m_psh.dwFlags |= PSH_NOAPPLYNOW; dlgSheet.m_psh.dwFlags |= PSH_PROPTITLE; CPageMode0General dlgMode0General; CPageMode1Report dlgMode1Report; CPageMode2SingleQueue dlgMode2SingleQueue; CPageVideo dlgVideo; CPageVoice dlgVoice; CPageSingleQueueShowAll dlgMode3SingleQueueShowALL; dlgMode0General .m_psp.dwFlags &= ~PSP_HASHELP; dlgMode1Report .m_psp.dwFlags &= ~PSP_HASHELP; dlgMode2SingleQueue .m_psp.dwFlags &= ~PSP_HASHELP; dlgVideo .m_psp.dwFlags &= ~PSP_HASHELP; dlgVoice .m_psp.dwFlags &= ~PSP_HASHELP; dlgMode3SingleQueueShowALL .m_psp.dwFlags &= ~PSP_HASHELP; dlgMode1Report .m_pController = pController; dlgMode2SingleQueue .m_pController = pController; dlgVideo .m_pController = pController; dlgVoice .m_pController = pController; dlgMode3SingleQueueShowALL .m_pController = pController; switch (pController->m_nControllerMode) { case EC_MODE0_GENERAL: dlgSheet.AddPage(&dlgMode0General); break; case EC_MODE1_REPORT: dlgSheet.AddPage(&dlgMode1Report); break; case EC_MODE2_SINGLE_QUEUE: dlgSheet.AddPage(&dlgMode2SingleQueue); break; case EC_MODE3_SINGLE_QUEUE_SHOWALL: dlgSheet.AddPage(&dlgMode3SingleQueueShowALL); break; } dlgSheet.AddPage(&dlgVideo); dlgSheet.AddPage(&dlgVoice); SET_LEFT_FROM_RIGHT(dlgVoice.m_bVoiceEnable, pController->m_bVoiceEnable); SET_LEFT_FROM_RIGHT(dlgVoice.m_nVoiceRepeat, pController->m_nVoiceRepeat); SET_LEFT_FROM_RIGHT(dlgVoice.m_nVoiceInterval, pController->m_nVoiceInterval); SET_LEFT_FROM_RIGHT(dlgVoice.m_strVoiceFormat, pController->m_strVoiceFormat); SET_LEFT_FROM_RIGHT(dlgVoice.m_bpromptVoiceEnable, pController->m_bpromptVoiceEnable); SET_LEFT_FROM_RIGHT(dlgVoice.m_bUseKdfx, pController->m_bUseKdfx); SET_LEFT_FROM_RIGHT(dlgVoice.m_strSeriesId, pController->m_strSeriesId); switch (pController->m_nControllerMode) { case EC_MODE0_GENERAL: break; case EC_MODE1_REPORT: SET_LEFT_FROM_RIGHT(dlgMode1Report.m_nMode1TimeRange, pController->m_nMode1TimeRange); SET_LEFT_FROM_RIGHT(dlgMode1Report.m_nMode1TimeDelay, pController->m_nMode1TimeDelay); SET_LEFT_FROM_RIGHT(dlgMode1Report.m_nMode1RefreshIdle, pController->m_nMode1RefreshIdle); SET_LEFT_FROM_RIGHT(dlgMode1Report.m_nMode1RefreshScreen, pController->m_nMode1RefreshScreen); SET_LEFT_FROM_RIGHT(dlgMode1Report.m_nMode1OrderMode, pController->m_nMode1OrderMode); break; case EC_MODE2_SINGLE_QUEUE: SET_LEFT_FROM_RIGHT(dlgMode2SingleQueue.m_nMode2DeviceIndex, pController->m_nMode2DeviceIndex); SET_LEFT_FROM_RIGHT(dlgMode2SingleQueue.m_nMode2RefreshIdle, pController->m_nMode2RefreshIdle); break; case EC_MODE3_SINGLE_QUEUE_SHOWALL: SET_LEFT_FROM_RIGHT(dlgMode3SingleQueueShowALL.m_MODE3QueueIndex, pController->m_MODE3QueueIndex); SET_LEFT_FROM_RIGHT(dlgMode3SingleQueueShowALL.m_MODE3RenovateTime, pController->m_MODE3RenovateTime); SET_LEFT_FROM_RIGHT(dlgMode3SingleQueueShowALL.m_bShowHorizontal, pController->m_bShowHorizontal); break; } if (dlgSheet.DoModal() == IDOK) { SET_RIGHT_FROM_LEFT(dlgVoice.m_bVoiceEnable, pController->m_bVoiceEnable); SET_RIGHT_FROM_LEFT(dlgVoice.m_nVoiceRepeat, pController->m_nVoiceRepeat); SET_RIGHT_FROM_LEFT(dlgVoice.m_nVoiceInterval, pController->m_nVoiceInterval); SET_RIGHT_FROM_LEFT(dlgVoice.m_strVoiceFormat, pController->m_strVoiceFormat); SET_RIGHT_FROM_LEFT(dlgVoice.m_bpromptVoiceEnable, pController->m_bpromptVoiceEnable); SET_RIGHT_FROM_LEFT(dlgVoice.m_bUseKdfx, pController->m_bUseKdfx); SET_RIGHT_FROM_LEFT(dlgVoice.m_strSeriesId, pController->m_strSeriesId); switch (pController->m_nControllerMode) { case EC_MODE0_GENERAL: break; case EC_MODE1_REPORT: SET_RIGHT_FROM_LEFT(dlgMode1Report.m_nMode1TimeRange, pController->m_nMode1TimeRange); SET_RIGHT_FROM_LEFT(dlgMode1Report.m_nMode1TimeDelay, pController->m_nMode1TimeDelay); SET_RIGHT_FROM_LEFT(dlgMode1Report.m_nMode1RefreshIdle, pController->m_nMode1RefreshIdle); SET_RIGHT_FROM_LEFT(dlgMode1Report.m_nMode1RefreshScreen, pController->m_nMode1RefreshScreen); SET_RIGHT_FROM_LEFT(dlgMode1Report.m_nMode1OrderMode, pController->m_nMode1OrderMode); break; case EC_MODE2_SINGLE_QUEUE: SET_RIGHT_FROM_LEFT(dlgMode2SingleQueue.m_nMode2DeviceIndex, pController->m_nMode2DeviceIndex); SET_RIGHT_FROM_LEFT(dlgMode2SingleQueue.m_nMode2RefreshIdle, pController->m_nMode2RefreshIdle); break; case EC_MODE3_SINGLE_QUEUE_SHOWALL: SET_RIGHT_FROM_LEFT(dlgMode3SingleQueueShowALL.m_MODE3QueueIndex, pController->m_MODE3QueueIndex); SET_RIGHT_FROM_LEFT(dlgMode3SingleQueueShowALL.m_MODE3RenovateTime, pController->m_MODE3RenovateTime); SET_RIGHT_FROM_LEFT(dlgMode3SingleQueueShowALL.m_bShowHorizontal, pController->m_bShowHorizontal); break; } } *pResult = 0; }