File indexing completed on 2024-12-01 11:12:11
0001 # SPDX-License-Identifier: GPL-3.0-or-later 0002 # SPDX-FileCopyrightText: 2021 Anupam Basak <anupam.basak27@gmail.com> 0003 0004 import abc 0005 import os 0006 0007 from PySide2.QtCore import QObject, QUrl, Slot, Signal, QProcessEnvironment 0008 0009 0010 class Module(QObject): 0011 _filename = None 0012 __ENV__: QProcessEnvironment = QProcessEnvironment.systemEnvironment() 0013 0014 def __init__(self, filename, parent=None): 0015 super().__init__(parent) 0016 self._filename = filename 0017 0018 @staticmethod 0019 @abc.abstractmethod 0020 def registerTypes() -> None: 0021 pass 0022 0023 @staticmethod 0024 @abc.abstractmethod 0025 def qmlPath() -> QUrl: 0026 pass 0027 0028 @Slot(None, result=str) 0029 def dir(self): 0030 path, _ = os.path.split(os.path.abspath(self._filename)) 0031 return path 0032 0033 @Slot(None, result=str) 0034 def moduleName(self) -> str: 0035 pass 0036 0037 errorOccurred = Signal(str)