2022-06-01 16:37:19 +00:00
|
|
|
import logging
|
|
|
|
|
|
|
|
|
|
from lib.helpers import get_resource
|
|
|
|
|
from PyQt5 import uic
|
|
|
|
|
from PyQt5.QtCore import Qt, pyqtSignal
|
|
|
|
|
from PyQt5.QtGui import QIcon
|
|
|
|
|
from PyQt5.QtWidgets import QMainWindow
|
|
|
|
|
from ui.dialog import Dialog
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class Window(QMainWindow):
|
|
|
|
|
_closing = pyqtSignal()
|
|
|
|
|
|
2022-07-12 08:48:04 +00:00
|
|
|
def __init__(self, *args, **kwargs):
|
|
|
|
|
super().__init__(*args, **kwargs)
|
2022-06-01 16:37:19 +00:00
|
|
|
self.setAttribute(Qt.WA_DeleteOnClose)
|
|
|
|
|
self.setWindowFlags(Qt.Window)
|
|
|
|
|
me = self.__class__.__name__
|
|
|
|
|
u = get_resource("ui/{0}/{0}.ui".format(me.lower()))
|
|
|
|
|
self.ui = uic.loadUi(u, self)
|
|
|
|
|
# LOGO
|
|
|
|
|
self.setWindowIcon(QIcon(get_resource("ui/imgs/neo.ico")))
|
|
|
|
|
self.log = logging.getLogger(f"{self.__class__.__name__} ({id(self)})")
|
|
|
|
|
|
|
|
|
|
def setCentralWidget(self, widget):
|
|
|
|
|
widget.setParent(self)
|
|
|
|
|
super().setCentralWidget(widget)
|
|
|
|
|
|
|
|
|
|
def open_dialog(self, widget, show=True):
|
|
|
|
|
d = Dialog()
|
|
|
|
|
widget.setParent(self)
|
|
|
|
|
d.setCentralWidget(widget)
|
|
|
|
|
if show:
|
|
|
|
|
d.show()
|
|
|
|
|
return d
|
|
|
|
|
|
|
|
|
|
def closeEvent(self, *args):
|
|
|
|
|
self._closing.emit()
|