Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

The Next Generation Eclipse Graphical Editing Framework

Talk at EclipseConverge 2017, San Jose (CA), USA

  • Be the first to comment

The Next Generation Eclipse Graphical Editing Framework

  1. 1. Alexander Nyßen, itemis AG
 Project Lead Image courtesy of Stefan Rimaila/ flickr The next generation Eclipse Graphical Editing Framework
  2. 2. GEF 3.x • Provides framework components for Eclipse-integrated graphical editors and views • Based on SWT as underlying rendering technology • Initial contribution by IBM in 2002 and Chisel Group in 2007 • In pure maintenance mode, but remains on the ‚train‘ Image courtesy of Hamad Aziz/ flickr
  3. 3. Draw2d
  4. 4. Draw2d & GEF (MVC)
  5. 5. Zest
  6. 6. GEF4 • Provides end-user tools and framework components for graphical rich-client Java applications, Eclipse- integrated and standalone • Based on JavaFX as underlying rendering technology
 • Graduation release (1.0.0) with Neon • Bugfix release (1.1.0) with Neon.1 Image courtesy of NASA
  7. 7. The next generation has (finally) taken over… GEF „Generations“ GEF4 GEF GEF-Legacy GEF 0.1.0/0.2.0 1.0.0/1.1.0 5.0.03.10.0/3.10.1 3.11.0 3.10.0/3.10.1
 (Mars) 4.0.0/4.1.0
 (Neon) 5.0.0
 (Oxygen) ? [Draw2d, GEF (MVC), Zest] [Common, Geometry, FX, MVC, 
 Graph, Layout, Zest, DOT, Cloudio] Project Releases Image courtesy of zeitfaenger.at / flickr
  8. 8. https://github.com/eclipse/gef https://github.com/eclipse/gef-legacy GEF@GitHub GEF-Legacy@GitHub GEF „Generations“
  9. 9. Cloudio GEF Components Image courtesy of Michael Stern / flickr DOT Common Geometry FX MVC Graph Layout Zest • GEF provides nine loosely coupled components. • Cloudio and DOT provide end-user features • The other components form two basic framework stacks: • Common Geometry FX MVC • Graph Layout Zest
  10. 10. Cloudio -TagCloudView
  11. 11. DOT - Editor & GraphView AbstractBehavior
  12. 12. Neon • Disclosure of preliminary API • Validation for style, splineType, point, arrowType, shape • Rendering of decorations, splines, and labels • Native layout integration DOTCloudio Oxygen • Further editing and rendering capabilities ✓ • Support for HTML-like labels and subgraphs ✓ • Bundling of Graphviz executable (CQ 11140) ✗
  13. 13. Undeployed Examples
  14. 14. GEF - Components UI ≃ Eclipse UI FX ≃ JavaFX Geometry FX.JFace Layout MVC.FX.UI Zest.FX MVC.FX FX Graph Zest.FX.UI DOT Common Cloudio.UI FX.SWT Zest.FX.JFace DOT.UI Geometry.Convert.FX Geometry.Convert.SWT
  15. 15. DEMO - MVC Logo Example
  16. 16. NeonOxygen • Connection Decoration Clipping • Orthogonal Router & Orthogonal Bending • Palette Support Common Geometry FX MVC • Major API revision (MVC & MVC.FX) ✓ • Viewport actions (scroll/zoom) ✓ • Snap-To-Geometry Support ✓
  17. 17. GEF - Components UI ≃ Eclipse UI FX ≃ JavaFX Geometry FX.JFace Layout MVC.FX.UI Zest.FX MVC.FX FX Graph Zest.FX.UI DOT Common Cloudio.UI FX.SWT Zest.FX.JFace DOT.UI Geometry.Convert.FX Geometry.Convert.SWT
  18. 18. DEMO - Zest Graph Example
  19. 19. NeonOxygen • Enhanced builder API • Layout now Graph-based (I/O model) • JFace-API cleanups Graph Layout Zest • API-Cleanup ✓ • Live vs. Background Layout ✗
  20. 20. • FXCanvasEx provides workarounds for the following issues: • JDK-8143596: Forward touch gestures to FXCanvas embedded scene. • JDK-8161282: FXCanvas does not forward horizontal mouse scroll events to the embedded scene. • JDK-8088147: Image cursors not supported. • JDK-8159227: KeyEvent.doit should be forwarded to KeyEvent.consumed(). • JDK-8161587: FXCanvas does not update SWT display. • JDK-8088862: Provide possibility to traverse focus out of FX scene. • Fixes for those requiring access to JDK-internals have been contributed to OpenJFX 9 directly. • FXCanvasEx can now transparently be used for Java 8 and 9. readiness
  21. 21. https://info.itemis.com/en/gef/tutorials/
  22. 22. Evaluate the Sessions Sign in and vote at eclipseconverge.org +1-1 0

    Be the first to comment

    Login to see the comments

  • ssusera602fd

    Feb. 21, 2020

Talk at EclipseConverge 2017, San Jose (CA), USA

Views

Total views

1,235

On Slideshare

0

From embeds

0

Number of embeds

3

Actions

Downloads

9

Shares

0

Comments

0

Likes

1

×