Skip to content

GEF (MCV)

Patrick Ziegler edited this page Apr 9, 2024 · 1 revision

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.

Logic_Example

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.
  • Provide a integration with the Eclipse Workbench UI (toolbar, outline, property view)

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
  • Undo/Redo support via Commands and a CommandStack