SlideShare ist ein Scribd-Unternehmen logo
1 von 30
Downloaden Sie, um offline zu lesen
Past, Present & Future
Alexander Nyßen
itemis AG
Past
It all began...
... at IBM, of course (etools).
Image: winnond / FreeDigitalPhotos.net
It‘s Birthday Time!
Draw2d & GEF (MVC)
• Initial contribution of Draw2d & GEF (MVC) by IBM in 2002.
GEF (MVC) - an interactive model-view-controller
framework, which fosters the implementation of SWT-
based tree editors and Draw2d-based graphical
editors (and views) for the Eclipse UI Workbench.
Draw2d - 2D rendering framework; lightweight
extension to SWT. May be used stand-alone or as
visualization technology for GEF (MVC).
Draw2d & GEF (MVC)
GEF 3.0 (2004)
• Most of the features that make up GEF where introduced:
• Rulers & Guides, Grid
• Snap-to-Geometry, Centered Resize, Match Size ,
Constraint Move and Resize, Cloning, Panning
• PaletteView, Flyout Palette, Palette Stacks
• Shortest Path Connection Routing
• Since then, the APIs of Draw2d and GEF (MVC) have stayed
backwards compatible.
But that's not all ...
Image: renjith krishnan / FreeDigitalPhotos.net
Zest
• Initial contribution of Zest by University of Victoria and IBM
Centre for Advanced Studies as part of Mylyn in 2005.
• Joined in on GEF as third component with the 3.4 release
in 2007.
Zest - a visualization toolkit based on SWT and
Draw2d to support the implementation of views with
automatic or semi-automatic layout for the Eclipse
Workbench UI.
Zest
GEF 3.4 / Zest 1.0 (2008)
• Modularization into two
components:
• Draw2d
• GEF (MVC)
• Integration of Zest as third
component.
• GEF releng moved to common
modeling build tools.
• Redesigned UI for Palette (GEF)
GEF 3.5 / Zest 1.1 (2009)
• Support for SWT line style attributes (Draw2d)
• Advanced Graphics support (Draw2d)
• Curved Connections (Zest)
• Nested content provider (Zest)
GEF 3.6 / Zest 1.2 (2010)
• Improved clipping via IClippingStrategy (Draw2d)
• Scrollable Feedback support (GEF)
GEF 3.7 / Zest 1.3 (2011)
• Refactoring of Draw2d geometry classes (inconsistencies)
• Refactoring of FlowLayout and ToolbarLayout (introduced
OrderedLayout)
• Refactoring of LayoutEditPolicies
• Constraint Size-On-Drop Creation
• Additional Marquee Selection strategies
• Refactoring of UndoablePropertySheetPage (undo/redo
support while editor is inactive; opened for subclassing)
Present
GEF - Facts & Figures
• 10 committers (5 currently active, 2 new in 2012)
• Alex Boyko
• Anthony Hunter (Project Lead)
• Alexander Nyßen
• Cherie Revells
• Fabian Steeg
• 3 Git repositories (gef, gef4, zest)
• 4 Hudson jobs (gef-nightly-tycho, gef4-nightly-tycho, gef-zest-nightly, gef-zest-integration)
• Ian Bull
• Marc Gobeil
• Nick Boldt
• Stephan Schwiebert
• Zoltan Ujhelyi
GEF 3.8 / Zest 1.4 (2012)
• Migration of source code repository from CVS to Git
• Migration of release engineering infrastructure from common
modeling build to Tycho/Hudson:
• gef-nightly-tycho build on hudson.eclipse.org
• nightly builds as well as weekly integration builds are
now publicly available
• Bug fixes, clean-ups, no major new-and-noteworthy
features
GEF 3.8 / Zest 1.4
• Currently we have around ~400 open bugs/CRs.
• Our quality of processing is improving...
• A lot of issues will not be resolvable without breaking API.
Metric calculated according to http://bugzillametrics.sourceforge.net/Process_Quality_Eclipse.pdf
• How long does it take to fix a new CR?
• How often has a fixed CR to be reopened?
• How friction-less is the processing of CRs?
0"
0,5"
1"
1,5"
2"
2,5"
3"
3,5"
2005" 2006" 2007" 2008" 2009" 2010" 2011" 2012*"
D.#Quality#of#Processing#the#CRs#
GEF"
Pla3orm"
Zest 2 (since 2010)
• A provisional Zest 2 component was initiated in 2010, to
develop the next generation Zest API.
• Development takes place in parallel to maintenance of
Zest 1.x in its own Git repository.
• API is regarded to be provisional up to the final graduation.
• Results are not provided as part of GEF 3.x / Zest 1.x but
published via Eclipse Marketplace.
Zest 2 - New Features
• Dot 4 Zest
• Cloudio
GEF4 (since 2011)
• GEF4 was initiated - according to Zest 2 - to develop the next
generation API for Draw2d and GEF (MVC).
• Development is to take place in parallel to maintenance of
Draw2d / GEF (MVC) 3.x in its own repository.
• Results are not provided provided as part of GEF 3.x / Zest 1.x but
on own update-sites.
• Plan:
• Create new double-precision Geometry API before 3.8.
• Migrate the Draw2d and GEF (MVC) 3.8 code base
afterwards.
GEF4 Geometry*
• No low and high precision, just a single double-precision API
(with built-in imprecision for comparisons).
• Different geometric abstractions for different purposes:
• Euclidean (Vector, Straight)
• Projective+ (Vector3D+, Straight3D+)
• Planar+ (IGeometry+, ICurve, IShape, IPolyCurve, IPolyShape)
+) If you have a good idea how to alternatively name these abstractions, please let me know...*) CQ 6363 incorporated
GEF4 Planar Geometry*
*) CQ 6363 incorporated
GEF4 Geometry - Examples*
*) CQ 6363 incorporated
Future
GEF4 + Zest 2 = GEF4
Unification of both approaches after Juno!
GEF4 - A Unified Approach
• A unified approach with a shared code base and a
common namespace (org.eclipse.gef4) for all plug-ins.
• Advantages:
• Clear distinction between GEF proper as the production
component and GEF4 as the provisional one
• Chance to not only refactor GEF components but the
componentization itself, which is only "historically" justified.
SomeTopics for GEF4
• Re-thinking current componentization
• Support for the E4 application model
• Support for rotation and other transformations
• Support for B-Spline-connections
• Better integrability of native SWT widgets
• Multi-touch gestures support
• Revision of the command framework
• Revision of connection handling (clipping container)
• Various renamings and restructurings on the detail level...
Just one more thing...
• It's an often requested feature to use GEF in the web.
• This is out of scope for the GEF project itself, while GEF4
might do what is possible to better enable it.
• Ports based on GEF 3.x / Zest 1.x:
• RAP Incubator - GEF-Port
• Architexa: http://www.codemaps.org/e/Eclipse_GEF
• GEFGWT (GWT): http://gefgwt.org/
• There is an active discussion on gef-dev mailing list. Participate!
ThankYou! Questions?

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (13)

