st-ten-1/src/ui/widget/widget.py
2024-10-24 13:34:14 +02:00

36 lines
1011 B
Python

import logging
from lib.helpers import get_resource
from PyQt6 import uic
from PyQt6.QtCore import Qt
from PyQt6.QtWidgets import QWidget
from ui.dialog import Dialog
class Widget(QWidget):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.setAttribute(Qt.WidgetAttribute.WA_DeleteOnClose)
me = self.__class__.__name__
u = get_resource("ui/{0}/{0}.ui".format(me.lower()))
self.ui = uic.loadUi(u, self)
self.setWindowTitle(me)
self.log = logging.getLogger(f"{self.__class__.__name__} ({id(self)})")
def setParent(self, parent):
parent._closing.connect(self._parent_closing)
super().setParent(parent)
def open_dialog(self, widget, show=True, maximized=False):
d = Dialog()
d.setCentralWidget(widget)
if show:
if maximized:
d.showMaximized()
else:
d.show()
return d
def _parent_closing(self):
pass