51 void handleNotification(Field* field)
override;
59 void activateAttachments()
override;
70 void calculateOutputImageProperties(
int outputIndex, PagedImage* outputImage)
override;
95 const std::string& getMessage()
const;
151 virtual void setOutputImageProperties(
int outputIndex, PagedImage* outputImage);
157 bool _isInputField(
const Field* field)
const;
160 enum EOnInputChangeBehavior {
165 void _addUpdateControlFields();
166 void _addStatusFields();
167 void _addStatusCodeField();
168 bool _isFieldUpdate(Field* field)
const;
169 bool _isFieldOnInputChangeBehavior(Field* field)
const;
170 bool _shouldUpdateOnInputChange()
const;
171 bool _isFieldClear(Field* field)
const;
172 bool _hasNamePrefixIn(
const std::string& name)
const;
173 bool _hasNamePrefixInput(
const std::string& name)
const;
174 void _handleInputFieldNotification();
175 void _initiateUpdate();
176 void _validateInputAndUpdate();
178 bool _shouldClearOnFailedUpdate();
179 void _setStatusCodeAndMessageFieldValues(
const EStatusCode code,
const std::string& message);
181 void _initiateClear();
182 void _tryToSetOutputImageProperties(
int outputIndex, PagedImage* outputImage);
183 void _validateOutputImageValidity(
const PagedImage*
const outputImage)
const;
184 void _handleErrorDuringSetOutputImageProperties(PagedImage* outputImage,
const AlgorithmModule::Error& error);
185 void _setImageInvalid(PagedImage*
const image);
187 bool _hasValidatedInputAndInitiatedUpdate;
188 bool _wasOutputCleared;
189 bool _didSetOutputImagePropertiesFail;
192 TypedEnumField<EOnInputChangeBehavior>* onInputChangeBehaviorField;
195 NotifyField* updateField;
198 NotifyField* clearField;
205 NotifyField* updateDoneField;
208 TypedEnumField<EStatusCode>* statusCodeField;
211 StringField* statusMessageField;
214 BoolField* hasValidOutputField;
219 BoolField* doNotClearOnFailedUpdateField;