Quellcode durchsuchen

fix annoying bits (#2439)

* fix annoying bits
- exception swallowed but event manager
- dict notation for state

* no implementation for abstract methods

---------

Co-authored-by: Fred Lefévère-Laoide <Fred.Lefevere-Laoide@Taipy.io>
Fred Lefévère-Laoide vor 3 Monaten
Ursprung
Commit
749373f401
2 geänderte Dateien mit 8 neuen und 2 gelöschten Zeilen
  1. 2 0
      taipy/gui/_event_context_manager.py
  2. 6 2
      taipy/gui/state.py

+ 2 - 0
taipy/gui/_event_context_manager.py

@@ -23,6 +23,8 @@ class _EventManager:
     def __exit__(self, exc_type, exc_value, traceback):
         if self.__thread_stack:
             self.__thread_stack.pop().start()
+        if exc_value:
+            raise exc_value
         return self
 
     def _add_thread(self, thread: Thread):

+ 6 - 2
taipy/gui/state.py

@@ -84,7 +84,7 @@ class State(SimpleNamespace, metaclass=ABCMeta):
         Returns:
             Gui: The Gui instance for this state object.
         """
-        raise NotImplementedError
+        ...
 
     def assign(self, name: str, value: t.Any) -> t.Any:
         """Assign a value to a state variable.
@@ -125,7 +125,7 @@ class State(SimpleNamespace, metaclass=ABCMeta):
             name (str): The variable name to update.
             value (Any): The new variable value.
         """
-        raise NotImplementedError
+        ...
 
     def __enter__(self):
         self._gui.__enter__()
@@ -149,6 +149,10 @@ class State(SimpleNamespace, metaclass=ABCMeta):
         """
         self._gui.set_favicon(favicon_path, self)
 
+    @abstractmethod
+    def __getitem__(self, key: str) -> "State":
+        ...
+
 
 class _GuiState(State):
     __gui_attr = "_gui"