33 lines
1.1 KiB
Python
33 lines
1.1 KiB
Python
from app.core.observer_manager import ObserverManager, NotificationType
|
|
from app.core.language_manager import LanguageManager
|
|
from app.core.theme_manager import ThemeManager
|
|
from app.core.settings_manager import SettingsManager
|
|
|
|
class MainManager:
|
|
_instance = None
|
|
def __init__(self):
|
|
if MainManager._instance is not None:
|
|
raise Exception("This class is a singleton!")
|
|
else:
|
|
MainManager._instance = self
|
|
self.observer_manager = ObserverManager()
|
|
self.theme_manager = ThemeManager()
|
|
self.settings_manager = SettingsManager(self.observer_manager,self.theme_manager)
|
|
self.language_manager = LanguageManager(self.settings_manager)
|
|
|
|
def get_observer_manager(self):
|
|
return self.observer_manager
|
|
def get_theme_manager(self):
|
|
return self.theme_manager
|
|
def get_settings_manager(self):
|
|
return self.settings_manager
|
|
def get_language_manager(self):
|
|
return self.language_manager
|
|
|
|
@classmethod
|
|
def get_instance(cls):
|
|
if cls._instance is None:
|
|
cls._instance = cls()
|
|
return cls._instance
|
|
|