Interested Article - Graphical Editing Framework

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.

Ссылки

Источник —

Same as Graphical Editing Framework