SKIP THE SHIPPING
Use code NOSHIP during checkout to save 40% on eligible eBooks, now through January 5. Shop now.
Register your product to gain access to bonus material or receive a coupon.
This EPUB will be accessible from your Account page after purchase.
This eBook requires no passwords or activation to read. We customize your eBook by discreetly watermarking it with your name, making it uniquely yours.
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 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
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.
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