13 #ifndef QmitknnInteractiveToolGUI_h
14 #define QmitknnInteractiveToolGUI_h
29 class QAbstractButton;
36 struct VersionCheckResult;
71 itkFactorylessNewMacro(Self);
274 bool IsAutoCreateNextLabelEnabled()
const;
277 bool IsAutoConfirmEnabled()
const;
284 bool IsNamingPromptSkippedOnAutoCreate()
const;
287 bool AreShortcutsShownInLabels()
const;
295 void ApplyShortcutLabels();
312 bool AutoCreateAndSelectNewLabel();
315 void InvalidateAutoCreatedLabel();
321 void OnAutoCreatedSegmentationDeleted();
324 void ReEnableLastInteractor();
333 void ApplyCapabilityGating();
342 void UpdateUndoButtonState();
367 void UpdateConfirmButtonLabel();
376 void UpdateInitializeButtonText();
385 void UncheckInitializeButton();
411 bool RunUpdate(
bool clientOnly);
422 void MaybePromptModelSwitch(
bool localAvailable);
431 std::unique_ptr<Ui::QmitknnInteractiveToolGUI> m_Ui;
432 QButtonGroup* m_PromptTypeButtonGroup;
434 std::unordered_map<InteractionType, QPushButton*> m_InteractorButtons;
436 std::optional<mitk::MultiLabelSegmentation::LabelValueType> m_AutoCreatedLabelValue;
437 std::optional<mitk::MultiLabelSegmentation::LabelValueType> m_PreviousActiveLabelValue;
439 QAbstractButton* m_LastInteractorButton =
nullptr;
440 bool m_AutoConfirmInProgress =
false;
446 bool m_SuppressActiveLabelChanged =
false;
451 bool m_SupportsUndo =
false;
453 QTimer* m_HeartbeatTimer =
nullptr;
459 bool m_SessionExpiredHandled =
false;
462 std::vector<ShortcutLabel> m_ShortcutLabels;
463 QString m_PromptTypeBaseTitle;
464 QString m_PreviewLabelBaseText;
#define MITKPYTHONSEGMENTATIONUI_EXPORT
Event object sent on IPreferences::OnPropertyChanged events.
Interface to application preferences.
std::vector< LabelValueType > LabelValueVectorType
mitk::Label::PixelType LabelValueType
InteractionType
Specifies the types of interactions available.
PromptType
Specifies the types of prompts used in nnInteractive.
Result of CheckInstalledVersion(): the verdict plus the version strings it was derived from (empty wh...