Index: src/ch/StatusDlg.h =================================================================== diff -u -rb26ced3298e3e7e51d91f3ac70b56746786da83b -re45315d2ecd008df0162cba53a77dc6b8c5880d0 --- src/ch/StatusDlg.h (.../StatusDlg.h) (revision b26ced3298e3e7e51d91f3ac70b56746786da83b) +++ src/ch/StatusDlg.h (.../StatusDlg.h) (revision e45315d2ecd008df0162cba53a77dc6b8c5880d0) @@ -22,11 +22,12 @@ #include "FFListCtrl.h" #include "TProgressCtrlEx.h" #include "TExplorerTaskBarProgress.h" +#include "../libchengine/TTask.h" +#include "../libchengine/TTaskManager.h" +#include "TaskContextMenu.h" -namespace chcore -{ +namespace chengine { class TTaskManager; - class TTask; } #define WM_UPDATESTATUS WM_USER+6 @@ -38,40 +39,43 @@ { // Construction public: - explicit CStatusDlg(chcore::TTaskManager* pTasks, CWnd* pParent = nullptr); // standard constructor + explicit CStatusDlg(chengine::TTaskManager* pTasks, CWnd* pParent = nullptr); // standard constructor virtual ~CStatusDlg(); void PostCloseMessage(); void SetBufferSizesString(unsigned long long ullValue, int iIndex); void RefreshStatus(); - int GetImageFromStatus(chcore::ETaskCurrentState eState); + int GetImageFromStatus(chengine::ETaskCurrentState eState); void ApplyButtonsState(); - chcore::TTaskPtr GetSelectedItemPointer(); + chengine::TTaskPtr GetSelectedItemPointer(); size_t GetSelectedItemSessionUniqueID(); void EnableControls(bool bEnable=true); protected: void DoDataExchange(CDataExchange* pDX) override; // DDX/DDV support BOOL OnCommand(WPARAM wParam, LPARAM lParam) override; + + void OnResetUserFeedback(); + LRESULT WindowProc(UINT message, WPARAM wParam, LPARAM lParam) override; void OnLanguageChanged() override; void PrepareResizableControls(); - CString GetStatusString(const chcore::TTaskStatsSnapshotPtr& spTaskStats); + CString GetStatusString(const chengine::TTaskStatsSnapshotPtr& spTaskStats); void StickDialogToScreenEdge(); CString FormatTime(unsigned long long timeSeconds); CString FormatTimeMiliseconds(unsigned long long timeMiliSeconds); CString GetProcessedText(unsigned long long ullProcessedCount, unsigned long long ullTotalCount, unsigned long long ullProcessedSize, unsigned long long ullTotalSize); - void UpdateTaskStatsDetails(const chcore::TTaskStatsSnapshotPtr& spTaskStats); - void SetTaskListEntry(size_t stPos, const chcore::TTaskStatsSnapshotPtr& spTaskStats); - CString GetSubtaskName(chcore::ESubOperationType eSubtask) const; + void UpdateTaskStatsDetails(const chengine::TTaskStatsSnapshotPtr& spTaskStats); + void SetTaskListEntry(size_t stPos, const chengine::TTaskStatsSnapshotPtr& spTaskStats); + CString GetSubtaskName(chengine::EOperationType eOperation, chengine::ESubOperationType eSubtask) const; CString GetProgressWindowTitleText() const; void UpdateTaskBarProgress() const; @@ -87,7 +91,6 @@ afx_msg void OnPauseButton(); afx_msg void OnCancelButton(); afx_msg void OnSetPriorityButton(); - afx_msg void OnTaskAdvancedOptions(); afx_msg void OnSetBuffersizeButton(); afx_msg void OnStartAllButton(); afx_msg void OnRestartButton(); @@ -98,6 +101,7 @@ afx_msg void OnRemoveFinishedButton(); afx_msg void OnKeydownStatusList(NMHDR* pNMHDR, LRESULT* pResult); afx_msg void OnSelectionChanged(NMHDR* /*pNMHDR*/, LRESULT* /*pResult*/); + afx_msg void OnStatusListRClick(NMHDR* pNMHDR, LRESULT* pResult); void OnCancel() override; afx_msg void OnShowLogButton(); afx_msg void OnStickButton(); @@ -106,12 +110,12 @@ DECLARE_MESSAGE_MAP() public: - chcore::TTaskPtr m_spInitialSelection; + chengine::TTaskPtr m_spInitialSelection; static bool m_bLock; // locker protected: - chcore::TTaskManager* m_pTasks; + chengine::TTaskManager* m_pTasks; CImageList m_images; CFFListCtrl m_ctlStatusList; @@ -123,7 +127,10 @@ TProgressCtrlEx m_ctlSubTaskSizeProgress; TProgressCtrlEx m_ctlProgressAll; - chcore::TTaskManagerStatsSnapshotPtr m_spTaskMgrStats; + TaskContextMenu m_menuContext; + chengine::taskid_t m_currentTaskId = chengine::NoTaskID; + + chengine::TTaskManagerStatsSnapshotPtr m_spTaskMgrStats; TExplorerTaskBarProgress m_taskBarProgress; };