src/eric7/PdfViewer/PdfInfoWidget.py

Sat, 23 Dec 2023 15:48:12 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sat, 23 Dec 2023 15:48:12 +0100
branch
eric7
changeset 10439
21c28b0f9e41
parent 9722
63135ab601e7
child 11090
f5f5f5803935
permissions
-rw-r--r--

Updated copyright for 2024.

9702
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
1 # -*- coding: utf-8 -*-
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
2
10439
21c28b0f9e41 Updated copyright for 2024.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9722
diff changeset
3 # Copyright (c) 2023 - 2024 Detlev Offenbach <detlev@die-offenbachs.de>
9702
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
4 #
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
5
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
6 """
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
7 Module implementing an info widget showing data of a PDF document.
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
8 """
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
9
9722
63135ab601e7 Corrected some code formatting and style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9705
diff changeset
10 from PyQt6.QtCore import QFileInfo, Qt, pyqtSlot
9702
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
11 from PyQt6.QtPdf import QPdfDocument
9722
63135ab601e7 Corrected some code formatting and style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9705
diff changeset
12 from PyQt6.QtWidgets import QFormLayout, QLabel, QWidget
9702
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
13
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
14 from eric7.Globals import dataString
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
15
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
16
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
17 class PdfInfoWidget(QWidget):
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
18 """
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
19 Class implementing an info widget showing data of a PDF document.
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
20 """
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
21
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
22 def __init__(self, document, parent=None):
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
23 """
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
24 Constructor
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
25
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
26 @param document reference to the PDF document object
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
27 @type QPdfDocument
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
28 @param parent reference to the parent widget (defaults to None)
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
29 @type QWidget (optional)
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
30 """
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
31 super().__init__(parent)
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
32
9705
7629a6f23b2e Fixed a few bugs in the PDF Viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9704
diff changeset
33 self.__document = None
9702
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
34
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
35 self.__layout = QFormLayout(self)
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
36 self.__layout.setRowWrapPolicy(QFormLayout.RowWrapPolicy.WrapLongRows)
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
37 self.__layout.setFieldGrowthPolicy(
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
38 QFormLayout.FieldGrowthPolicy.AllNonFixedFieldsGrow
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
39 )
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
40 self.__layout.setFormAlignment(
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
41 Qt.AlignmentFlag.AlignLeft | Qt.AlignmentFlag.AlignTop
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
42 )
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
43 self.__layout.setLabelAlignment(Qt.AlignmentFlag.AlignRight)
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
44
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
45 self.__infoLabels = {
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
46 "filePath": QLabel(),
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
47 "fileSize": QLabel(),
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
48 "title": QLabel(),
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
49 "subject": QLabel(),
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
50 "author": QLabel(),
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
51 "creator": QLabel(),
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
52 "producer": QLabel(),
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
53 "pages": QLabel(),
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
54 "creationDate": QLabel(),
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
55 "modificationDate": QLabel(),
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
56 "keywords": QLabel(),
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
57 "security": QLabel(),
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
58 }
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
59 for label in self.__infoLabels.values():
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
60 label.setWordWrap(True)
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
61 self.__layout.addRow(self.tr("File Path:"), self.__infoLabels["filePath"])
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
62 self.__layout.addRow(self.tr("File Size:"), self.__infoLabels["fileSize"])
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
63 self.__layout.addRow(self.tr("Title:"), self.__infoLabels["title"])
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
64 self.__layout.addRow(self.tr("Subject:"), self.__infoLabels["subject"])
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
65 self.__layout.addRow(self.tr("Author:"), self.__infoLabels["author"])
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
66 self.__layout.addRow(self.tr("Created with:"), self.__infoLabels["creator"])
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
67 self.__layout.addRow(self.tr("Creator:"), self.__infoLabels["producer"])
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
68 self.__layout.addRow(self.tr("Pages:"), self.__infoLabels["pages"])
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
69 self.__layout.addRow(self.tr("Created at:"), self.__infoLabels["creationDate"])
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
70 self.__layout.addRow(
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
71 self.tr("Last Modified at:"), self.__infoLabels["modificationDate"]
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
72 )
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
73 self.__layout.addRow(self.tr("Keywords:"), self.__infoLabels["keywords"])
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
74 self.__layout.addRow(self.tr("Security:"), self.__infoLabels["security"])
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
75
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
76 self.setLayout(self.__layout)
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
77
9705
7629a6f23b2e Fixed a few bugs in the PDF Viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9704
diff changeset
78 self.setDocument(document)
7629a6f23b2e Fixed a few bugs in the PDF Viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9704
diff changeset
79
7629a6f23b2e Fixed a few bugs in the PDF Viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9704
diff changeset
80 def setDocument(self, document):
7629a6f23b2e Fixed a few bugs in the PDF Viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9704
diff changeset
81 """
7629a6f23b2e Fixed a few bugs in the PDF Viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9704
diff changeset
82 Public method to set the reference to the PDF document.
7629a6f23b2e Fixed a few bugs in the PDF Viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9704
diff changeset
83
7629a6f23b2e Fixed a few bugs in the PDF Viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9704
diff changeset
84 @param document reference to the document
7629a6f23b2e Fixed a few bugs in the PDF Viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9704
diff changeset
85 @type QPdfDocument
7629a6f23b2e Fixed a few bugs in the PDF Viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9704
diff changeset
86 """
7629a6f23b2e Fixed a few bugs in the PDF Viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9704
diff changeset
87 if self.__document is not None:
7629a6f23b2e Fixed a few bugs in the PDF Viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9704
diff changeset
88 self.__document.statusChanged.disconnect(self.__populateInfoLabels)
7629a6f23b2e Fixed a few bugs in the PDF Viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9704
diff changeset
89 self.__document.pageCountChanged.disconnect(self.__handlePageCountChanged)
7629a6f23b2e Fixed a few bugs in the PDF Viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9704
diff changeset
90 self.__document.passwordChanged.disconnect(self.__handlePasswordChanged)
7629a6f23b2e Fixed a few bugs in the PDF Viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9704
diff changeset
91
7629a6f23b2e Fixed a few bugs in the PDF Viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9704
diff changeset
92 self.__document = document
7629a6f23b2e Fixed a few bugs in the PDF Viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9704
diff changeset
93
7629a6f23b2e Fixed a few bugs in the PDF Viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9704
diff changeset
94 if document is not None:
7629a6f23b2e Fixed a few bugs in the PDF Viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9704
diff changeset
95 self.__document.statusChanged.connect(self.__populateInfoLabels)
7629a6f23b2e Fixed a few bugs in the PDF Viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9704
diff changeset
96 self.__document.pageCountChanged.connect(self.__handlePageCountChanged)
7629a6f23b2e Fixed a few bugs in the PDF Viewer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9704
diff changeset
97 self.__document.passwordChanged.connect(self.__handlePasswordChanged)
9702
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
98
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
99 @pyqtSlot(QPdfDocument.Status)
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
100 def __populateInfoLabels(self, status):
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
101 """
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
102 Private slot to populate the info labels upon a change of the document status.
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
103
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
104 @param status document status
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
105 @type QPdfDocument.Status
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
106 """
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
107 ready = status == QPdfDocument.Status.Ready
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
108
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
109 self.__infoLabels["title"].setText(
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
110 self.__document.metaData(QPdfDocument.MetaDataField.Title) if ready else ""
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
111 )
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
112 self.__infoLabels["subject"].setText(
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
113 self.__document.metaData(QPdfDocument.MetaDataField.Subject)
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
114 if ready
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
115 else ""
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
116 )
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
117 self.__infoLabels["author"].setText(
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
118 self.__document.metaData(QPdfDocument.MetaDataField.Author) if ready else ""
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
119 )
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
120 self.__infoLabels["creator"].setText(
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
121 self.__document.metaData(QPdfDocument.MetaDataField.Creator)
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
122 if ready
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
123 else ""
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
124 )
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
125 self.__infoLabels["producer"].setText(
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
126 self.__document.metaData(QPdfDocument.MetaDataField.Producer)
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
127 if ready
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
128 else ""
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
129 )
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
130 self.__infoLabels["pages"].setText(
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
131 str(self.__document.pageCount()) if ready else ""
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
132 )
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
133 self.__infoLabels["creationDate"].setText(
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
134 self.__document.metaData(QPdfDocument.MetaDataField.CreationDate).toString(
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
135 "yyyy-MM-dd hh:mm:ss t"
9722
63135ab601e7 Corrected some code formatting and style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9705
diff changeset
136 )
63135ab601e7 Corrected some code formatting and style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9705
diff changeset
137 if ready
9702
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
138 else ""
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
139 )
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
140 self.__infoLabels["modificationDate"].setText(
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
141 self.__document.metaData(
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
142 QPdfDocument.MetaDataField.ModificationDate
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
143 ).toString("yyyy-MM-dd hh:mm:ss t")
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
144 if ready
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
145 else ""
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
146 )
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
147 self.__infoLabels["keywords"].setText(
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
148 self.__document.metaData(QPdfDocument.MetaDataField.Keywords)
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
149 if ready
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
150 else ""
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
151 )
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
152
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
153 if ready:
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
154 self.__handlePasswordChanged()
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
155 else:
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
156 self.__infoLabels["security"].setText("")
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
157
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
158 @pyqtSlot(int)
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
159 def __handlePageCountChanged(self, pageCount):
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
160 """
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
161 Private slot to handle a change of the page count.
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
162
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
163 @param pageCount changed page count
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
164 @type int
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
165 """
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
166 self.__infoLabels["pages"].setText(str(pageCount))
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
167
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
168 @pyqtSlot()
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
169 def __handlePasswordChanged(self):
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
170 """
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
171 Private slot to handle a change of the password.
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
172 """
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
173 self.__infoLabels["security"].setText(
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
174 self.tr("Encrypted")
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
175 if self.__document.password()
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
176 else self.tr("Not Encrypted")
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
177 )
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
178
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
179 def setFileName(self, filename):
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
180 """
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
181 Public method to set the file name info.
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
182
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
183 @param filename DESCRIPTION
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
184 @type TYPE
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
185 """
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
186 self.__infoLabels["filePath"].setText(filename)
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
187 if filename:
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
188 fi = QFileInfo(filename)
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
189 fileSize = fi.size()
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
190 self.__infoLabels["fileSize"].setText(dataString(fileSize))
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
191 else:
7c973954919d PDF Viewer
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
192 self.__infoLabels["fileSize"].setText("")

eric ide

mercurial