Building scalable modular app with Angular2 concept
Building scalable modular app with Angular2 conceptBuilding scalable modular app with Angular2 concept
Building scalable modular app with Angular2 concept
 
Angular 4 - quick view
Angular 4 - quick viewAngular 4 - quick view
Angular 4 - quick view
 
Angular2
Angular2Angular2
Angular2
 
Angular 2 - Core Concepts
Angular 2 - Core ConceptsAngular 2 - Core Concepts
Angular 2 - Core Concepts
 
Angular 2: core concepts
Angular 2: core conceptsAngular 2: core concepts
Angular 2: core concepts
 
Angular 2
Angular 2Angular 2
Angular 2
 
Angular 9
Angular 9 Angular 9
Angular 9
 
Quick introduction to Angular 4 for AngularJS 1.5 developers
Quick introduction to Angular 4 for AngularJS 1.5 developersQuick introduction to Angular 4 for AngularJS 1.5 developers
Quick introduction to Angular 4 for AngularJS 1.5 developers
 
Angular2 with type script
Angular2 with type scriptAngular2 with type script
Angular2 with type script
 
Angular Ivy- An Overview
Angular Ivy- An OverviewAngular Ivy- An Overview
Angular Ivy- An Overview
 
Tech Webinar: Angular 2, Introduction to a new framework
Tech Webinar: Angular 2, Introduction to a new frameworkTech Webinar: Angular 2, Introduction to a new framework
Tech Webinar: Angular 2, Introduction to a new framework
 
