13 #ifndef QmitkSegmentationTaskListWidget_h
14 #define QmitkSegmentationTaskListWidget_h
27 class QFileSystemWatcher;
43 void CheckDataStorage(
const mitk::DataNode* removedNode =
nullptr);
45 bool ActiveTaskIsShown()
const;
46 void LoadNextUnfinishedTask();
47 void SaveActiveTask(
bool saveAsInterimResult =
false);
51 void ActiveTaskChanged(
const std::optional<size_t>& index);
52 void CurrentTaskChanged(
const std::optional<size_t>& index);
58 void ResetFileSystemWatcher();
59 void OnResultDirectoryChanged(
const QString&);
60 void UpdateProgressBar();
62 void OnPreviousButtonClicked();
63 void OnNextButtonClicked();
64 void OnFindButtonClicked();
65 void OnCurrentTaskChanged();
66 void UpdateLoadButton();
67 void UpdateNavigationButtons();
68 void UpdateDetailsLabel();
69 void UpdateFormWidget();
70 void OnFormSubmission();
71 void UpdateStoreAndAcceptButtons();
72 void OnLoadButtonClicked();
76 void SubscribeToActiveSegmentation();
77 void UnsubscribeFromActiveSegmentation();
78 void OnSegmentationModified();
79 void SetActiveTaskIndex(
const std::optional<size_t>& index);
80 void SetCurrentTaskIndex(
const std::optional<size_t>& index);
81 bool HandleUnsavedChanges(
const QString& alternativeTitle = QString());
82 void OnUnsavedChangesSaved();
83 void OnPreviousTaskShortcutActivated();
84 void OnNextTaskShortcutActivated();
85 void OnFindTaskShortcutActivated();
86 void OnLoadTaskShortcutActivated();
87 void OnStoreInterimResultShortcutActivated();
88 void OnAcceptSegmentationShortcutActivated();
89 void OnStoreButtonClicked();
90 void OnAcceptButtonClicked();
92 Ui::QmitkSegmentationTaskListWidget* m_Ui;
93 QFileSystemWatcher* m_FileSystemWatcher;
100 std::optional<size_t> m_CurrentTaskIndex;
101 std::optional<size_t> m_ActiveTaskIndex;
102 std::optional<unsigned long> m_SegmentationModifiedObserverTag;
103 bool m_UnsavedChanges;