EJIO.ctk_extender.layout package

Inheritance diagram of EJIO.ctk_extender.layout.base.Layout, EJIO.ctk_extender.layout.router.LayoutRouter

Submodules

EJIO.ctk_extender.layout.base module

class EJIO.ctk_extender.layout.base.Layout(parent: <MagicMock name = 'mock.CTk.__or__().__or__()' id='140416957553632'>, geometry: GeometryStrategy | None = None)[исходный код]

Базовые классы: WidgetContainer

Базовый класс для экранов (страниц) приложения. Изолирован от базовых виджетов и управляется навигационным стеком окна.

build() → <MagicMock name='mock.CTkFrame' id='140416972239120'>[исходный код]

Строит базовый контейнерный фрейм. Может быть переопределен в дочерних классах (например, для настройки бордеров или цвета).

destroy() → None[исходный код]

Каскадно уничтожает сам контейнер и все вложенные в него дочерние виджеты, полностью очищая оперативную память.

on_hide() → None[исходный код]

Хук жизненного цикла: макет скрыт (ушел вглубь стека или закрывается).

on_show() → None[исходный код]

Хук жизненного цикла: макет выведен на экран (стал активным).

EJIO.ctk_extender.layout.err module

exception EJIO.ctk_extender.layout.err.IncorrectLayoutTypeError(message: str)[исходный код]

Базовые классы: LayoutRegistryError

Исключение связанное с некорректной попыткой регистрации лэйаута.

exception EJIO.ctk_extender.layout.err.LayoutAlreadyRegisteredError(message: str)[исходный код]

Базовые классы: LayoutRegistryError

Исключение связанное с ошибкой перезаписи зарегестрированного лэйаута.

exception EJIO.ctk_extender.layout.err.LayoutNotFoundError(message: str)[исходный код]

Базовые классы: LayoutRegistryError

Исключение связанное с ошибкой остутствия искомого лэйаута в реестре.

exception EJIO.ctk_extender.layout.err.LayoutRegistryError(message: str)[исходный код]

Базовые классы: CtkExtenderBaseError

Базовое исключение связанное с работой реестра окон.

EJIO.ctk_extender.layout.router module

class EJIO.ctk_extender.layout.router.LayoutRouter(*args: tuple[object, ...], **kwargs: dict[str, object])[исходный код]

Базовые классы: Registry[Layout], Generic

Статический реестр маршрутов макетов приложения. Связывает строковый ключ „окно:макет“ с классом конкретного Layout.

classmethod get(key: str) → type[T][исходный код]

Возвращает зарегистрированный класс по его ключу из текущего регистра.

Параметры:

key – Строковый ключ.

Результат:

Класс, сохраненный под этим ключом.

Исключение:

RegistryKeyError – Если класс с таким ключом не найден.

classmethod get_layout_class(window_name: str, layout_name: str) → type[Layout][исходный код]

Безопасно извлекает класс макета для указанного окна.

Параметры:
  • window_name – Имя управляющего окна (префикс).

  • layout_name – Имя целевого макета.

Результат:

Класс Layout.

EJIO.ctk_extender.layout.router.get_layout(window_name: str, layout_name: str) → type[Layout][исходный код]

Безопасно извлекает класс макета для указанного окна.

Параметры:
  • window_name – Имя управляющего окна (префикс).

  • layout_name – Имя целевого макета.

Результат:

Класс Layout.

EJIO.ctk_extender.layout.router.register_layout(key: str) → Callable[[type[E]], type[E]][исходный код]

Декоратор для автоматической регистрации окон в LayoutRouter.

Параметры:

key – Ключ, под которым объект будет храниться в реестре.

Результат:

Обертку, выполняющую регистрацию класса.

Module contents

class EJIO.ctk_extender.layout.Layout(parent: <MagicMock name = 'mock.CTk.__or__().__or__()' id='140416957553632'>, geometry: GeometryStrategy | None = None)[исходный код]

Базовые классы: WidgetContainer

Базовый класс для экранов (страниц) приложения. Изолирован от базовых виджетов и управляется навигационным стеком окна.

build() → <MagicMock name='mock.CTkFrame' id='140416972239120'>[исходный код]

Строит базовый контейнерный фрейм. Может быть переопределен в дочерних классах (например, для настройки бордеров или цвета).

destroy() → None[исходный код]

Каскадно уничтожает сам контейнер и все вложенные в него дочерние виджеты, полностью очищая оперативную память.

on_hide() → None[исходный код]

Хук жизненного цикла: макет скрыт (ушел вглубь стека или закрывается).

on_show() → None[исходный код]

Хук жизненного цикла: макет выведен на экран (стал активным).

class EJIO.ctk_extender.layout.LayoutRouter(*args: tuple[object, ...], **kwargs: dict[str, object])[исходный код]

Базовые классы: Registry[Layout], Generic

Статический реестр маршрутов макетов приложения. Связывает строковый ключ „окно:макет“ с классом конкретного Layout.

classmethod get(key: str) → type[T][исходный код]

Возвращает зарегистрированный класс по его ключу из текущего регистра.

Параметры:

key – Строковый ключ.

Результат:

Класс, сохраненный под этим ключом.

Исключение:

RegistryKeyError – Если класс с таким ключом не найден.

classmethod get_layout_class(window_name: str, layout_name: str) → type[Layout][исходный код]

Безопасно извлекает класс макета для указанного окна.

Параметры:
  • window_name – Имя управляющего окна (префикс).

  • layout_name – Имя целевого макета.

Результат:

Класс Layout.

EJIO.ctk_extender.layout.get_layout(window_name: str, layout_name: str) → type[Layout][исходный код]

Безопасно извлекает класс макета для указанного окна.

Параметры:
  • window_name – Имя управляющего окна (префикс).

  • layout_name – Имя целевого макета.

Результат:

Класс Layout.

EJIO.ctk_extender.layout.register_layout(key: str) → Callable[[type[E]], type[E]][исходный код]

Декоратор для автоматической регистрации окон в LayoutRouter.

Параметры:

key – Ключ, под которым объект будет храниться в реестре.

Результат:

Обертку, выполняющую регистрацию класса.