GEF (MVC)

GEF (MVC) is interactive model-view-controler framework, which fosters the implementation of SWT-based tree
and Draw2d-based graphical editors for the Eclipse Workbench UI.

Overview

The GEF (MVC) plug-in adds editing behavior on top of SWT (Tree, TreeItem) or Draw2d and allows to create rich tree-based and graphical
editors for the Eclipse Workbench UI. The purpose of this framework is to:

Facilitate the display of any model graphically (using SWT Tree/TreeItem or Draw2d figures)

Handle all kind of interactions originating from mouse and keyboard events.

GEF is completely application neutral and provides the groundwork to build almost any editor application, including but not limited to:
activity diagrams, GUI builders, class diagram editors, state machines, and even WYSIWYG text editors.

Features

Tools like Selection, Creation, Connection and Marquee tools

A Palette for displaying those tools

Handles for resizing objects and bending connections

Two types of GEF Viewers (Graphical and Tree)

A Controller framework for mapping the business Model to a View

Plug-in policies for mapping interactions with the view to changes in the
model

Various implementations for showing feedback and adding selection handles

Various request types and tools or actions that send these requests to
the controllers