《IntroductiontotheGraphicalModelingFramework.ppt》由会员分享,可在线阅读,更多相关《IntroductiontotheGraphicalModelingFramework.ppt(30页珍藏版)》请在三一办公上搜索。
1、Introduction to the Graphical Modeling Framework,Artem Tikhomirov,BorlandAlexander Shatalin,Borland,GMF Overview,“The Eclipse Graphical Modeling Framework(GMF)provides a generative component and runtime infrastructure for developing graphical editors based on EMF and GEF.”Significantly reduces cost
2、of DSL toolingGMF is part of Eclipse Modeling ProjectGMF-generated solutions proved by:.ecore diagram editor.gmfgraph bootstrapping editorUML2 Tools project diagram editorsBorland Together DSL toolkit,Agenda,Define requirements for diagram editor Building diagram editor with GMF,basic stepsLive demo
3、Hands on try building your version of GMF diagramGMF architectureQ&A sessionGenerated diagram extensibilityAdditions,Define requirements for diagram editor,Workstation,Router,SubNet,Building diagram editor with GMF,basic steps,Design EMF domain meta-modelCreate graphical representations for diagram
4、nodes/linksDefine diagram structure and generate code,?,EMF domain meta-model,Graphical elements,SVG pictureDraw2d“matryoshka”Composite SVG figure,Define diagram structure and generate code,Javacode,Domain model,Graphical shapes,Live demo,Hands on/Q&A session,Try building your version of GMF diagram
5、,GMF architecture:GMF Tooling,Set of models to define diagram editor-capturing graphical,tooling and meta-modeling aspects.Extensible code generator,capable to customize generated code to match specific requirements,Models:Domain.What is meta-model?,UML,EMF,XSD,Java API,A dog sits in a car.A girl re
6、ads a green book.,Instance level,Meta-level,Models:Graphical Definition,Models:Graphical Definition,Models:Tooling,Palette tools Context menu actions Property sheet,Models:Mapping,Models:Generation,What is the GMF Runtime?,A set of frameworks to help the development of Eclipse graphical editors:Reus
7、able components for graphical editorsA standardized model to describe diagram elementsSemantic and diagram models are distinctEnables open and extensible graphical editorsCommand infrastructure that bridges EMF and GEFEMF provides a runtime infrastructure to instantiate and manipulate models(among o
8、ther things)GEF is an MVC-based framework to create graphical editorsLeverage various other technologies:EMFT:Transactions,Validation,OCLApache Batik,Reusable Components for Graphical Editors,Action Bars:Collapsed Compartments:,Connection Handles:Geometrical Shapes:,Reusable Components for Graphical
9、 Editors,Actions:,Toolbar:,Properties View:,Reusable Components for Graphical Editors,Page Setup:,Print Preview:,“Copy Diagram to Image File”formats:,System clipboard formats:,GMF architecture:Runtime component,A set of plug-ins simplifying development of EMF-based diagram editor,with an execution t
10、ime extensibilityReusable components for graphical editorsStandardized model to describe visual properties of diagram elementsSet of Services extensible via declared extension-points at execution timeCommand infrastructure that bridges EMF and GEF,Variation points,Models,Transformation,Templates,Ext
11、ension points,Code,Additions,Runtime-Lite,Lightweight alternative to Full RuntimeNotation Model to represent diagramExperimental optionTargets pure GEFEasy to understand nothing but EMF and GEF,Notation Model,Visual model:Styled text representation,A dog sits in a car.,A dog sits in a car.,Visual model:Styled text representation,A dog sits in a car.,A dog sits in a car.,Thank you for your attention.,www.eclipse.org/gmf,GMF User interface(weak spot),Standard EMF-generated new model wizardsGMF dashboard.ecore-.gmfgraph,.gmftool,.gmfmap wizards,