Fix scrolling and alignment in PageView.

This commit is contained in:
Andrey Golovizin 2014-09-08 20:09:29 +02:00
parent a75630890e
commit a089846a31

View file

@ -15,6 +15,7 @@
from PyQt4.QtCore import (
Qt,
signal,
slot,
)
@ -60,14 +61,19 @@ class PageScene(QGraphicsScene):
self.removeItem(item)
self.page = page
self.pageItem = self.addPage(page)
self.pageItem.ensureVisible(0, 0, 1, 1)
self.highlightBaselines()
shadow = QGraphicsDropShadowEffect()
shadow.setBlurRadius(20)
shadow.setOffset(2, 2)
self.pageItem.setGraphicsEffect(shadow)
self.sceneRectChanged.emit(self.sceneRect())
rect = self.pageItem.boundingRect()
rect.setLeft(rect.left() - 10)
rect.setTop(rect.top() - 10)
self.setSceneRect(rect)
self.pageItem.ensureVisible(0, 0, 1, 1)
self.pageItemChanged.emit(self.pageItem)
def highlightBaselines(self):
@ -103,3 +109,4 @@ class PageView(QGraphicsView):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.setFrameShape(self.NoFrame)
self.setAlignment(Qt.AlignTop | Qt.AlignLeft)