diff options
Diffstat (limited to 'raveos-center/raveos_center/oldalak/rendszer/__init__.py')
| -rw-r--r-- | raveos-center/raveos_center/oldalak/rendszer/__init__.py | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/raveos-center/raveos_center/oldalak/rendszer/__init__.py b/raveos-center/raveos_center/oldalak/rendszer/__init__.py new file mode 100644 index 0000000..60b5768 --- /dev/null +++ b/raveos-center/raveos_center/oldalak/rendszer/__init__.py @@ -0,0 +1,49 @@ +import importlib + +from raveos_center.elemek import Fulsor, Oldal, Verem + +AZON = "rendszer" +MENU = "Rendszer" +IKON = "rendszer" + +FULEK = ["driverek", "gaming", "karbantartas", "snapshotok", "secureboot", "mentes"] + + +class Rendszer(Oldal): + def __init__(self, kozpont): + super().__init__(kozpont, "DRIVEREK · GAMING · KARBANTARTÁS · SNAPSHOTOK", "Rendszer", kitolt=True) + self.fulek = {} + modulok = [importlib.import_module(f"{__name__}.{nev}") for nev in FULEK] + self.fulsor = Fulsor([(m.AZON, m.CIM) for m in modulok], self.valt) + self.torzs.addWidget(self.fulsor) + self.verem = Verem() + for m in modulok: + ful = m.FUL(kozpont) + self.fulek[m.AZON] = ful + self.verem.addWidget(ful) + self.torzs.addWidget(self.verem, 1) + self.aktiv = modulok[0].AZON if modulok else None + if self.aktiv: + self.fulsor.aktiv(self.aktiv) + + def valt(self, azon, *args): + if azon not in self.fulek: + return + self.aktiv = azon + self.fulsor.aktiv(azon) + self.verem.setCurrentWidget(self.fulek[azon]) + self.fulek[azon].megjelenik(*args) + + def elerheto(self, ful=None, *_): + return ful is None or ful in self.fulek + + def megjelenik(self, ful=None, *args): + self.valt(ful if ful in self.fulek else self.aktiv, *args) + + def indulaskor(self): + for ful in self.fulek.values(): + if hasattr(ful, "indulaskor"): + ful.indulaskor() + + +OLDAL = Rendszer |