Index: src/ch/ClipboardMonitor.cpp =================================================================== diff -u -N -r87efd9079c796add662b1189e84ca62472d2b757 -r25129f39720523eca2cb702242890a7862f70ec6 --- src/ch/ClipboardMonitor.cpp (.../ClipboardMonitor.cpp) (revision 87efd9079c796add662b1189e84ca62472d2b757) +++ src/ch/ClipboardMonitor.cpp (.../ClipboardMonitor.cpp) (revision 25129f39720523eca2cb702242890a7862f70ec6) @@ -29,6 +29,7 @@ #include "FolderDialog.h" #include "ShutdownDlg.h" #include "DirectoryChooser.h" +#include "TTaskManagerWrapper.h" using namespace chcore; @@ -43,19 +44,19 @@ Stop(); } -void CClipboardMonitor::StartMonitor(chcore::TTaskManager* pTasks) +void CClipboardMonitor::StartMonitor(chcore::TTaskManagerPtr spTasks) { - CClipboardMonitor::S_ClipboardMonitor.Start(pTasks); + CClipboardMonitor::S_ClipboardMonitor.Start(spTasks); } void CClipboardMonitor::StopMonitor() { return CClipboardMonitor::S_ClipboardMonitor.Stop(); } -void CClipboardMonitor::Start(chcore::TTaskManager* pTasks) +void CClipboardMonitor::Start(chcore::TTaskManagerPtr spTasks) { - m_pTasks = pTasks; + m_spTasks = spTasks; m_threadWorker.StartThread(&CClipboardMonitor::ClipboardMonitorProc, this); } @@ -131,41 +132,16 @@ // get dest path tTaskDefinition.SetDestinationPath(pathSelected); - // load resource strings - chcore::SetTaskPropValue(tTaskDefinition.GetConfiguration(), GetResManager().LoadString(IDS_FIRSTCOPY_STRING)); - chcore::SetTaskPropValue(tTaskDefinition.GetConfiguration(), GetResManager().LoadString(IDS_NEXTCOPY_STRING)); + TTaskManagerWrapper tTaskManager(pData->m_spTasks); - CString strMessage; - try - { - chcore::TTaskPtr spTask = pData->m_pTasks->CreateTask(tTaskDefinition); - - // write spTask to a file - spTask->Store(true); - - // start processing - spTask->BeginProcessing(); - } - catch(const std::exception& e) - { - strMessage = e.what(); - } - - if(!strMessage.IsEmpty()) - { - ictranslate::CFormat fmt; - - fmt.SetFormat(GetResManager().LoadString(IDS_TASK_CREATE_FAILED)); - fmt.SetParam(_T("%reason"), strMessage); - AfxMessageBox(fmt, MB_OK | MB_ICONERROR); - } + tTaskManager.CreateTask(tTaskDefinition); } } // do we need to check for turning computer off if(uiShutCounter == 0 && GetPropValue(GetConfig())) { - if(pData->m_pTasks->AreAllFinished()) + if(pData->m_spTasks->AreAllFinished()) { TRACE("Shut down windows\n"); bool bShutdown=true;