blob: 3e81f57e59020fa47cfc77305fe4778f090ec22a [file] [log] [blame]
<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>GEF Documentation</title>
<link rel="stylesheet" href="http://dev.eclipse.org/default_style.css" type="text/css">
</head>
<body>
<font class="indextop">documentation</font><br>
<font class="indexsub">technical information for GEF developers </font>
<p>This is the one-stop shop for documentation regarding Draw2d and GEF. There are
several articles as well as other links available here that explain how GEF and
Draw2d work. Apart from what&#39;s available here, the Javadocs for the Draw2d and GEF
projects and the <a href="../developer/faq.html#install_doc">integrated help</a>
in Eclipse are good sources of information. You can also check out the FAQs and
Gotchas on our <a href="../main.html">main page</a> for more help.</p>
<br>
<table cellpadding="3" width="100%" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111">
<tr>
<td align="LEFT" valign="TOP" colspan="2" bgcolor="#0070A0"><b>
<font face="Arial,Helvetica" color="#FFFFFF">Articles</font></b></td>
</tr>
<tr>
<td colspan="2">
<p>The following articles have been written by the GEF Team or other members
of the Eclipse community.&nbsp; Contributions are welcome and encouraged.</p>
<ul>
<li><b>Interested in writing an article?</b>&nbsp;&nbsp;&nbsp; See
<a href="http://www.eclipse.org/articles/contributing.html" target="_top">how to
contribute an article</a>.</li>
<li>Have a request or idea, see <a href="#future">Future Articles</a>.</li>
</ul>
</td>
</tr>
<tr>
<td align=RIGHT valign=TOP>
<img src="http://eclipse.org/articles/images/Adarrow.gif" border=0 height=16 width=16></td>
<td><font face="arial,helvetica,geneva" size=-1><b>
<a href="http://www.eclipse.org/articles/Article-GEF-EMF/gef-emf.html">
Using GEF with EMF</a></b> Chris Aniszczyk (IBM) June 8, 2005
<br>
The Graphical Editing Framework (GEF) provides a framework for
creating visual editors while being model agnostic. In most cases, people
bring their own model which tend to be based on Plain Old Java Objects
(POJOs). An alternative using POJOs is the Eclipse Modeling Framework
(EMF), which provides many features for manipulating models that aren't
found in POJOs. The purpose of this article is to build upon the shapes
example provided by GEF using the Eclipse Modeling Framework (EMF) and to
provide an introduction using EMF based models in GEF based editors.
</font></td>
</tr>
<tr>
<td align="RIGHT" valign="TOP">
<img src="http://eclipse.org/articles/images/Adarrow.gif" border="0" height="16" width="16"></td>
<td><font face="arial,helvetica,geneva" size="-1"><b>
<a href="http://eclipse.org/articles/Article-GEF-diagram-editor/shape.html">
A Shape Diagram Editor</a></b> Bo Majewski (Cisco) December 8, 2004<br>
Graphical Editing Framework (GEF) provides a powerful foundation for creating
editors for visual editing of arbitrary models. Its effectiveness lies in
a modular build, fitting use of design patterns, and decoupling of components
that comprise a full, working editor. To a newcomer, the sheer number and
variety of concepts and techniques present in GEF may feel intimidating.
However, once learned and correctly used, they help to develop highly scalable
and easy to maintain software. This article aims to provide a gentle yet
comprehensive introduction to GEF. It describes a shape diagram editor -
a small, fully functional test case of core concepts.</font></td>
</tr>
<tr>
<td align="RIGHT" valign="TOP">
<img src="http://eclipse.org/articles/images/Adarrow.gif" border="0" height="16" width="16"></td>
<td><font face="arial,helvetica,geneva" size="-1"><b>
<a href="http://eclipse.org/articles/Article-GEF-editor/gef-schema-editor.html">
Building a Database Schema Diagram Editor with GEF</a></b> Phil Zoio (Realsolve
Solutions) September 27, 2004<br>
GEF is a very powerful framework for visually creating and editing models.
With a small initial investment, even the relative Eclipse novice can be
quickly up and running, building applications with graphical editing capabilities.
To illustrate, this article uses a relational database schema diagram editor
with a deliberately simplified underlying model, but with enough bells and
whistles to show some of the interesting features of GEF at work.</font></td>
</tr>
<tr>
<td align="RIGHT" valign="TOP">
<img src="http://eclipse.org/articles/images/Adarrow.gif" border="0" height="16" width="16"></td>
<td><font face="arial,helvetica,geneva" size="-1"><b>
<a href="http://eclipse.org/articles/Article-GEF-Draw2d/GEF-Draw2d.html">
Display a UML Diagram using Draw2D</a></b> Daniel Lee (IBM) August 25, 2003<br>
The Graphical Editing Framework (GEF) ships with a painting and layout plug-in
called Draw2D. Draw2D provides figures and layout managers which form the
graphical layer of a GEF application. This article focuses only on the use
of Draw2D to render a simple UML class diagram. While Draw2D can be used
for standalone purposes, it is not an editing framework. Most applications
will use the GEF plug-in as the editing layer.</font></td>
</tr>
<tr>
<td align="RIGHT" valign="TOP">
<img src="http://eclipse.org/articles/images/Adarrow.gif" border="0" height="16" width="16"></td>
<td><font face="arial,helvetica,geneva" size="-1"><b>
<a href="http://eclipse.org/articles/Article-GEF-dnd/GEF-dnd.html">Using
Native Drag and Drop with GEF</a></b> Eric Bordeau (IBM) August 25, 2003<br>
Native drag and drop provides the ability to drag data from one GUI object
to another GUI object, which could potentially be in another application.
GEF allows access to the operating system&#39;s underlying drag and drop infrastructure
through SWT. This article will provide an in-depth look at GEF&#39;s drag and
drop functionality and show some simple examples of how to take advantage
of this API.</font></td>
</tr>
<tr>
<td align="RIGHT" valign="TOP">
<img src="http://eclipse.org/articles/images/Adarrow.gif" border="0" height="16" width="16"></td>
<td><font face="arial,helvetica,geneva" size="-1"><b>
<a href="http://www-106.ibm.com/developerworks/opensource/library/os-gef/" target="_top">
Create an Eclipse-based Application using the Graphical Editing Framework</a></b>
Randy Hudson (IBM) July 29, 2003<br>
This article describes the initial steps involved in creating an Eclipse-based
application using the Graphical Editing Framework (GEF). GEF has been used
to build a variety of applications for Eclipse, including state diagrams,
activity diagrams, class diagrams, GUI builders for AWT, Swing and SWT,
and process flow editors. Eclipse and GEF are both open source technologies.
They are also included in IBM&#39;s WebSphere Studio Workbench.</font></td>
</tr>
</table>
&nbsp;
<table border="0" cellpadding="3" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="table1">
<tr>
<td bgcolor="#0070A0"><font color="#FFFFFF"><b><a name="external0">Miscellaneous</a></b></font></td>
</tr>
<tr>
<td>Slides from <a href="http://www.eclipsecon.org/2005/">EclipseCon 2005</a>
<ul>
<li><a href="GEF%20Tutorial%202005.ppt">GEF In Depth</a> tutorial</li>
<li><a href="EclipseCon2005-Session.ppt">The Graphical Editing Framework</a> session</li>
</ul>
</td>
</tr>
</table>
&nbsp;
<table border="0" cellpadding="3" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%">
<tr>
<td colspan="3" bgcolor="#0070A0"><font color="#FFFFFF"><b>
<a name="future">Future Articles</a></b></font></td>
</tr>
<tr>
<td>&nbsp;</td>
<td><b>Votes</b></td>
<td><b>Abstract</b></td>
</tr>
<tr>
<td>
<img src="http://eclipse.org/articles/images/Adarrow.gif" border="0" width="16" height="16"></td>
<td>2</td>
<td><u>Coordinate Systems in Draw2D</u> &#8211; Randy Hudson (IBM)</td>
</tr>
<tr>
<td>
<img src="http://eclipse.org/articles/images/Adarrow.gif" border="0" width="16" height="16"></td>
<td></td>
<td><u>Customizing the GEF Palette</u> &#8211; Pratik Shah (IBM)</td>
</tr>
<tr>
<td>
<img src="http://eclipse.org/articles/images/Adarrow.gif" border="0" width="16" height="16"></td>
<td></td>
<td><u>Accessibility in GEF</u> &#8211; Pratik Shah (IBM)</td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td><br>
Submit additional ideas to the mailing list.</td>
</tr>
</table>
<br>
&nbsp;
<table border="0" cellpadding="3" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%">
<tr>
<td colspan="3" bgcolor="#0070A0"><font color="#FFFFFF"><b>
<a name="external">External Links</a></b></font></td>
</tr>
<tr>
<td colspan="3">The following are links to some external sites that provide
more information about GEF. The GEF team does not verify all of the postings
on these sites. Nevertheless, they are usually good sources of information.
To report any other links that can go here, post a note on the GEF newsgroup.</td>
</tr>
<tr>
<td>&nbsp;</td>
<td><b>Link</b></td>
<td><b>Information</b></td>
</tr>
<tr>
<td>
<img src="http://eclipse.org/articles/images/Adarrow.gif" border="0" width="16" height="16"></td>
<td>
<a href="http://publib-b.boulder.ibm.com/Redbooks.nsf/RedbookAbstracts/sg246302.html?OpenDocument">
IBM Redbook</a></td>
<td>IBM&#39;s Redbook provides detailed information and walks you through creating
a simple GEF-based plug-in.</td>
</tr>
<tr>
<td>
<img src="http://eclipse.org/articles/images/Adarrow.gif" border="0" width="16" height="16"></td>
<td><a href="http://eclipsewiki.editme.com/GEF">Eclipse Wiki</a></td>
<td>Lots of good information here. In particular, the
<a href="http://eclipsewiki.editme.com/GefDescription">GEF description</a>.</td>
</tr>
<tr>
<td>
<img src="http://eclipse.org/articles/images/Adarrow.gif" border="0" width="16" height="16"></td>
<td><a href="http://www.manning.com/scarpino">SWT/JFace In Action</a></td>
<td>A book that can provide more information about Draw2d/GEF.</td>
</tr>
<tr>
<td>
<img src="http://eclipse.org/articles/images/Adarrow.gif" border="0" width="16" height="16"></td>
<td><a href="http://www13.plala.or.jp/observe/index.html#draw2d">Observe
Eclipse</a></td>
<td>This site has several Draw2d and GEF tutorials in Japanese.</td>
</tr>
<tr>
<td>
<img src="http://eclipse.org/articles/images/Adarrow.gif" border="0" width="16" height="16"></td>
<td><a href="http://www.eclipseteam.de/wiki/bin/view/Public/EclipseGef">
eclipseteam</a></td>
<td>Another site, this time in German.</td>
</tr>
</table>
<p>&nbsp;</p>
</body>
</html>