def get_self_pb(self):
if self.self_pb is None:
self.self_pb = getattr(self.get_parent_pb(), self.ds.name)
if self.repeated:
self.index = len(self.self_pb)
item_indices[id(self.self_pb)].append(self)
if self.is_msg:
self.self_pb.add()
if self.is_msg:
for i in range(self.childCount()):
if self.child(i).required:
self.child(i).parent_pb = None
self.child(i).self_pb = None
self.child(i).update(self.child(i).value)
if hasattr(self.self_pb, 'SetInParent'):
self.self_pb.SetInParent()
if not self.required:
self.setCheckState(0, Qt.Checked)
self.last_check_state = Qt.Checked
# Return value is for get_parent_pb recursion
if self.is_msg:
if not self.repeated:
return self.self_pb
else:
return self.self_pb[self.index]
评论列表
文章目录