Files
PlantAI-dev/tools/pymol-open-source/data/startup/apbs_gui/qtwidgets.py
T
2026-08-03 18:42:47 +08:00

33 lines
847 B
Python

from pymol.Qt import QtCore, QtWidgets
class ResizableMessageBox(QtWidgets.QMessageBox):
_EVENT_TYPES = (
QtCore.QEvent.UpdateRequest,
QtCore.QEvent.WinIdChange,
QtCore.QEvent.ShowToParent,
)
_UNWANTED_WINDOW_FLAGS = (
QtCore.Qt.MSWindowsFixedSizeDialogHint |
0)
def _make_resizable(self):
textEdit = self.findChild(QtWidgets.QTextEdit)
if textEdit is None:
return
self.setSizeGripEnabled(True)
ex = QtWidgets.QSizePolicy.Expanding
for w in [self, textEdit]:
w.setMaximumSize(0xffffff, 0xffffff)
w.setSizePolicy(ex, ex)
def event(self, e):
if e.type() in self._EVENT_TYPES:
self._make_resizable()
return super(ResizableMessageBox, self).event(e)