Interested Article - Graphical Editing Framework


- 2021-03-04
- 1
Graphical Editing Framework (GEF) — фреймворк, специально разработанный для платформы Eclipse . Считается, что GEF довольно сложный фреймворк для изучения, но при этом он имеет ряд преимуществ по сравнению с другими фреймворками. GEF состоит из следующих компонент:
- — используется для создания view-компонент
- Запросы/команды для редактирования модели
- Палитра инструментов, доступная пользователю
Преимущества
- Имеется графическое представление модели с возможностью редактирования
- Встроенные инструменты для выбора, создания, соединения и др.
- Model-View-Controller концепция
Концепция MVC
- Model: Модель данных должна быть реализована разработчиком, либо может уже существовать в программном обеспечении
-
Controller:
EditPart
выступает в качестве контроллера. Обычно используетсяGraphicalEditPart
. Для каждого элемента модели, включая коннекторы, должны быть созданы специфичные реализацииEditPart
. Слушатели (listeners) для модели должны быть определены с помощью функцииEditPart.activate()
и могут быть удалены с помощью функцииEditPart.deactivate()
. Если модель изменяется, то соответствующая ей компонента view также должна быть обновлена. Соответствующая модели компонента view создаётся с помощью функции.createFigure()
. -
View:
Для каждого элемента модели, включая коннекторы, должна быть реализована соответствующая компонента view. Для этого должен быть реализован интерфейс
IFigure
библиотеки .
EditPolicies
Общее поведение модели данных определяется политикой редактирования («Editpolicy»). Контроллер может предоставлять большое количество моделей поведения, путём сопоставления политики редактирования («Editpolicy») соответствующей роли («Role»). Политики редактирования могут добавляться и удаляться динамически.
GEF и EMF
GEF может быть непосредственно использован с любой моделью данных, в том числе созданных с помощью Eclipse Modeling Framework . предоставляет дополнительную инфраструктуру для диаграмм, которые используют или расширяют EMF модель лежащую в основе GMF.
Ссылки
- от 24 января 2009 на Wayback Machine (англ.) ссылка недоступна
- от 25 октября 2012 на Wayback Machine (англ.)
- от 20 мая 2011 на Wayback Machine (англ.)
- от 8 июля 2010 на Wayback Machine (англ.)

- 2021-03-04
- 1