Source code for

import abc
from typing import Tuple

from import Service

[docs]class UIComponent(Service): """A user interface component.""" ui_name: str # "The UIComponent name, provided by the loader" size: Tuple[int, int] # "Size used for floating the component"
[docs] @abc.abstractmethod def open(self): """Create and display the UI components (windows)."""
[docs] @abc.abstractmethod def close(self): """Close the UI component. The component can decide to hide or destroy the UI components. """
[docs] def shutdown(self): """Shut down this component. It's not supposed to be opened again. """ self.close()