EG/ui/panels/editor_panels.py

26 lines
814 B
Python

from ui.panels.editor_panels_center import EditorPanelsCenterMixin
from ui.panels.editor_panels_left import EditorPanelsLeftMixin
from ui.panels.editor_panels_right import EditorPanelsRightMixin
from ui.panels.editor_panels_top import EditorPanelsTopMixin
class EditorPanels(
EditorPanelsTopMixin,
EditorPanelsLeftMixin,
EditorPanelsRightMixin,
EditorPanelsCenterMixin,
):
"""Centralized UI panel renderer for top-level editor panels."""
def __init__(self, app):
self.app = app
def __getattr__(self, name):
return getattr(self.app, name)
def __setattr__(self, name, value):
if name == "app" or name in self.__dict__ or hasattr(type(self), name):
object.__setattr__(self, name, value)
else:
setattr(self.app, name, value)