Graphical Editing Framework

Graphical Editing Framework
Логотип программы Graphical Editing Framework
Тип фреймворк среды Eclipse для создания графического интерфейса
Разработчик Eclipse Foundation
Написана на Java
Операционная система Кроссплатформенное ПО
Последняя версия 3.5.2 (24 февраля 2010)
Сайт eclipse.org/gef/

Graphical Editing Framework (GEF) — фреймворк, специально разработанный для платформы Eclipse. Считается, что GEF довольно сложный фреймворк для изучения, но при этом он имеет ряд преимуществ по сравнению с другими фреймворками. GEF состоит из следующих компонент:

  • draw2d — используется для создания view-компонент
  • Запросы/команды для редактирования модели
  • Палитра инструментов, доступная пользователю

Преимущества

  • Имеется графическое представление модели с возможностью редактирования
  • Встроенные инструменты для выбора, создания, соединения и др.
  • Model-View-Controller концепция

Концепция MVC

  • Model: Модель данных должна быть реализована разработчиком, либо может уже существовать в программном обеспечении
  • Controller: EditPart выступает в качестве контроллера. Обычно используется GraphicalEditPart. Для каждого элемента модели, включая коннекторы, должны быть созданы специфичные реализации EditPart. Слушатели (listeners) для модели должны быть определены с помощью функции EditPart.activate() и могут быть удалены с помощью функции EditPart.deactivate(). Если модель изменяется, то соответствующая ей компонента view также должна быть обновлена. Соответствующая модели компонента view создаётся с помощью функции .createFigure().
  • View: Для каждого элемента модели, включая коннекторы, должна быть реализована соответствующая компонента view. Для этого должен быть реализован интерфейс IFigure библиотеки draw2d.

EditPolicies

Общее поведение модели данных определяется политикой редактирования («Editpolicy»). Контроллер может предоставлять большое количество моделей поведения, путём сопоставления политики редактирования («Editpolicy») соответствующей роли («Role»). Политики редактирования могут добавляться и удаляться динамически.

GEF и EMF

GEF может быть непосредственно использован с любой моделью данных, в том числе созданных с помощью Eclipse Modeling Framework. Graphical Modeling Framework предоставляет дополнительную инфраструктуру для диаграмм, которые используют или расширяют EMF модель лежащую в основе GMF.

Ссылки

  • Create an eclipse-based application using the Graphical Editing Framework Архивная копия от 24 января 2009 на Wayback Machine  (англ.) ссылка недоступна
  • Create an eclipse-based application using the Graphical Editing Framework (new version) Архивная копия от 25 октября 2012 на Wayback Machine  (англ.)
  • GEF on Eclipsepedia Архивная копия от 20 мая 2011 на Wayback Machine  (англ.)
  • A similar Graph Editing Framework at tigris.org Архивная копия от 8 июля 2010 на Wayback Machine  (англ.)
Перейти к шаблону «Eclipse Foundation»
Eclipse Foundation
Лицензия: Eclipse Public License