Pamhyr: Add pamhyr modules flags enum and checker status OR operator.

This commit is contained in:
Pierre-Antoine Rouby committed 2024-03-19 09:18:28 +01:00
1 parent e215e0f14a
commit 51031e7359
9 files changed
+107 -31

No files matched your search

+12 -13
View File
@@ -38,6 +38,8 @@ from PyQt5.QtWidgets import (
)
from PyQt5.uic import loadUi
from Modules import Modules
from View.Tools.ASubWindow import WindowToolKit
from View.Tools.ListedSubWindow import ListedSubWindow
from View.DummyWindow import DummyWindow
@@ -359,27 +361,24 @@ class ApplicationWindow(QMainWindow, ListedSubWindow, WindowToolKit):
)
def _init_propagation_keys(self):
self._propagation_keys = set()
self._propagation_keys = Modules(0)
def _propagate_update(self, key=None):
self._propagation_keys.add(key)
def _propagate_update(self, key=Modules(0)):
self._propagation_keys |= key
logger.debug(f"Propagation keys: {self._propagation_keys}")
def _do_propagate_update(self):
self.update()
keys = self._propagation_keys.copy()
keys = self._propagation_keys
self._init_propagation_keys()
for key in keys:
if key == "window_list":
logger.debug(f"Update window list")
self._do_update_window_list()
continue
if Modules.WINDOW_LIST in keys:
self._do_update_window_list()
logger.debug(f"Propagation of {key}")
for _, window in self.sub_win_list:
window._propagated_update(key=key)
logger.debug(f"Propagation of {keys}")
for _, window in self.sub_win_list:
window._propagated_update(key=keys)
def update(self):
self.set_title()
@@ -631,7 +630,7 @@ class ApplicationWindow(QMainWindow, ListedSubWindow, WindowToolKit):
return
def _update_window_list(self):
self._propagation_keys.add("window_list")
self._propagation_keys |= Modules.WINDOW_LIST
def _do_update_window_list(self):
menu = self.findChild(QMenu, "menu_windows")