Add handling for ValidatorState.Invalid

CURA-6497

ValidatorState.Invalid is set if a string setting has allow_empty =
False and its value is empty.
This commit is contained in:
Lipu Fei 2019-05-09 12:07:14 +02:00
parent 111430c9c2
commit 2054413952
3 changed files with 4 additions and 2 deletions

View file

@ -168,7 +168,7 @@ class MachineErrorChecker(QObject):
if validator_type: if validator_type:
validator = validator_type(key) validator = validator_type(key)
validation_state = validator(stack) validation_state = validator(stack)
if validation_state in (ValidatorState.Exception, ValidatorState.MaximumError, ValidatorState.MinimumError): if validation_state in (ValidatorState.Exception, ValidatorState.MaximumError, ValidatorState.MinimumError, ValidatorState.Invalid):
# Finish # Finish
self._setResult(True) self._setResult(True)
return return

View file

@ -107,7 +107,7 @@ class StartSliceJob(Job):
for key in stack.getAllKeys(): for key in stack.getAllKeys():
validation_state = stack.getProperty(key, "validationState") validation_state = stack.getProperty(key, "validationState")
if validation_state in (ValidatorState.Exception, ValidatorState.MaximumError, ValidatorState.MinimumError): if validation_state in (ValidatorState.Exception, ValidatorState.MaximumError, ValidatorState.MinimumError, ValidatorState.Invalid):
Logger.log("w", "Setting %s is not valid, but %s. Aborting slicing.", key, validation_state) Logger.log("w", "Setting %s is not valid, but %s. Aborting slicing.", key, validation_state)
return True return True
Job.yieldThread() Job.yieldThread()

View file

@ -42,6 +42,7 @@ SettingItem
} }
switch(propertyProvider.properties.validationState) switch(propertyProvider.properties.validationState)
{ {
case "ValidatorState.Invalid":
case "ValidatorState.Exception": case "ValidatorState.Exception":
case "ValidatorState.MinimumError": case "ValidatorState.MinimumError":
case "ValidatorState.MaximumError": case "ValidatorState.MaximumError":
@ -65,6 +66,7 @@ SettingItem
} }
switch(propertyProvider.properties.validationState) switch(propertyProvider.properties.validationState)
{ {
case "ValidatorState.Invalid":
case "ValidatorState.Exception": case "ValidatorState.Exception":
case "ValidatorState.MinimumError": case "ValidatorState.MinimumError":
case "ValidatorState.MaximumError": case "ValidatorState.MaximumError":