Checkpoint

This commit is contained in:
Christopher T. Johnson
2025-02-15 22:57:19 -05:00
parent 7c6ffea018
commit 50b14562fc

View File

@@ -1,9 +1,8 @@
from typing import Any, cast from typing import cast
from PySide6.QtCore import ( from PySide6.QtCore import (
QAbstractItemModel, QAbstractItemModel,
QDir, QDir,
QEvent,
QFile, QFile,
QModelIndex, QModelIndex,
QObject, QObject,
@@ -20,9 +19,9 @@ from PySide6.QtGui import (
QColor, QColor,
QFont, QFont,
QMouseEvent, QMouseEvent,
QPaintEvent,
QPainter, QPainter,
QPalette, QPalette,
QShowEvent,
QTextDocument, QTextDocument,
) )
from PySide6.QtNetwork import ( from PySide6.QtNetwork import (
@@ -31,7 +30,6 @@ from PySide6.QtNetwork import (
QNetworkRequest, QNetworkRequest,
) )
from PySide6.QtWidgets import ( from PySide6.QtWidgets import (
QApplication,
QSizePolicy, QSizePolicy,
QStyle, QStyle,
QStyledItemDelegate, QStyledItemDelegate,
@@ -101,10 +99,17 @@ class documentDelegate(QStyledItemDelegate):
doc.setTextWidth(options.rect.width()) doc.setTextWidth(options.rect.width())
doc.setHtml(options.text) doc.setHtml(options.text)
doc.setTextWidth(options.rect.width()) doc.setTextWidth(options.rect.width())
print(f"sizeHint: {doc.idealWidth()}, {doc.size().height()}")
return QSize(int(doc.idealWidth()), int(doc.size().height())) return QSize(int(doc.idealWidth()), int(doc.size().height()))
class docketEntry(QTextEdit): class docketEntry(QTextEdit):
def __init__(self, parent: QWidget|None = None) -> None:
super(docketEntry, self).__init__(parent)
self.setSizePolicy(QSizePolicy.Policy.Preferred ,
QSizePolicy.Policy.Fixed)
return
def mousePressEvent(self, e: QMouseEvent) -> None: def mousePressEvent(self, e: QMouseEvent) -> None:
super().mousePressEvent(e) super().mousePressEvent(e)
anchor = self.anchorAt(e.pos()) anchor = self.anchorAt(e.pos())
@@ -125,9 +130,13 @@ class docketEntry(QTextEdit):
doc.setPlainText(self.document().toPlainText()) doc.setPlainText(self.document().toPlainText())
doc.setTextWidth(size.width()) doc.setTextWidth(size.width())
docSize = doc.size() docSize = doc.size()
print(f"size: {size}, docSize: {docSize}")
return QSize(size.width(), int(docSize.height())) return QSize(size.width(), int(docSize.height()))
def paintEvent(self, e: QPaintEvent) -> None:
print(f"event.rect: {e.rect()}, size: {self.size()}")
print(self.document().toPlainText())
return super().paintEvent(e)
class docketTableView(QTableView): class docketTableView(QTableView):
manager = QNetworkAccessManager() manager = QNetworkAccessManager()
@@ -191,3 +200,16 @@ class docketTableView(QTableView):
widget.setPalette(red) widget.setPalette(red)
self.setIndexWidget(index, widget) self.setIndexWidget(index, widget)
return return
def paintEvent(self, e: QPaintEvent) -> None:
for row in range(0, self.model().rowCount()):
index = self.model().index(row, 1)
widget = cast(docketEntry, self.indexWidget(index))
print(f"{row}: {widget.toPlainText()}")
print(f"{row}: {widget.sizeHint()}")
print(f"{row}: {widget.size()}")
print()
widget.resize(75,27)
super().paintEvent(e)
return