fixed proper parameter inheritance
This commit is contained in:
parent
5951312d40
commit
80d9a790ec
@ -401,6 +401,7 @@ class SeaModule(Module):
|
||||
hdbpath = None # hdbpath for main writable
|
||||
|
||||
def __new__(cls, name, logger, cfgdict, srv):
|
||||
print('N', cls, name)
|
||||
if hasattr(srv, 'extra_sea_modules'):
|
||||
extra_modules = srv.extra_sea_modules
|
||||
else:
|
||||
@ -533,8 +534,11 @@ class SeaModule(Module):
|
||||
if key in cls.accessibles:
|
||||
if key == 'target':
|
||||
kwds['readonly'] = False
|
||||
pobj = cls.accessibles[key]
|
||||
pobj.init(kwds)
|
||||
prev = cls.accessibles[key]
|
||||
pobj = Parameter(**kwds)
|
||||
merged_properties = prev.propertyValues.copy()
|
||||
pobj.updateProperties(merged_properties)
|
||||
pobj.merge(merged_properties)
|
||||
datatype = kwds.get('datatype', cls.accessibles[key].datatype)
|
||||
else:
|
||||
pobj = Parameter(**kwds)
|
||||
@ -590,9 +594,10 @@ class SeaModule(Module):
|
||||
attributes[pname] = pobj
|
||||
pobj.__set_name__(cls, pname)
|
||||
|
||||
classname = '%s_%s' % (cls.__name__, sea_object)
|
||||
classname = '%s_%s' % (cls.__name__, name)
|
||||
newcls = type(classname, (cls,), attributes)
|
||||
return Module.__new__(newcls)
|
||||
result = Module.__new__(newcls)
|
||||
return result
|
||||
|
||||
def updateEvent(self, module, parameter, value, timestamp, readerror):
|
||||
upd = getattr(self, 'update_' + parameter, None)
|
||||
|
Loading…
x
Reference in New Issue
Block a user