def do_update(self, presenter, action=False): RiffList.do_update(self, presenter) self.obj_type = None lgob_chunk = find_chunk(self.childs, 'lgob') self.loda = find_chunk(lgob_chunk.childs, 'loda') self.obj_type = dword2py_int(self.loda.chunk[0x18:0x1c]) if not self.obj_type is None and obj_parse.has_key(self.obj_type): parse_trafo(self) obj_parse[self.obj_type][0](self)
def do_update(self, presenter, action=False): type = None lgob_chunk = find_chunk(self.childs, 'lgob') loda_chunk = find_chunk(lgob_chunk.childs, 'loda') type = dword2py_int(loda_chunk.chunk[0x18:0x1c]) if not type is None and obj_dict.has_key(type): new_obj = obj_dict[type](self.chunk) new_obj.parent = self.parent new_obj.version = self.version new_obj.childs = self.childs new_obj.loda = loda_chunk index = self.parent.childs.index(self) self.parent.childs.insert(index, new_obj) self.parent.childs.remove(self) new_obj.do_update(presenter) else: RiffList.do_update(self, presenter)
def __init__(self, chunk): RiffList.__init__(self, chunk)