15
External Use TM Dynamic UI rendering with ECP 1.3 Eclipse DemoCamp Bucharest JUL.02.2014 Dorin Ciuca

2014 Bucharest Democamp

Embed Size (px)

DESCRIPTION

2014 Bucharest Democamp

Citation preview

Page 1: 2014 Bucharest Democamp

External Use

TM

Dynamic UI rendering with ECP 1.3Eclipse DemoCamp Bucharest

J U L . 0 2 . 2 0 1 4

Dorin Ciuca

Page 2: 2014 Bucharest Democamp

TM

External Use 2

ECP - EMF Client Platform

• “The goal is to provide reusable, adaptable and extensible UI components to develop applications based on a given EMF model.”

• “All components can be used stand-alone and be embedded into your own application. ”

http://eclipse.org/ecp/index.html

Page 3: 2014 Bucharest Democamp

TM

External Use 3

ECP - Components

• Explorer• Editor • Repository

Explorer

Page 4: 2014 Bucharest Democamp

TM

External Use 4

EMF Forms

• is a framework to efficiently develop form-based UIs based on a given data model

• the UI is described in a simple view model

• view model is then interpreted by an adaptable and exchangeable rendering component

• allows you to render the same UI using different UI technologies: Swing, SWT, JavaFX or Web just by replacing the renderer

Page 5: 2014 Bucharest Democamp

TM

External Use 5

EMF Forms

Domain model View model

UI rendered

Renderer

Page 6: 2014 Bucharest Democamp

TM

External Use 6

View model

• It is an ecore model

Page 7: 2014 Bucharest Democamp

TM

External Use 7

View model

• It defines layout

• It adds layout elements that are not mapped to domain model elements e.g. groups

• It augments domain model elements with hints about rendering

• It adds rules for renderer based on expressions involving other domain elements e.g. enable/disable/show/hide some items when condition

Page 8: 2014 Bucharest Democamp

TM

External Use 8

View model

• It is registered with extension point

Page 9: 2014 Bucharest Democamp

TM

External Use 9

View model

• It is extendable You can create other model containing new elements and register through extension point the corresponding render .

Page 10: 2014 Bucharest Democamp

TM

External Use 10

View model

• Tools support: it has an editor in IDE

Page 11: 2014 Bucharest Democamp

TM

External Use 11

EMF Formshow to embed generated UI in your application

• probeComposite – is the parent composite in client’s UI code• probe – is the domain model (data model) element to render

Page 12: 2014 Bucharest Democamp

TM

External Use 12

EMF Forms – rendering details

creates

Renders based on a view model element.

Renders based on a domain model element.

Page 14: 2014 Bucharest Democamp

TM

External Use 14

EMF Forms – renders hierarchy

Page 15: 2014 Bucharest Democamp

TM

External Use 15

EMF Forms – renders hierarchy