SlideShare a Scribd company logo
e4’s Toolkit Model – a new view on GUI Hallvard Trætteberg, Associate Professor, Dept. of Computer and Information Sciences Norwegian Univ. of Science and Technology Hallvard Trætteberg, e4’s Toolkit Model
Agenda Motivation Tookit Model model architecture Eclipse editors and views
Motivation Hand-coding GUIs is hard GUI frameworks can be complex Conceptual gap between concrete GUI and the GUI code What works? GUI builders are very useful for part of the design task HTML+DOM+Javascript has caught on Model-based techniques are maturing and more wide-spread Can a combination of these be used for e4?
TM – model and architecture Ecore-based model of standard GUI elements hierarchy of widgets simple elements – label, text field, buttons, list, ... composites – generic, group box, tab folder, ... SWT-specific layout coming soon: table and tree widgets styling in the model and with CSS 2d graphics EMF API & tools are used to manage TM instances Java code with static and reflective API generic editors and model-based techniques ATL, Teneo, CDO ...
TM – model and architecture Rendering for a specific toolkit is provided separately model is designed to be portable (SWT, Swing, Ajax, ...) the model is “live”: concrete widgets are updated when model changes TM model instance Toolkit-specific renderer Concrete toolkit widgets model changes propagate to widgets widget events propagate to model
Javascript support Wrappers for Ecore objects make them seem like native Javascript objects Extra behavior may be added annotations to Ecore operations separate files contributing methods to EClasses EObjects may have their own methods on<Property>Change methods used for event handling Standard Ecore classes has already been extended create new objects from EClasses navigate in EObject hierarchies by index of name functional API for searching, mapping and filtering
Editors and views Tree-based editor with preview “ poor man’s” GUI builder can load EMF application data supports scripting GUI gradually becomes functional Palette view – drag’n drop model fragments Script editor – edit Javascript for model element Preview pane – previews active editor content Script scrapbook – try out snippets on live model
Typical workflow Create GUI sketch with appropriate tool wireframesketcher is no-nonsense and EMF-based Create TM instance drag’n drop model fragments from palette edit properties and add layout Create sample data create Ecore model of domain data create example data for data model Script model populate with example data react to user events
Tree-based editor with preview
Palette view – drag’n drop model fragments
Script editing – edit and try

More Related Content

PPTX
Apple Machine Learning
PPTX
Introduction to ML.NET
PPTX
Machine learning and azure ml studio gabc
PDF
Norman Sasono - Incorporating AI/ML into Your Application Architecture
PPT
Bracebridge’s Convergence: The 4th Pillar
PPT
Municipal Cultural Planning Engaging the Private Sector
PPT
The Culture of Welcoming: Attracting and Retaining Creative Class
PPT
Collaborative Geomatics for Social Innovation and Sustainability
Apple Machine Learning
Introduction to ML.NET
Machine learning and azure ml studio gabc
Norman Sasono - Incorporating AI/ML into Your Application Architecture
Bracebridge’s Convergence: The 4th Pillar
Municipal Cultural Planning Engaging the Private Sector
The Culture of Welcoming: Attracting and Retaining Creative Class
Collaborative Geomatics for Social Innovation and Sustainability

Similar to e4 Webinar - Toolkit Model (20)

PDF
Learn about Eclipse e4 from Lars Vogel at SF-JUG
ODT
E4 Eclipse Super Force
PDF
Are you still manually coding UIs? - EclipseCon Europe 2013
PDF
EEF : Sexy Properties, Wizards and Views - EclipseCon 11
PDF
What the heck is Eclipse Modeling and why should you care !
PDF
Eclipse Modeling Framework (EMF) and Graphical Modeling Framework (GMF)
PPT
EclipseCon '09 - The Happy Marriage of EMF, Data binding, UI Forms and Field ...
PDF
Hithhiker guide to eclipse presentation frameworks galaxy
PDF
Democamp Munich 2013: Are you still manually coding UIs?
PDF
On The Shoulders Of Giants
PPT
Eclipse Demo Camp 2010 - Eclipse e4 – The Status and the Future
PDF
Eclipse e4
PDF
Overview of Eclipse technologies
PDF
ACM SIGCHI EICS-2019 Keynote. Quid, Pedro J. Molina
PDF
Lessons learned from building Eclipse-based add-ons for commercial modeling t...
PDF
WebObjects Developer Tools
PPTX
Eclipse Overview
PPTX
Modeling with eclipse
PPTX
Drawing Tool
PPT
Model-Driven Engineering of User Interfaces: Promises, Successes, Failures, a...
Learn about Eclipse e4 from Lars Vogel at SF-JUG
E4 Eclipse Super Force
Are you still manually coding UIs? - EclipseCon Europe 2013
EEF : Sexy Properties, Wizards and Views - EclipseCon 11
What the heck is Eclipse Modeling and why should you care !
Eclipse Modeling Framework (EMF) and Graphical Modeling Framework (GMF)
EclipseCon '09 - The Happy Marriage of EMF, Data binding, UI Forms and Field ...
Hithhiker guide to eclipse presentation frameworks galaxy
Democamp Munich 2013: Are you still manually coding UIs?
On The Shoulders Of Giants
Eclipse Demo Camp 2010 - Eclipse e4 – The Status and the Future
Eclipse e4
Overview of Eclipse technologies
ACM SIGCHI EICS-2019 Keynote. Quid, Pedro J. Molina
Lessons learned from building Eclipse-based add-ons for commercial modeling t...
WebObjects Developer Tools
Eclipse Overview
Modeling with eclipse
Drawing Tool
Model-Driven Engineering of User Interfaces: Promises, Successes, Failures, a...
Ad

