Helpviewer/PageScreenDialog.py

changeset 2804
a331371462a3
parent 2302
f29e9405c851
child 2847
1843ef6e2656
child 2999
28c75409a78f
equal deleted inserted replaced
2803:282752ecd0fc 2804:a331371462a3
18 18
19 class PageScreenDialog(QDialog, Ui_PageScreenDialog): 19 class PageScreenDialog(QDialog, Ui_PageScreenDialog):
20 """ 20 """
21 Class documentation goes here. 21 Class documentation goes here.
22 """ 22 """
23 def __init__(self, view, parent=None): 23 def __init__(self, view, visibleOnly=False, parent=None):
24 """ 24 """
25 Constructor 25 Constructor
26 26
27 @param view reference to the web view containing the page to be saved 27 @param view reference to the web view containing the page to be saved
28 (HelpBrowser) 28 (HelpBrowser)
29 @param visibleOnly flag indicating to just save the visible part
30 of the page (boolean)
29 @param parent reference to the parent widget (QWidget) 31 @param parent reference to the parent widget (QWidget)
30 """ 32 """
31 super().__init__(parent) 33 super().__init__(parent)
32 self.setupUi(self) 34 self.setupUi(self)
33 35
34 self.__view = view 36 self.__view = view
35 self.__createPixmap() 37 self.__createPixmap(visibleOnly)
36 self.pageScreenLabel.setPixmap(self.__pagePixmap) 38 self.pageScreenLabel.setPixmap(self.__pagePixmap)
37 39
38 def __createPixmap(self): 40 def __createPixmap(self, visibleOnly):
39 """ 41 """
40 Private slot to create a pixmap of the associated view's page. 42 Private slot to create a pixmap of the associated view's page.
43
44 @param visibleOnly flag indicating to just save the visible part
45 of the page (boolean)
41 """ 46 """
42 page = self.__view.page() 47 page = self.__view.page()
43 origSize = page.viewportSize() 48 origSize = page.viewportSize()
44 page.setViewportSize(page.mainFrame().contentsSize()) 49 if not visibleOnly:
50 page.setViewportSize(page.mainFrame().contentsSize())
45 51
46 image = QImage(page.viewportSize(), QImage.Format_ARGB32) 52 image = QImage(page.viewportSize(), QImage.Format_ARGB32)
47 painter = QPainter(image) 53 painter = QPainter(image)
48 page.mainFrame().render(painter) 54 page.mainFrame().render(painter)
49 painter.end() 55 painter.end()

eric ide

mercurial