Compare commits

..

2 Commits

Author SHA1 Message Date
Christopher T. Johnson
92ad7efaad Move to QSettings for database credentials.
fixes: #1
2025-02-24 16:35:37 -05:00
Christopher T. Johnson
f68e6c65cc Remove unused lines 2025-02-24 16:30:27 -05:00
5 changed files with 50 additions and 13 deletions

View File

@@ -1,15 +1,18 @@
from typing import Any, cast
from PySide6.QtCore import (
QByteArray,
QDate,
QModelIndex,
QPersistentModelIndex,
QPoint,
QSettings,
Qt,
Signal,
Slot,
)
from PySide6.QtGui import (
QCloseEvent,
QColor,
)
from PySide6.QtSql import QSqlTableModel
@@ -22,7 +25,7 @@ from PySide6.QtWidgets import (
)
from docketModel import docketModel
from lib.utils import QStyleOptionViewItemInit
from lib.utils import QStyleOptionViewItemInit, readGeometry, writeGeometry
from ui.MainWindow import Ui_MainWindow
from workers import updateThread
@@ -118,10 +121,10 @@ class MainWindow(QMainWindow, Ui_MainWindow):
def __init__(self) -> None:
super(MainWindow, self).__init__()
self.setupUi(self)
readGeometry(self)
model = casesModel()
model.setTable("cases")
# model.sort(1, Qt.SortOrder.AscendingOrder)
model.setFilter(
"1=1 ORDER BY SUBSTRING(docket_id, 1, 3), CAST(SUBSTRING(docket_id,4) AS INTEGER)"
)
@@ -166,10 +169,12 @@ class MainWindow(QMainWindow, Ui_MainWindow):
self.docketView.horizontalHeader().setSectionResizeMode(
1, QHeaderView.ResizeMode.Stretch
)
# self.docketView.resizeRowsToContents()
# self.docketView.setItemDelegateForColumn(1, documentDelegate())
return
def closeEvent(self, event: QCloseEvent) -> None:
writeGeometry(self)
super().closeEvent(event)
return
@Slot(QModelIndex) # type: ignore
def rowClicked(self, index: QModelIndex) -> None:
if not index.isValid():

View File

@@ -1,6 +1,6 @@
from typing import NoReturn, cast
from PySide6.QtCore import QCoreApplication, QObject, QRect, Signal
from PySide6.QtCore import QByteArray, QCoreApplication, QObject, QRect, QSettings, Signal
from PySide6.QtGui import QColor, QFont
from PySide6.QtSql import QSqlQuery
from PySide6.QtWidgets import QStyleOptionViewItem, QWidget
@@ -28,3 +28,24 @@ class QStyleOptionViewItemInit(QStyleOptionViewItem):
widget: QWidget
font: QFont
text: str
def openSettings(group:str|None = None) -> QSettings:
settings = QSettings("Troglodite Services", "SCOTUS Watch")
if group is not None:
settings.beginGroup(group)
return settings
def readGeometry(widget:QWidget) -> None:
settings = openSettings(widget.objectName())
geometry = settings.value('geometry', QByteArray())
assert isinstance(geometry, QByteArray)
if not geometry.isEmpty():
widget.restoreGeometry(geometry)
settings.endGroup()
return
def writeGeometry(widget: QWidget) -> None:
settings = openSettings(widget.objectName())
settings.setValue('geometry', widget.saveGeometry())
settings.endGroup()
return

View File

@@ -1,10 +1,12 @@
import math
from PySide6.QtCore import QFile, QModelIndex, QPoint, Signal, Slot
from PySide6.QtGui import QCloseEvent
from PySide6.QtPdf import QPdfBookmarkModel, QPdfDocument
from PySide6.QtPdfWidgets import QPdfView
from PySide6.QtWidgets import QComboBox, QDialog, QMenuBar, QSpinBox, QWidget
from lib.utils import readGeometry, writeGeometry
from ui.pdfViewer import Ui_pdfViewer
ZOOM_MULTIPLIER = math.sqrt(2.0)
@@ -81,7 +83,9 @@ class PDFViewer(QDialog, Ui_pdfViewer):
def __init__(self, parent: QWidget | None) -> None:
super(PDFViewer, self).__init__(parent)
self.setupUi(self)
self.setObjectName('PDFViewer')
readGeometry(self)
print(self.objectName())
self.zoomSelector = ZoomSelector(self)
self.pageSelector = QSpinBox(self)
self.document = QPdfDocument(self)
@@ -113,6 +117,11 @@ class PDFViewer(QDialog, Ui_pdfViewer):
)
return
def closeEvent(self, event: QCloseEvent) -> None:
writeGeometry(self)
super().closeEvent(event)
return
@Slot(QFile) # type: ignore
def open(self, file: QFile) -> None:
# assert file.exists()

View File

@@ -2,6 +2,7 @@
import faulthandler
import sys
from PySide6.QtCore import QSettings
from PySide6.QtSql import (
QSqlDatabase,
)
@@ -9,6 +10,8 @@ from PySide6.QtWidgets import (
QApplication,
)
from lib.utils import openSettings
faulthandler.enable()
from MainWindow import MainWindow
@@ -17,11 +20,13 @@ from MainWindow import MainWindow
def main() -> int:
#
app = QApplication(sys.argv)
settings = openSettings('database')
db = QSqlDatabase.addDatabase("QMYSQL")
db.setHostName("ceph5")
db.setDatabaseName("scotus")
db.setUserName("scotus")
db.setPassword("lechOtvirf8Om/")
db.setHostName(settings.value("hostname"))
db.setDatabaseName(settings.value("databasename","scotus")) # type: ignore
db.setUserName(settings.value("user","scotus")) # type: ignore
db.setPassword(settings.value("password"))
settings.endGroup()
db.open()
import lib.dbConfig

View File

@@ -1,3 +0,0 @@
#+AUTHOR: Christopher T. Johnson
#+STARTUP: indent
#+OPTIONS: num:nil toc:nil