Computer Viewing
Computer ViewingComputer Viewing
Computer Viewing
 
Angular 2
Angular 2Angular 2
Angular 2
 

Ähnlich wie GEF - Past, Present, and Future

Gustavo Garnica: Evolución de la Plataforma Java y lo que Significa para Ti
Gustavo Garnica: Evolución de la Plataforma Java y lo que Significa para TiGustavo Garnica: Evolución de la Plataforma Java y lo que Significa para Ti
Gustavo Garnica: Evolución de la Plataforma Java y lo que Significa para Ti
Software Guru
 

Ähnlich wie GEF - Past, Present, and Future (20)

GEF Past, present, future
GEF Past, present, futureGEF Past, present, future
GEF Past, present, future
 
State of GeoServer 2.10
State of GeoServer 2.10State of GeoServer 2.10
State of GeoServer 2.10
 
dojox.gfx : the foundation for your crossbrowser advanced visualization.
dojox.gfx : the foundation for your crossbrowser advanced visualization.dojox.gfx : the foundation for your crossbrowser advanced visualization.
dojox.gfx : the foundation for your crossbrowser advanced visualization.
 
OpenGL 4.5 Update for NVIDIA GPUs
OpenGL 4.5 Update for NVIDIA GPUsOpenGL 4.5 Update for NVIDIA GPUs
OpenGL 4.5 Update for NVIDIA GPUs
 
Gustavo Garnica: Evolución de la Plataforma Java y lo que Significa para Ti
Gustavo Garnica: Evolución de la Plataforma Java y lo que Significa para TiGustavo Garnica: Evolución de la Plataforma Java y lo que Significa para Ti
Gustavo Garnica: Evolución de la Plataforma Java y lo que Significa para Ti
 
State of GeoServer
State of GeoServerState of GeoServer
State of GeoServer
 
Ajax Applications with JSF 2 and New RichFaces 4 - CONFESS 2011
Ajax Applications with JSF 2 and New RichFaces 4 - CONFESS 2011Ajax Applications with JSF 2 and New RichFaces 4 - CONFESS 2011
Ajax Applications with JSF 2 and New RichFaces 4 - CONFESS 2011
 
Introduction of openGL
Introduction  of openGLIntroduction  of openGL
Introduction of openGL
 
Short Introduction of software engineering for bioinformatics
Short Introduction of software engineering for bioinformatics Short Introduction of software engineering for bioinformatics
Short Introduction of software engineering for bioinformatics
 
State of JTS 2018
State of JTS 2018State of JTS 2018
State of JTS 2018
 
NLOUG 2018 - Future of JSF and ADF
NLOUG 2018 - Future of JSF and ADFNLOUG 2018 - Future of JSF and ADF
NLOUG 2018 - Future of JSF and ADF
 
Angular 2 overview
Angular 2 overviewAngular 2 overview
Angular 2 overview
 
Advanced Graphics Workshop - GFX2011
Advanced Graphics Workshop - GFX2011Advanced Graphics Workshop - GFX2011
Advanced Graphics Workshop - GFX2011
 
Ajax Applications with JSF2 and New RichFaces 4 at JAX 2011
Ajax Applications with JSF2 and New RichFaces 4 at JAX 2011Ajax Applications with JSF2 and New RichFaces 4 at JAX 2011
Ajax Applications with JSF2 and New RichFaces 4 at JAX 2011
 
Build 2017 - Whats new for Xamarin Devs
Build 2017 - Whats new for Xamarin DevsBuild 2017 - Whats new for Xamarin Devs
Build 2017 - Whats new for Xamarin Devs
 
State of GeoServer 2015
State of GeoServer 2015State of GeoServer 2015
State of GeoServer 2015
 
