| |
55 |
55 |
} |
| |
56 |
56 |
|
| |
57 |
57 |
void CStatusDlg::DoDataExchange(CDataExchange* pDX) |
| |
58 |
58 |
{ |
| |
59 |
59 |
CLanguageDialog::DoDataExchange(pDX); |
| |
60 |
60 |
DDX_Control(pDX, IDC_TASKCOUNT_PROGRESS, m_ctlTaskCountProgress); |
| |
61 |
61 |
DDX_Control(pDX, IDC_TASKSIZE_PROGRESS, m_ctlTaskSizeProgress); |
| |
62 |
62 |
DDX_Control(pDX, IDC_CURRENTOBJECT_PROGRESS, m_ctlCurrentObjectProgress); |
| |
63 |
63 |
DDX_Control(pDX, IDC_SUBTASKCOUNT_PROGRESS, m_ctlSubTaskCountProgress); |
| |
64 |
64 |
DDX_Control(pDX, IDC_SUBTASKSIZE_PROGRESS, m_ctlSubTaskSizeProgress); |
| |
65 |
65 |
DDX_Control(pDX, IDC_GLOBAL_PROGRESS, m_ctlProgressAll); |
| |
66 |
66 |
DDX_Control(pDX, IDC_STATUS_LIST, m_ctlStatusList); |
| |
67 |
67 |
} |
| |
68 |
68 |
|
| |
69 |
69 |
BEGIN_MESSAGE_MAP(CStatusDlg,ictranslate::CLanguageDialog) |
| |
70 |
70 |
|
| |
71 |
71 |
ON_WM_TIMER() |
| |
72 |
72 |
ON_BN_CLICKED(IDC_PAUSE_BUTTON, OnPauseButton) |
| |
73 |
73 |
ON_BN_CLICKED(IDC_CANCEL_BUTTON, OnCancelButton) |
| |
74 |
74 |
ON_BN_CLICKED(IDC_SET_PRIORITY_BUTTON, OnSetPriorityButton) |
| |
75 |
|
ON_BN_CLICKED(IDC_TASK_ADVANCED_BUTTON, OnTaskAdvancedOptions) |
| |
76 |
75 |
ON_BN_CLICKED(IDC_SET_BUFFERSIZE_BUTTON, OnSetBuffersizeButton) |
| |
77 |
|
ON_BN_CLICKED(IDC_START_ALL_BUTTON, OnStartAllButton) |
| |
78 |
76 |
ON_BN_CLICKED(IDC_RESTART_BUTTON, OnRestartButton) |
| |
79 |
77 |
ON_BN_CLICKED(IDC_DELETE_BUTTON, OnDeleteButton) |
| |
80 |
|
ON_BN_CLICKED(IDC_PAUSE_ALL_BUTTON, OnPauseAllButton) |
| |
81 |
|
ON_BN_CLICKED(IDC_RESTART_ALL_BUTTON, OnRestartAllButton) |
| |
82 |
|
ON_BN_CLICKED(IDC_CANCEL_ALL_BUTTON, OnCancelAllButton) |
| |
83 |
78 |
ON_BN_CLICKED(IDC_REMOVE_FINISHED_BUTTON, OnRemoveFinishedButton) |
| |
84 |
79 |
ON_NOTIFY(LVN_KEYDOWN, IDC_STATUS_LIST, OnKeydownStatusList) |
| |
85 |
80 |
ON_NOTIFY(LVN_CHANGEDSELECTION, IDC_STATUS_LIST, OnSelectionChanged) |
| |
86 |
81 |
ON_NOTIFY(NM_RCLICK, IDC_STATUS_LIST, OnStatusListRClick) |
| |
87 |
82 |
ON_BN_CLICKED(IDC_SHOW_LOG_BUTTON, OnShowLogButton) |
| |
88 |
83 |
ON_BN_CLICKED(IDC_STICK_BUTTON, OnStickButton) |
| |
89 |
84 |
ON_BN_CLICKED(IDC_RESUME_BUTTON, OnResumeButton) |
| |
90 |
85 |
|
| |
91 |
86 |
END_MESSAGE_MAP() |
| |
92 |
87 |
|
| |
93 |
88 |
|
| |
94 |
89 |
|
| |
95 |
90 |
|
| |
96 |
91 |
BOOL CStatusDlg::OnInitDialog() |
| |
97 |
92 |
{ |
| |
98 |
93 |
CLanguageDialog::OnInitDialog(); |
| |
99 |
94 |
|
| |
100 |
95 |
PrepareResizableControls(); |
| |
101 |
96 |
|
| |
102 |
97 |
|
|
| |
197 |
192 |
bSelected = true; |
| |
198 |
193 |
break; |
| |
199 |
194 |
} |
| |
200 |
195 |
} |
| |
201 |
196 |
|
| |
202 |
197 |
stIndex++; |
| |
203 |
198 |
} |
| |
204 |
199 |
|
| |
205 |
200 |
if(!bSelected && m_pTasks->GetSize() > 0) |
| |
206 |
201 |
{ |
| |
207 |
202 |
stIndex = m_pTasks->GetSize() - 1; |
| |
208 |
203 |
m_ctlStatusList.SetItemState(boost::numeric_cast<int>(stIndex), LVIS_SELECTED, LVIS_SELECTED); |
| |
209 |
204 |
} |
| |
210 |
205 |
} |
| |
211 |
206 |
|
| |
212 |
207 |
void CStatusDlg::EnableControls(bool bEnable) |
| |
213 |
208 |
{ |
| |
214 |
209 |
|
| |
215 |
210 |
GetDlgItem(IDC_SET_BUFFERSIZE_BUTTON)->EnableWindow(bEnable); |
| |
216 |
211 |
GetDlgItem(IDC_SET_PRIORITY_BUTTON)->EnableWindow(bEnable); |
| |
217 |
|
GetDlgItem(IDC_TASK_ADVANCED_BUTTON)->EnableWindow(bEnable); |
| |
218 |
212 |
|
| |
219 |
213 |
if (!bEnable) |
| |
220 |
214 |
{ |
| |
221 |
215 |
GetDlgItem(IDC_TASKID_STATIC)->SetWindowText(GetResManager().LoadString(IDS_EMPTYTASKID_STRING)); |
| |
222 |
216 |
|
| |
223 |
217 |
GetDlgItem(IDC_OPERATION_STATIC)->SetWindowText(GetResManager().LoadString(IDS_EMPTYOPERATIONTEXT_STRING)); |
| |
224 |
218 |
GetDlgItem(IDC_SOURCEOBJECT_STATIC)->SetWindowText(GetResManager().LoadString(IDS_EMPTYSOURCETEXT_STRING)); |
| |
225 |
219 |
GetDlgItem(IDC_DESTINATIONOBJECT_STATIC)->SetWindowText(GetResManager().LoadString(IDS_EMPTYDESTINATIONTEXT_STRING)); |
| |
226 |
220 |
GetDlgItem(IDC_BUFFERSIZE_STATIC)->SetWindowText(GetResManager().LoadString(IDS_EMPTYBUFFERSIZETEXT_STRING)); |
| |
227 |
221 |
GetDlgItem(IDC_THREADPRIORITY_STATIC)->SetWindowText(GetResManager().LoadString(IDS_EMPTYPRIORITYTEXT_STRING)); |
| |
228 |
222 |
|
| |
229 |
223 |
|
| |
230 |
224 |
GetDlgItem(IDC_SUBTASKNAME_STATIC)->SetWindowText(GetResManager().LoadString(IDS_EMPTYSUBTASKNAME_STRING)); |
| |
231 |
225 |
GetDlgItem(IDC_SUBTASKPROCESSED_STATIC)->SetWindowText(GetResManager().LoadString(IDS_EMPTYPROCESSEDTEXT_STRING)); |
| |
232 |
226 |
GetDlgItem(IDC_SUBTASKTIME_STATIC)->SetWindowText(GetResManager().LoadString(IDS_EMPTYTIMETEXT_STRING)); |
| |
233 |
227 |
GetDlgItem(IDC_SUBTASKTRANSFER_STATIC)->SetWindowText(GetResManager().LoadString(IDS_EMPTYTRANSFERTEXT_STRING)); |
| |
234 |
228 |
|
| |
235 |
229 |
GetDlgItem(IDC_TASKPROCESSED_STATIC)->SetWindowText(GetResManager().LoadString(IDS_EMPTYPROCESSEDTEXT_STRING)); |
| |
236 |
230 |
GetDlgItem(IDC_TASKTRANSFER_STATIC)->SetWindowText(GetResManager().LoadString(IDS_EMPTYTRANSFERTEXT_STRING)); |
| |
237 |
231 |
GetDlgItem(IDC_TASKTIME_STATIC)->SetWindowText(GetResManager().LoadString(IDS_EMPTYTIMETEXT_STRING)); |
|
| |
342 |
336 |
CMenu menu; |
| |
343 |
337 |
HMENU hMenu=GetResManager().LoadMenu(MAKEINTRESOURCE(IDR_PRIORITY_MENU)); |
| |
344 |
338 |
if (!menu.Attach(hMenu)) |
| |
345 |
339 |
{ |
| |
346 |
340 |
DestroyMenu(hMenu); |
| |
347 |
341 |
return; |
| |
348 |
342 |
} |
| |
349 |
343 |
|
| |
350 |
344 |
CMenu* pPopup = menu.GetSubMenu(0); |
| |
351 |
345 |
ASSERT(pPopup != nullptr); |
| |
352 |
346 |
if(pPopup) |
| |
353 |
347 |
{ |
| |
354 |
348 |
|
| |
355 |
349 |
CRect rect; |
| |
356 |
350 |
GetDlgItem(IDC_SET_PRIORITY_BUTTON)->GetWindowRect(&rect); |
| |
357 |
351 |
|
| |
358 |
352 |
pPopup->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, rect.right+1, rect.top, this); |
| |
359 |
353 |
} |
| |
360 |
354 |
} |
| |
361 |
355 |
|
| |
362 |
|
void CStatusDlg::OnTaskAdvancedOptions() |
| |
363 |
|
{ |
| |
364 |
|
CMenu menu; |
| |
365 |
|
HMENU hMenu = GetResManager().LoadMenu(MAKEINTRESOURCE(IDR_TASK_ADVANCED_MENU)); |
| |
366 |
|
if(!menu.Attach(hMenu)) |
| |
367 |
|
{ |
| |
368 |
|
DestroyMenu(hMenu); |
| |
369 |
|
return; |
| |
370 |
|
} |
| |
371 |
|
|
| |
372 |
|
CMenu* pPopup = menu.GetSubMenu(0); |
| |
373 |
|
ASSERT(pPopup != nullptr); |
| |
374 |
|
if(pPopup) |
| |
375 |
|
{ |
| |
376 |
|
|
| |
377 |
|
CRect rect; |
| |
378 |
|
GetDlgItem(IDC_TASK_ADVANCED_BUTTON)->GetWindowRect(&rect); |
| |
379 |
|
|
| |
380 |
|
pPopup->TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, rect.right + 1, rect.top, this); |
| |
381 |
|
} |
| |
382 |
|
} |
| |
383 |
|
|
| |
384 |
356 |
BOOL CStatusDlg::OnCommand(WPARAM wParam, LPARAM lParam) |
| |
385 |
357 |
{ |
| |
386 |
358 |
if (HIWORD(wParam) == 0) |
| |
387 |
359 |
{ |
| |
388 |
360 |
if (LOWORD(wParam) >= ID_POPUP_TIME_CRITICAL && LOWORD(wParam) <= ID_POPUP_IDLE) |
| |
389 |
361 |
{ |
| |
390 |
362 |
|
| |
391 |
363 |
chengine::TTaskPtr spSelectedTask = GetSelectedItemPointer(); |
| |
392 |
364 |
|
| |
393 |
365 |
if(spSelectedTask == nullptr) |
| |
394 |
366 |
return ictranslate::CLanguageDialog::OnCommand(wParam, lParam); |
| |
395 |
367 |
|
| |
396 |
368 |
switch (LOWORD(wParam)) |
| |
397 |
369 |
{ |
| |
398 |
370 |
case ID_POPUP_TIME_CRITICAL: |
| |
399 |
371 |
spSelectedTask->SetPriority(THREAD_PRIORITY_TIME_CRITICAL); |
| |
400 |
372 |
GetDlgItem(IDC_THREADPRIORITY_STATIC)->SetWindowText(GetResManager().LoadString(IDS_PRIORITY0_STRING+PriorityToIndex(THREAD_PRIORITY_TIME_CRITICAL))); |
| |
401 |
373 |
break; |
| |
402 |
374 |
case ID_POPUP_HIGHEST: |
| |
403 |
375 |
spSelectedTask->SetPriority(THREAD_PRIORITY_HIGHEST); |
|
| |
408 |
380 |
GetDlgItem(IDC_THREADPRIORITY_STATIC)->SetWindowText(GetResManager().LoadString(IDS_PRIORITY0_STRING+PriorityToIndex(THREAD_PRIORITY_ABOVE_NORMAL))); |
| |
409 |
381 |
break; |
| |
410 |
382 |
case ID_POPUP_NORMAL: |
| |
411 |
383 |
spSelectedTask->SetPriority(THREAD_PRIORITY_NORMAL); |
| |
412 |
384 |
GetDlgItem(IDC_THREADPRIORITY_STATIC)->SetWindowText(GetResManager().LoadString(IDS_PRIORITY0_STRING+PriorityToIndex(THREAD_PRIORITY_NORMAL))); |
| |
413 |
385 |
break; |
| |
414 |
386 |
case ID_POPUP_BELOW_NORMAL: |
| |
415 |
387 |
spSelectedTask->SetPriority(THREAD_PRIORITY_BELOW_NORMAL); |
| |
416 |
388 |
GetDlgItem(IDC_THREADPRIORITY_STATIC)->SetWindowText(GetResManager().LoadString(IDS_PRIORITY0_STRING+PriorityToIndex(THREAD_PRIORITY_BELOW_NORMAL))); |
| |
417 |
389 |
break; |
| |
418 |
390 |
case ID_POPUP_LOWEST: |
| |
419 |
391 |
spSelectedTask->SetPriority(THREAD_PRIORITY_LOWEST); |
| |
420 |
392 |
GetDlgItem(IDC_THREADPRIORITY_STATIC)->SetWindowText(GetResManager().LoadString(IDS_PRIORITY0_STRING+PriorityToIndex(THREAD_PRIORITY_LOWEST))); |
| |
421 |
393 |
break; |
| |
422 |
394 |
case ID_POPUP_IDLE: |
| |
423 |
395 |
spSelectedTask->SetPriority(THREAD_PRIORITY_IDLE); |
| |
424 |
396 |
GetDlgItem(IDC_THREADPRIORITY_STATIC)->SetWindowText(GetResManager().LoadString(IDS_PRIORITY0_STRING+PriorityToIndex(THREAD_PRIORITY_IDLE))); |
| |
425 |
397 |
break; |
| |
426 |
398 |
} |
| |
427 |
399 |
} |
| |
428 |
|
else if(LOWORD(wParam) == ID_POPUP_RESET_APPLY_TO_ALL) |
| |
429 |
|
{ |
| |
430 |
|
OnResetUserFeedback(); |
| |
431 |
400 |
} |
| |
432 |
|
} |
| |
433 |
401 |
return ictranslate::CLanguageDialog::OnCommand(wParam, lParam); |
| |
434 |
402 |
} |
| |
435 |
403 |
|
| |
436 |
404 |
void CStatusDlg::OnResetUserFeedback() |
| |
437 |
405 |
{ |
| |
438 |
406 |
chengine::TTaskPtr spSelectedTask = GetSelectedItemPointer(); |
| |
439 |
407 |
|
| |
440 |
408 |
if(spSelectedTask) |
| |
441 |
409 |
spSelectedTask->RestoreFeedbackDefaults(); |
| |
442 |
410 |
} |
| |
443 |
411 |
|
| |
444 |
412 |
void CStatusDlg::OnPauseButton() |
| |
445 |
413 |
{ |
| |
446 |
414 |
chengine::TTaskPtr spTask = GetSelectedItemPointer(); |
| |
447 |
415 |
if(spTask) |
| |
448 |
416 |
{ |
| |
449 |
417 |
TRACE("PauseProcessing call...\n"); |
| |
450 |
418 |
spTask->PauseProcessing(); |
| |
451 |
419 |
|
| |
452 |
420 |
RefreshStatus(); |
|
| |
705 |
673 |
case ID_TASK_MENU_PAUSE: |
| |
706 |
674 |
OnPauseButton(); |
| |
707 |
675 |
break; |
| |
708 |
676 |
case ID_TASK_MENU_RESUME: |
| |
709 |
677 |
OnResumeButton(); |
| |
710 |
678 |
break; |
| |
711 |
679 |
case ID_TASK_MENU_RESTART: |
| |
712 |
680 |
OnRestartButton(); |
| |
713 |
681 |
break; |
| |
714 |
682 |
case ID_TASK_MENU_CANCEL: |
| |
715 |
683 |
OnCancelButton(); |
| |
716 |
684 |
break; |
| |
717 |
685 |
case ID_TASK_MENU_REMOVE: |
| |
718 |
686 |
OnDeleteButton(); |
| |
719 |
687 |
break; |
| |
720 |
688 |
case ID_TASK_MENU_RESET_FEEDBACK: |
| |
721 |
689 |
OnResetUserFeedback(); |
| |
722 |
690 |
break; |
| |
723 |
691 |
|
| |
724 |
692 |
case ID_TASK_MENU_PAUSE_ALL: |
| |
725 |
|
m_pTasks->TasksPauseProcessing(); |
| |
|
693 |
OnPauseAllButton(); |
| |
726 |
694 |
break; |
| |
727 |
695 |
case ID_TASK_MENU_RESUME_ALL: |
| |
728 |
|
m_pTasks->TasksResumeProcessing(); |
| |
|
696 |
OnStartAllButton(); |
| |
729 |
697 |
break; |
| |
730 |
698 |
case ID_TASK_MENU_RESTART_ALL: |
| |
731 |
|
m_pTasks->TasksRestartProcessing(); |
| |
|
699 |
OnRestartAllButton(); |
| |
732 |
700 |
break; |
| |
733 |
701 |
case ID_TASK_MENU_CANCEL_ALL: |
| |
734 |
|
m_pTasks->TasksCancelProcessing(); |
| |
|
702 |
OnCancelAllButton(); |
| |
735 |
703 |
break; |
| |
736 |
704 |
case ID_TASK_MENU_REMOVE_INACTIVE: |
| |
737 |
|
m_pTasks->RemoveAllFinished(); |
| |
|
705 |
OnRemoveFinishedButton(); |
| |
738 |
706 |
break; |
| |
739 |
707 |
} |
| |
740 |
708 |
} |
| |
741 |
709 |
|
| |
742 |
710 |
void CStatusDlg::OnCancel() |
| |
743 |
711 |
{ |
| |
744 |
712 |
PostCloseMessage(); |
| |
745 |
713 |
CLanguageDialog::OnCancel(); |
| |
746 |
714 |
} |
| |
747 |
715 |
|
| |
748 |
716 |
void CStatusDlg::OnShowLogButton() |
| |
749 |
717 |
{ |
| |
750 |
718 |
|
| |
751 |
719 |
chengine::TTaskPtr spTask = GetSelectedItemPointer(); |
| |
752 |
720 |
if(!spTask) |
| |
753 |
721 |
return; |
| |
754 |
722 |
|
| |
755 |
723 |
chcore::TSmartPath logPath = spTask->GetLogPath(); |
| |
756 |
724 |
chengine::TLocalFilesystem localFilesystem(GetLogFileData()); |
| |
757 |
725 |
if(!localFilesystem.PathExist(logPath)) |
|
| |
860 |
828 |
lvc.cchTextMax = lstrlen(lvc.pszText); |
| |
861 |
829 |
lvc.cx = static_cast<int>(0.15*iWidth); |
| |
862 |
830 |
lvc.iSubItem=2; |
| |
863 |
831 |
m_ctlStatusList.InsertColumn(4, &lvc); |
| |
864 |
832 |
|
| |
865 |
833 |
RefreshStatus(); |
| |
866 |
834 |
} |
| |
867 |
835 |
|
| |
868 |
836 |
|
| |
869 |
837 |
|
| |
870 |
838 |
|
| |
871 |
839 |
|
| |
872 |
840 |
|
| |
873 |
841 |
|
| |
874 |
842 |
void CStatusDlg::PrepareResizableControls() |
| |
875 |
843 |
{ |
| |
876 |
844 |
ClearResizableControls(); |
| |
877 |
845 |
|
| |
878 |
846 |
|
| |
879 |
847 |
AddResizableControl(IDC_TASKLIST_LABEL_STATIC, 0, 0, 0.5, 0.0); |
| |
|
848 |
AddResizableControl(IDC_REMOVE_FINISHED_BUTTON, 0.5, 0.0, 0.0, 0); |
| |
880 |
849 |
AddResizableControl(IDC_STATUS_LIST, 0, 0, 0.5, 1.0); |
| |
881 |
850 |
|
| |
882 |
851 |
|
| |
883 |
852 |
AddResizableControl(IDC_PAUSE_BUTTON, 0, 1.0, 0, 0); |
| |
884 |
853 |
AddResizableControl(IDC_RESTART_BUTTON, 0, 1.0, 0, 0); |
| |
885 |
854 |
AddResizableControl(IDC_RESUME_BUTTON, 0, 1.0, 0, 0); |
| |
886 |
855 |
AddResizableControl(IDC_CANCEL_BUTTON, 0, 1.0, 0, 0); |
| |
887 |
856 |
AddResizableControl(IDC_DELETE_BUTTON, 0, 1.0, 0, 0); |
| |
888 |
|
AddResizableControl(IDC_PAUSE_ALL_BUTTON, 0, 1.0, 0, 0); |
| |
889 |
|
AddResizableControl(IDC_START_ALL_BUTTON, 0, 1.0, 0, 0); |
| |
890 |
|
AddResizableControl(IDC_CANCEL_ALL_BUTTON, 0, 1.0, 0, 0); |
| |
891 |
|
AddResizableControl(IDC_REMOVE_FINISHED_BUTTON, 0, 1.0, 0, 0); |
| |
892 |
|
AddResizableControl(IDC_RESTART_ALL_BUTTON, 0, 1.0, 0, 0); |
| |
893 |
|
AddResizableControl(IDC_TASK_ADVANCED_BUTTON, 0, 1.0, 0, 0); |
| |
894 |
857 |
|
| |
895 |
858 |
|
| |
896 |
859 |
AddResizableControl(IDC_GLOBAL_GROUP_STATIC, 0.0, 1.0, 0.5, 0); |
| |
897 |
860 |
|
| |
898 |
861 |
AddResizableControl(IDC_GLOBALPROCESSED_LABEL_STATIC, 0.0, 1.0, 0.0, 0.0); |
| |
899 |
862 |
AddResizableControl(IDC_GLOBALPROCESSED_STATIC, 0.0, 1.0, 0.5, 0); |
| |
900 |
863 |
AddResizableControl(IDC_GLOBALTRANSFER_LABEL_STATIC, 0.0, 1.0, 0.0, 0.0); |
| |
901 |
864 |
AddResizableControl(IDC_GLOBALTRANSFER_STATIC, 0.0, 1.0, 0.5, 0); |
| |
902 |
865 |
AddResizableControl(IDC_GLOBALPROGRESS_LABEL_STATIC, 0.0, 1.0, 0.0, 0.0); |
| |
903 |
866 |
AddResizableControl(IDC_GLOBAL_PROGRESS, 0.0, 1.0, 0.5, 0.0); |
| |
904 |
867 |
|
| |
905 |
868 |
|
| |
906 |
869 |
AddResizableControl(IDC_TASKINFORMATION_GROUP_STATIC, 0.5, 0.0, 0.5, 0); |
| |
907 |
870 |
|
| |
908 |
871 |
|
| |
909 |
872 |
AddResizableControl(IDC_TASKID_LABEL_STATIC, 0.5, 0.0, 0.0, 0); |
| |
910 |
873 |
AddResizableControl(IDC_TASKID_STATIC, 0.5, 0.0, 0.5, 0); |
| |
911 |
874 |
|
| |
912 |
875 |
AddResizableControl(IDC_OPERATION_LABEL_STATIC, 0.5, 0.0, 0.0, 0); |
| |
913 |
876 |
AddResizableControl(IDC_OPERATION_STATIC, 0.5, 0.0, 0.5, 0); |