sea.py: fix status datatype

sea status is a string (not a tuple) and needs therefore
special treatment.
interestingly this bug did not yet appear ...
This commit is contained in:
2022-10-04 15:11:57 +02:00
parent 12cb0cdade
commit 498dbd4179

View File

@ -533,14 +533,17 @@ class SeaModule(Module):
if key == 'target': if key == 'target':
kwds['readonly'] = False kwds['readonly'] = False
prev = cls.accessibles[key] prev = cls.accessibles[key]
pobj = Parameter(**kwds) if key == 'status':
merged_properties = prev.propertyValues.copy() # special case: status from sea is a string, not the status tuple
pobj.updateProperties(merged_properties) pobj = prev.copy()
pobj.merge(merged_properties) else:
datatype = kwds.get('datatype', cls.accessibles[key].datatype) pobj = Parameter(**kwds)
merged_properties = prev.propertyValues.copy()
pobj.updateProperties(merged_properties)
pobj.merge(merged_properties)
else: else:
pobj = Parameter(**kwds) pobj = Parameter(**kwds)
datatype = pobj.datatype datatype = pobj.datatype
if issubclass(cls, SeaWritable) and key == 'target': if issubclass(cls, SeaWritable) and key == 'target':
kwds['readonly'] = False kwds['readonly'] = False
attributes['value'] = Parameter(**kwds) attributes['value'] = Parameter(**kwds)