Development of web apps based on JSF (TU Vienna)
Development of web apps based on JSF (TU Vienna)Development of web apps based on JSF (TU Vienna)
Development of web apps based on JSF (TU Vienna)
 
OpenDaylight Developer Experience 2.0
 OpenDaylight Developer Experience 2.0 OpenDaylight Developer Experience 2.0
OpenDaylight Developer Experience 2.0
 
CTS2 Development Framework
CTS2 Development FrameworkCTS2 Development Framework
CTS2 Development Framework
 
State of JTS 2017
State of JTS 2017State of JTS 2017
State of JTS 2017
 

Kürzlich hochgeladen

%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
masabamasaba
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
VictoriaMetrics
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
masabamasaba
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Medical / Health Care (+971588192166) Mifepristone and Misoprostol tablets 200mg
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
masabamasaba
 

Kürzlich hochgeladen (20)

WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Harnessing ChatGPT - Elevating Productivity in Today's Agile Environment
Harnessing ChatGPT  - Elevating Productivity in Today's Agile EnvironmentHarnessing ChatGPT  - Elevating Productivity in Today's Agile Environment
Harnessing ChatGPT - Elevating Productivity in Today's Agile Environment
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 

GEF - Past, Present, and Future

  • 1. Past, Present & Future Alexander Nyßen itemis AG
  • 3. It all began... ... at IBM, of course (etools). Image: winnond / FreeDigitalPhotos.net
  • 5. Draw2d & GEF (MVC) • Initial contribution of Draw2d & GEF (MVC) by IBM in 2002. GEF (MVC) - an interactive model-view-controller framework, which fosters the implementation of SWT- based tree editors and Draw2d-based graphical editors (and views) for the Eclipse UI Workbench. Draw2d - 2D rendering framework; lightweight extension to SWT. May be used stand-alone or as visualization technology for GEF (MVC).
  • 6. Draw2d & GEF (MVC)
  • 7. GEF 3.0 (2004) • Most of the features that make up GEF where introduced: • Rulers & Guides, Grid • Snap-to-Geometry, Centered Resize, Match Size , Constraint Move and Resize, Cloning, Panning • PaletteView, Flyout Palette, Palette Stacks • Shortest Path Connection Routing • Since then, the APIs of Draw2d and GEF (MVC) have stayed backwards compatible.
  • 8. But that's not all ... Image: renjith krishnan / FreeDigitalPhotos.net
  • 9. Zest • Initial contribution of Zest by University of Victoria and IBM Centre for Advanced Studies as part of Mylyn in 2005. • Joined in on GEF as third component with the 3.4 release in 2007. Zest - a visualization toolkit based on SWT and Draw2d to support the implementation of views with automatic or semi-automatic layout for the Eclipse Workbench UI.
  • 10. Zest
  • 11. GEF 3.4 / Zest 1.0 (2008) • Modularization into two components: • Draw2d • GEF (MVC) • Integration of Zest as third component. • GEF releng moved to common modeling build tools. • Redesigned UI for Palette (GEF)
  • 12. GEF 3.5 / Zest 1.1 (2009) • Support for SWT line style attributes (Draw2d) • Advanced Graphics support (Draw2d) • Curved Connections (Zest) • Nested content provider (Zest)
  • 13. GEF 3.6 / Zest 1.2 (2010) • Improved clipping via IClippingStrategy (Draw2d) • Scrollable Feedback support (GEF)
  • 14. GEF 3.7 / Zest 1.3 (2011) • Refactoring of Draw2d geometry classes (inconsistencies) • Refactoring of FlowLayout and ToolbarLayout (introduced OrderedLayout) • Refactoring of LayoutEditPolicies • Constraint Size-On-Drop Creation • Additional Marquee Selection strategies • Refactoring of UndoablePropertySheetPage (undo/redo support while editor is inactive; opened for subclassing)
  • 16. GEF - Facts & Figures • 10 committers (5 currently active, 2 new in 2012) • Alex Boyko • Anthony Hunter (Project Lead) • Alexander Nyßen • Cherie Revells • Fabian Steeg • 3 Git repositories (gef, gef4, zest) • 4 Hudson jobs (gef-nightly-tycho, gef4-nightly-tycho, gef-zest-nightly, gef-zest-integration) • Ian Bull • Marc Gobeil • Nick Boldt • Stephan Schwiebert • Zoltan Ujhelyi
  • 17. GEF 3.8 / Zest 1.4 (2012) • Migration of source code repository from CVS to Git • Migration of release engineering infrastructure from common modeling build to Tycho/Hudson: • gef-nightly-tycho build on hudson.eclipse.org • nightly builds as well as weekly integration builds are now publicly available • Bug fixes, clean-ups, no major new-and-noteworthy features
  • 18. GEF 3.8 / Zest 1.4 • Currently we have around ~400 open bugs/CRs. • Our quality of processing is improving... • A lot of issues will not be resolvable without breaking API. Metric calculated according to http://bugzillametrics.sourceforge.net/Process_Quality_Eclipse.pdf • How long does it take to fix a new CR? • How often has a fixed CR to be reopened? • How friction-less is the processing of CRs? 0" 0,5" 1" 1,5" 2" 2,5" 3" 3,5" 2005" 2006" 2007" 2008" 2009" 2010" 2011" 2012*" D.#Quality#of#Processing#the#CRs# GEF" Pla3orm"
  • 19. Zest 2 (since 2010) • A provisional Zest 2 component was initiated in 2010, to develop the next generation Zest API. • Development takes place in parallel to maintenance of Zest 1.x in its own Git repository. • API is regarded to be provisional up to the final graduation. • Results are not provided as part of GEF 3.x / Zest 1.x but published via Eclipse Marketplace.
  • 20. Zest 2 - New Features • Dot 4 Zest • Cloudio
  • 21. GEF4 (since 2011) • GEF4 was initiated - according to Zest 2 - to develop the next generation API for Draw2d and GEF (MVC). • Development is to take place in parallel to maintenance of Draw2d / GEF (MVC) 3.x in its own repository. • Results are not provided provided as part of GEF 3.x / Zest 1.x but on own update-sites. • Plan: • Create new double-precision Geometry API before 3.8. • Migrate the Draw2d and GEF (MVC) 3.8 code base afterwards.
  • 22. GEF4 Geometry* • No low and high precision, just a single double-precision API (with built-in imprecision for comparisons). • Different geometric abstractions for different purposes: • Euclidean (Vector, Straight) • Projective+ (Vector3D+, Straight3D+) • Planar+ (IGeometry+, ICurve, IShape, IPolyCurve, IPolyShape) +) If you have a good idea how to alternatively name these abstractions, please let me know...*) CQ 6363 incorporated
  • 23. GEF4 Planar Geometry* *) CQ 6363 incorporated
  • 24. GEF4 Geometry - Examples* *) CQ 6363 incorporated
  • 26. GEF4 + Zest 2 = GEF4 Unification of both approaches after Juno!
  • 27. GEF4 - A Unified Approach • A unified approach with a shared code base and a common namespace (org.eclipse.gef4) for all plug-ins. • Advantages: • Clear distinction between GEF proper as the production component and GEF4 as the provisional one • Chance to not only refactor GEF components but the componentization itself, which is only "historically" justified.
  • 28. SomeTopics for GEF4 • Re-thinking current componentization • Support for the E4 application model • Support for rotation and other transformations • Support for B-Spline-connections • Better integrability of native SWT widgets • Multi-touch gestures support • Revision of the command framework • Revision of connection handling (clipping container) • Various renamings and restructurings on the detail level...
  • 29. Just one more thing... • It's an often requested feature to use GEF in the web. • This is out of scope for the GEF project itself, while GEF4 might do what is possible to better enable it. • Ports based on GEF 3.x / Zest 1.x: • RAP Incubator - GEF-Port • Architexa: http://www.codemaps.org/e/Eclipse_GEF • GEFGWT (GWT): http://gefgwt.org/ • There is an active discussion on gef-dev mailing list. Participate!