From eaaa00890e7460f96f30680074e28074da75054e Mon Sep 17 00:00:00 2001 From: "Christopher T. Johnson" Date: Thu, 20 Feb 2025 10:14:42 -0500 Subject: [PATCH] Lint --- MainWindow.py | 2 +- dockettableview.py | 30 +++++++++++++------- lib/utils.py | 2 +- pdfView.py | 71 ++++++++++++++++++++++++++++++++-------------- scotus-pull.py | 4 ++- 5 files changed, 75 insertions(+), 34 deletions(-) diff --git a/MainWindow.py b/MainWindow.py index 5aedead..a58f5dc 100644 --- a/MainWindow.py +++ b/MainWindow.py @@ -111,7 +111,7 @@ class MainWindow(QMainWindow, Ui_MainWindow): self.docketView.horizontalHeader().setSectionResizeMode( 1, QHeaderView.ResizeMode.Stretch ) - #self.docketView.resizeRowsToContents() + # self.docketView.resizeRowsToContents() # self.docketView.setItemDelegateForColumn(1, documentDelegate()) return diff --git a/dockettableview.py b/dockettableview.py index 953e8ee..b60d5e8 100644 --- a/dockettableview.py +++ b/dockettableview.py @@ -36,23 +36,32 @@ from PySide6.QtWidgets import ( from pdfView import PDFViewer + class docketEntryDelegate(QStyledItemDelegate): - def __init__(self, view: QAbstractItemView, parent: QWidget|None = None) -> None: + def __init__( + self, view: QAbstractItemView, parent: QWidget | None = None + ) -> None: super(docketEntryDelegate, self).__init__(parent) self.view = view return - def sizeHint(self, _: QStyleOptionViewItem, index: QModelIndex | QPersistentModelIndex) -> QSize: + def sizeHint( + self, + _: QStyleOptionViewItem, + index: QModelIndex | QPersistentModelIndex, + ) -> QSize: widget = self.view.indexWidget(index) return widget.sizeHint() - + + class docketEntry(QTextEdit): - def __init__(self, parent: QWidget|None = None) -> None: + def __init__(self, parent: QWidget | None = None) -> None: super(docketEntry, self).__init__(parent) - self.setSizePolicy(QSizePolicy.Policy.Preferred , - QSizePolicy.Policy.Fixed) + self.setSizePolicy( + QSizePolicy.Policy.Preferred, QSizePolicy.Policy.Fixed + ) return - + def mousePressEvent(self, e: QMouseEvent) -> None: super().mousePressEvent(e) anchor = self.anchorAt(e.pos()) @@ -73,6 +82,7 @@ class docketEntry(QTextEdit): docSize = doc.size() return QSize(size.width(), int(docSize.height())) + class docketTableView(QTableView): manager: QNetworkAccessManager clickedEvent = Signal(QPoint) @@ -81,7 +91,7 @@ class docketTableView(QTableView): def __init__(self, parent: QWidget | None = None) -> None: super(docketTableView, self).__init__(parent) - self.setItemDelegateForColumn(1,docketEntryDelegate(self)) + self.setItemDelegateForColumn(1, docketEntryDelegate(self)) self.anchorSignal.connect(self.doAnchor) self.manager = QNetworkAccessManager() self.manager.finished.connect(self.getDone) @@ -114,10 +124,10 @@ class docketTableView(QTableView): path = "/".join(dirs) currentDir.mkpath(path) print(f"Checking for .{url.path()} existance.") - if not hasattr(self, 'pdf'): + if not hasattr(self, "pdf"): self.pdf = PDFViewer(self) if QFile("." + url.path()).exists(): - self.pdf.open(QFile('.' + url.path())) + self.pdf.open(QFile("." + url.path())) self.pdf.show() else: print(f"Fetching {url}") diff --git a/lib/utils.py b/lib/utils.py index 0bb5667..8f952f4 100644 --- a/lib/utils.py +++ b/lib/utils.py @@ -21,10 +21,10 @@ def query_error(query: QSqlQuery) -> NoReturn: ) raise Exception(translate("MainWindow", "SQL Error")) + class QStyleOptionViewItemInit(QStyleOptionViewItem): backgroundBrush: QColor rect: QRect widget: QWidget font: QFont text: str - diff --git a/pdfView.py b/pdfView.py index 62746a6..09a3768 100644 --- a/pdfView.py +++ b/pdfView.py @@ -4,35 +4,54 @@ from PySide6.QtCore import QFile, QModelIndex, QPoint, Signal, Slot from PySide6.QtPdf import QPdfBookmarkModel, QPdfDocument from PySide6.QtPdfWidgets import QPdfView from PySide6.QtWidgets import QComboBox, QDialog, QMenuBar, QSpinBox, QWidget + from ui.pdfViewer import Ui_pdfViewer ZOOM_MULTIPLIER = math.sqrt(2.0) + class ZoomSelector(QComboBox): zoom_mode_changed = Signal(QPdfView.ZoomMode) zoom_factor_changed = Signal(float) - - def __init__(self, parent: QWidget|None = None) -> None: + + def __init__(self, parent: QWidget | None = None) -> None: super(ZoomSelector, self).__init__(parent) self.setEditable(True) - for text in [ 'Fit Width', 'Fit Page', '12%', '25%', '33%', '50%', '66%', '75%', '100%', '125%', '150%', '200%', '400%']: + for text in [ + "Fit Width", + "Fit Page", + "12%", + "25%", + "33%", + "50%", + "66%", + "75%", + "100%", + "125%", + "150%", + "200%", + "400%", + ]: self.addItem(text) self.currentTextChanged.connect(self.on_current_text_changed) lineEdit = self.lineEdit() assert lineEdit is not None lineEdit.editingFinished.connect(self._editing_finished) return - @Slot(float) # type: ignore + + @Slot(float) # type: ignore def set_zoom_factor(self, zoomFactor: float) -> None: percent = int(zoomFactor * 100) self.setCurrentText(f"{percent}%") return + @Slot() def reset(self) -> None: - self.setCurrentIndex(8) # 100% + self.setCurrentIndex(8) # 100% return - @Slot(str) # type: ignore + + @Slot(str) # type: ignore def on_current_text_changed(self, text: str) -> None: if text == "Fit Width": self.zoom_mode_changed.emit(QPdfView.ZoomMode.FitToWidth) @@ -44,13 +63,14 @@ class ZoomSelector(QComboBox): self.zoom_mode_changed.emit(QPdfView.ZoomMode.Custom) self.zoom_factor_changed.emit(factor) return + @Slot() def _editing_finished(self) -> None: lineEdit = self.lineEdit() assert lineEdit is not None self.on_current_text_changed(lineEdit.text()) return - + class PDFViewer(QDialog, Ui_pdfViewer): menubar: QMenuBar @@ -75,7 +95,9 @@ class PDFViewer(QDialog, Ui_pdfViewer): nav.backAvailableChanged.connect(self.actionBack.setEnabled) nav.forwardAvailableChanged.connect(self.actionForward.setEnabled) self.zoomSelector.zoom_mode_changed.connect(self.pdfView.setZoomMode) - self.zoomSelector.zoom_factor_changed.connect(self.pdfView.setZoomFactor) + self.zoomSelector.zoom_factor_changed.connect( + self.pdfView.setZoomFactor + ) self.zoomSelector.reset() bookmark_model = QPdfBookmarkModel(self) @@ -84,25 +106,29 @@ class PDFViewer(QDialog, Ui_pdfViewer): self.bookmarkView.setModel(bookmark_model) self.bookmarkView.activated.connect(self.bookmark_selected) - self.tabWidget.setTabEnabled(1, False) # disable pages tabwidget + self.tabWidget.setTabEnabled(1, False) # disable pages tabwidget self.pdfView.setDocument(self.document) - self.pdfView.zoomFactorChanged.connect(self.zoomSelector.set_zoom_factor) + self.pdfView.zoomFactorChanged.connect( + self.zoomSelector.set_zoom_factor + ) return - @Slot(QFile) # type: ignore + @Slot(QFile) # type: ignore def open(self, file: QFile) -> None: - #assert file.exists() - #if not file.isOpen(): - #file.open(QFile.OpenModeFlag.ReadOnly) - #self.document.load(file) + # assert file.exists() + # if not file.isOpen(): + # file.open(QFile.OpenModeFlag.ReadOnly) + # self.document.load(file) self.document.load(file.fileName()) - document_title = self.document.metaData(QPdfDocument.MetaDataField.Title) + document_title = self.document.metaData( + QPdfDocument.MetaDataField.Title + ) self.setWindowTitle(document_title if document_title else "PDF Viewer") self.page_selected(0) - self.pageSelector.setMaximum(self.document.pageCount() -1 ) + self.pageSelector.setMaximum(self.document.pageCount() - 1) return - @Slot(QModelIndex) # type: ignore + @Slot(QModelIndex) # type: ignore def bookmark_selected(self, index: QModelIndex) -> None: if not index.isValid(): return @@ -114,7 +140,7 @@ class PDFViewer(QDialog, Ui_pdfViewer): nav.jump(page, QPoint(), zoom_level) return - @Slot(int) # type: ignore + @Slot(int) # type: ignore def page_selected(self, page: int) -> None: nav = self.pdfView.pageNavigator() nav.jump(page, QPoint(), nav.currentZoom()) @@ -157,7 +183,11 @@ class PDFViewer(QDialog, Ui_pdfViewer): @Slot() def on_actionContinuous_triggered(self) -> None: cont_checked = self.actionContinuous.isChecked() - mode = QPdfView.PageMode.MultiPage if cont_checked else QPdfView.PageMode.SinglePage + mode = ( + QPdfView.PageMode.MultiPage + if cont_checked + else QPdfView.PageMode.SinglePage + ) self.pdfView.setPageMode(mode) return @@ -170,4 +200,3 @@ class PDFViewer(QDialog, Ui_pdfViewer): def on_actionForward_triggered(self) -> None: self.pdfView.pageNavigator().forward() return - diff --git a/scotus-pull.py b/scotus-pull.py index 167cca2..ba2afe0 100755 --- a/scotus-pull.py +++ b/scotus-pull.py @@ -1,6 +1,7 @@ #!venv/bin/python3 -import sys import faulthandler +import sys + from PySide6.QtSql import ( QSqlDatabase, ) @@ -12,6 +13,7 @@ faulthandler.enable() from MainWindow import MainWindow + def main() -> int: # app = QApplication(sys.argv)