示例#1
0
 def deserialize(stream):
     c = cell(stream["row"], stream["col"], stream["size"])
     c._state = stream["state"]
     elements = []
     for el in stream["elements"]:
         elements.append(element.deserialize(el))
     for index, el in enumerate(c.elements):
         e = elements[index]
         el.update(e)
     el.notDirty()
     return c
示例#2
0
 def _updateFromUref(self, uref):
     if uref.name==element.NAME:
         cell_, eRow, eCol = self._findCellForElement(uref.row+uref.offsetRow, uref.col+uref.offsetCol)
         el = cell_.getElementAt(eRow, eCol)
         update = element.deserialize(cPickle.loads(uref.data))
         el.update(update)
     elif uref.name==cell.NAME:
         cell_ = self.getCellAt(uref.row, uref.col)
         update = cell_.deserialize(cPickle.loads(uref.data))
         cell_.update(update)
     else:
         raise Exception("Uref update for: '%s'."%uref.name)