Recently uploaded (20)

PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Mushroom cultivation and it's methods.pdf
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPTX
A Presentation on Artificial Intelligence
PPTX
Machine Learning_overview_presentation.pptx
PPTX
1. Introduction to Computer Programming.pptx
PPTX
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PDF
A comparative study of natural language inference in Swahili using monolingua...
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Accuracy of neural networks in brain wave diagnosis of schizophrenia
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Network Security Unit 5.pdf for BCA BBA.
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Encapsulation theory and applications.pdf
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Mushroom cultivation and it's methods.pdf
Diabetes mellitus diagnosis method based random forest with bat algorithm
A Presentation on Artificial Intelligence
Machine Learning_overview_presentation.pptx
1. Introduction to Computer Programming.pptx
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
Assigned Numbers - 2025 - Bluetooth® Document
gpt5_lecture_notes_comprehensive_20250812015547.pdf
A comparative study of natural language inference in Swahili using monolingua...
Unlocking AI with Model Context Protocol (MCP)
Accuracy of neural networks in brain wave diagnosis of schizophrenia
Advanced methodologies resolving dimensionality complications for autism neur...
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
Spectral efficient network and resource selection model in 5G networks
Network Security Unit 5.pdf for BCA BBA.
Digital-Transformation-Roadmap-for-Companies.pptx
Encapsulation theory and applications.pdf
MIND Revenue Release Quarter 2 2025 Press Release
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Ad

e4 Webinar - Toolkit Model

  • 1. e4’s Toolkit Model – a new view on GUI Hallvard Trætteberg, Associate Professor, Dept. of Computer and Information Sciences Norwegian Univ. of Science and Technology Hallvard Trætteberg, e4’s Toolkit Model
  • 2. Agenda Motivation Tookit Model model architecture Eclipse editors and views
  • 3. Motivation Hand-coding GUIs is hard GUI frameworks can be complex Conceptual gap between concrete GUI and the GUI code What works? GUI builders are very useful for part of the design task HTML+DOM+Javascript has caught on Model-based techniques are maturing and more wide-spread Can a combination of these be used for e4?
  • 4. TM – model and architecture Ecore-based model of standard GUI elements hierarchy of widgets simple elements – label, text field, buttons, list, ... composites – generic, group box, tab folder, ... SWT-specific layout coming soon: table and tree widgets styling in the model and with CSS 2d graphics EMF API & tools are used to manage TM instances Java code with static and reflective API generic editors and model-based techniques ATL, Teneo, CDO ...
  • 5. TM – model and architecture Rendering for a specific toolkit is provided separately model is designed to be portable (SWT, Swing, Ajax, ...) the model is “live”: concrete widgets are updated when model changes TM model instance Toolkit-specific renderer Concrete toolkit widgets model changes propagate to widgets widget events propagate to model
  • 6. Javascript support Wrappers for Ecore objects make them seem like native Javascript objects Extra behavior may be added annotations to Ecore operations separate files contributing methods to EClasses EObjects may have their own methods on<Property>Change methods used for event handling Standard Ecore classes has already been extended create new objects from EClasses navigate in EObject hierarchies by index of name functional API for searching, mapping and filtering
  • 7. Editors and views Tree-based editor with preview “ poor man’s” GUI builder can load EMF application data supports scripting GUI gradually becomes functional Palette view – drag’n drop model fragments Script editor – edit Javascript for model element Preview pane – previews active editor content Script scrapbook – try out snippets on live model
  • 8. Typical workflow Create GUI sketch with appropriate tool wireframesketcher is no-nonsense and EMF-based Create TM instance drag’n drop model fragments from palette edit properties and add layout Create sample data create Ecore model of domain data create example data for data model Script model populate with example data react to user events
  • 10. Palette view – drag’n drop model fragments
  • 11. Script editing – edit and try