Graphical Editing Framework
![]() | Страницу в данный момент активно редактирует участник [[user:Alex.ryazantsev|Alex.ryazantsev]] ([[user talk:Alex.ryazantsev|обс.]] · [[special:Contributions/Alex.ryazantsev|вклад]]). |
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.