Основні послуги

тут ви можете знайти API для служб, пов’язаних із створенням і маніпулюванням моделлю.

Репозиторій елементів (/Factory)

class gaphor.core.modeling.ElementFactory(event_manager: EventManager | None = None, element_dispatcher: ElementDispatcher | None = None)[source]

ElementFactory використовується як центральне сховище для моделі.

Нові елементи моделі повинні бути створені за допомогою create.

Для пошуку елементів у моделі можна використовувати такі методи, як select.

select(expression: Callable[[Base], bool]) Iterator[Base][source]
select(expression: type[T]) Iterator[T]
select(expression: None) Iterator[Base]

Ітерація елементів, які відповідають виразу.

Вирази можуть бути:

  • None: повертає всі елементи.

  • Тип: повертає всі елементи цього типу або підтипів.

  • Вираз.

lselect(expression: Callable[[Base], bool] | type[T] | None = None) list[Base][source]

Як select, але повертає список замість ітератора.

lookup(id: str) Base | None[source]

Знайти елемент із певним ідентифікатором.

keys() Iterator[str][source]

Повторити всі ідентифікатори на заводі.

values() Iterator[Base][source]

Повторити всі елементи на заводі.

size() int[source]

Повернути кількість елементів на заводі.

is_empty() bool[source]

Повертає True, якщо фабрика не містить елементів.

create(type: type[T]) T[source]

Створіть новий елемент моделі типу type.

Цей метод створюватиме лише елементи моделі, а не елементи Presentation: їх створює Diagram.

flush() None[source]

Промити всі елементи (вилучити їх із заводу).

Спочатку очищаються елементи діаграми. Далі промиваються інші елементи.

Мова Моделювання

Інформацію про те, як керуються мовами моделювання, можна знайти Мови Моделювання.

Менеджер заходів

Система подій піклується про надсилання подій у Gaphor.