Product Cover Image

Eclipse Graphical Editing Framework (GEF), The

By Dan Rubel, Jaime Wren, Eric Clayberg

Published by Addison-Wesley Professional

Published Date: Aug 7, 2011

More Product Info

Description

This is the Safari online edition of the printed book.

As Eclipse-based applications become increasingly popular, users are demanding more sophisticated graphical interfaces. When standard widgets aren’t enough, graphics built with GEF are often the best solution. The Eclipse Graphical Editing Framework (GEF) covers everything Java tool developers need to create tomorrow’s richest, most visual interfaces.

 

This practical, hands-on guide begins by introducing GEF, Draw2D, and Zest, and demonstrating what can be achieved with them. Next, the authors walk through building a simple Draw2D example, helping new GEF developers understand the core capabilities available to them. Building on this foundation, they progressively introduce more of the Draw2D frameworks, including Figures, Layout Managers, Connections, Layers, and Viewports. They present a chapter-length graph visualization project based on Zest, followed by detailed coverage of non-Draw2D portions of the GEF.

 

The book’s final section walks step-by-step through developing a complete GEF editor. Each chapter focuses on a different aspect of the problem, and includes challenges, solutions, diagrams, screenshots, cookbook-style code examples, and more.

 

This book is organized to help developers solve immediate problems quickly, while also gaining in-depth knowledge for building advanced solutions. Relevant APIs are included in several chapters, making this an even more useful standalone reference.

 

This book

  • Introduces GEF application components such as shapes, flow, logic, and text
  • Explains Draw2D architecture, drawing features, and event processing
  • Shows how to create and customize figures, use painting and borders, and work with each Draw2D Layout Manager
  • Thoroughly explains GEF models, including domain and presentation information, populating diagrams, and more
  • Shows how to use Zest’s content providers, filters, and layout algorithms
  • Covers EditParts, EditPolicies, Tools, Commands, Actions, and much more

 

The Eclipse Graphical Editing Framework (GEF) is the best resource for all Java tool developers who want to construct sophisticated graphical editing products that integrate with Eclipse, for experienced Eclipse users who want to start creating their own graphical tools, and for anyone who wants to see what makes GEF tick.

 

Table of Contents

Foreword by Mike Milinkovich                    xix

Preface                        xxi


Chapter 1: What Is GEF?                 1

1.1 GEF Overview   1

1.2 GEF Example Applications   2

1.3 Summary   6

 

Chapter 2: A Simple Draw2D Example         7

2.1 Draw2D Installation   7

2.2 Draw2D Project   8

2.3 Draw2D Application   9

2.4 Draw2D View   15

2.5 Draw2D Events   17

2.6 Book Samples   20

2.7 Summary   20

 

Chapter 3: Draw2D Infrastructure          21

3.1 Architecture   21

3.2 Drawing   23

3.3 Processing Events   24

3.4 Summary   25

 

Chapter 4: Figures           27

4.1 IFigure   27

4.2 Common Figures   29

4.3 Custom Figures   33

4.4 Painting   37

4.5 Borders   42

4.6 Summary   53

 

Chapter 5: Layout Managers          55

5.1 List Constraints   55

5.2 Minimum, Maximum, and Preferred Size   56

5.3 Common Layout Managers   57

5.4 Using Layout Managers   63

5.5 Summary   67

 

Chapter 6: Connections           69

6.1 Common Anchors   70

6.2 Custom Anchors   72

6.3 Decorations   76

6.4 Routing Connections   80

6.5 Connection Labels   86

6.6 Summary   90

 

Chapter 7: Layers and Viewports          91

7.1 Layers   91

7.2 Scrolling   96

7.3 Coordinates   101

7.4 Scaling   104

7.5 Summary   112

 

Chapter 8: GEF Models         113

8.1 Genealogy Model   113

8.2 Populating the Diagram   116

8.3 Storing the Diagram   126

8.4 Summary   128

 

Chapter 9: Zest          129

9.1 Setup   129

9.2 GraphViewer   131

9.3 Content Provider   132

9.4 Presentation   137

9.5 Nested Content   156

9.6 Filters   157

9.7 Layout Algorithms   160

9.8 Summary   173

 

Chapter 10: GEF Plug-in Overview         175

10.1 MVC Architecture   176

10.2 EditPartViewer   178

10.3 Tools, Actions, Policies, Requests, and Commands   180

10.4 Summary   183

 

Chapter 11: GEF View          185

11.1 Setup   185

11.2 GEF Viewer   186

11.4 Connections   193

11.5 Summary   200

 

Chapter 12: GEF Editor         201

12.1 Setup   201

12.2 GenealogyGraphEditor   201

12.3 Selection   207

12.4 Summary   218

 

Chapter 13: Commands and Tools         219

13.1 Listening for Model Changes   219

13.2 Commands   226

13.3 EditPolicies   233

13.4 Global Edit Menu Actions   248

13.5 Palette and Tools   249

13.6 Summary   253

 

Index         255

Purchase Info

ISBN-10: 0-321-71851-8

ISBN-13: 978-0-321-71851-8

Format: Safari PTG

This publication is not currently for sale.