13 #ifndef QmitkSegmentationTaskListWidget_h
14 #define QmitkSegmentationTaskListWidget_h
26 class QFileSystemWatcher;
42 void CheckDataStorage(
const mitk::DataNode* removedNode =
nullptr);
44 bool ActiveTaskIsShown()
const;
45 void LoadNextUnfinishedTask();
46 void SaveActiveTask(
bool saveAsIntermediateResult =
false);
50 void ActiveTaskChanged(
const std::optional<size_t>& index);
51 void CurrentTaskChanged(
const std::optional<size_t>& index);
57 void ResetFileSystemWatcher();
58 void OnResultDirectoryChanged(
const QString&);
59 void UpdateProgressBar();
61 void OnPreviousButtonClicked();
62 void OnNextButtonClicked();
63 void OnCurrentTaskChanged();
64 void UpdateLoadButton();
65 void UpdateNavigationButtons();
66 void UpdateDetailsLabel();
67 void UpdateStoreAndAcceptButtons();
68 void OnLoadButtonClicked();
72 void SubscribeToActiveSegmentation();
73 void UnsubscribeFromActiveSegmentation();
74 void OnSegmentationModified();
75 void SetActiveTaskIndex(
const std::optional<size_t>& index);
76 void SetCurrentTaskIndex(
const std::optional<size_t>& index);
77 bool HandleUnsavedChanges(
const QString& alternativeTitle = QString());
79 void OnUnsavedChangesSaved();
80 void OnPreviousTaskShortcutActivated();
81 void OnNextTaskShortcutActivated();
82 void OnLoadTaskShortcutActivated();
83 void OnStoreInterimResultShortcutActivated();
84 void OnAcceptSegmentationShortcutActivated();
85 void OnStoreButtonClicked();
86 void OnAcceptButtonClicked();
88 Ui::QmitkSegmentationTaskListWidget* m_Ui;
89 QFileSystemWatcher* m_FileSystemWatcher;
93 std::optional<size_t> m_CurrentTaskIndex;
94 std::optional<size_t> m_ActiveTaskIndex;
95 std::optional<unsigned long> m_SegmentationModifiedObserverTag;
96 bool m_UnsavedChanges;