575 stream.setVersion(QDataStream.Qt_4_6) |
575 stream.setVersion(QDataStream.Qt_4_6) |
576 |
576 |
577 stream.writeUInt16(self.Version) |
577 stream.writeUInt16(self.Version) |
578 stream.writeBool(self.__minimized) |
578 stream.writeBool(self.__minimized) |
579 stream << self.__bigSize |
579 stream << self.__bigSize |
580 stream.writeUInt16(self.__minSize) |
580 stream.writeUInt32(self.__minSize) |
581 stream.writeUInt16(self.__maxSize) |
581 stream.writeUInt32(self.__maxSize) |
582 stream.writeUInt16(len(self.splitterSizes)) |
582 stream.writeUInt32(len(self.splitterSizes)) |
583 for size in self.splitterSizes: |
583 for size in self.splitterSizes: |
584 stream.writeUInt16(size) |
584 stream.writeUInt32(size) |
585 stream.writeBool(self.__autoHide) |
585 stream.writeBool(self.__autoHide) |
586 |
586 |
587 return data |
587 return data |
588 |
588 |
589 def restoreState(self, state): |
589 def restoreState(self, state): |
604 maxSize = self.maximumWidth() |
604 maxSize = self.maximumWidth() |
605 |
605 |
606 data = QByteArray(state) |
606 data = QByteArray(state) |
607 stream = QDataStream(data, QIODevice.ReadOnly) |
607 stream = QDataStream(data, QIODevice.ReadOnly) |
608 stream.setVersion(QDataStream.Qt_4_6) |
608 stream.setVersion(QDataStream.Qt_4_6) |
609 stream.readUInt16() # version |
609 version = stream.readUInt16() # version |
610 minimized = stream.readBool() |
610 minimized = stream.readBool() |
611 |
611 |
612 if minimized and not self.__minimized: |
612 if minimized and not self.__minimized: |
613 self.shrink() |
613 self.shrink() |
614 |
614 |
615 stream >> self.__bigSize |
615 stream >> self.__bigSize |
616 self.__minSize = max(stream.readUInt16(), minSize) |
616 if version == 1: |
617 self.__maxSize = max(stream.readUInt16(), maxSize) |
617 self.__minSize = max(stream.readUInt16(), minSize) |
618 count = stream.readUInt16() |
618 self.__maxSize = max(stream.readUInt16(), maxSize) |
619 self.splitterSizes = [] |
619 count = stream.readUInt16() |
620 for _ in range(count): |
620 self.splitterSizes = [] |
621 self.splitterSizes.append(stream.readUInt16()) |
621 for _ in range(count): |
|
622 self.splitterSizes.append(stream.readUInt16()) |
|
623 elif version == 2: |
|
624 self.__minSize = max(stream.readUInt32(), minSize) |
|
625 self.__maxSize = max(stream.readUInt32(), maxSize) |
|
626 count = stream.readUInt32() |
|
627 self.splitterSizes = [] |
|
628 for _ in range(count): |
|
629 self.splitterSizes.append(stream.readUInt32()) |
622 |
630 |
623 self.__autoHide = stream.readBool() |
631 self.__autoHide = stream.readBool() |
624 self.__autoHideButton.setChecked(not self.__autoHide) |
632 self.__autoHideButton.setChecked(not self.__autoHide) |
625 |
633 |
626 if not minimized: |
634 if not minimized: |